Creating a Plasma Style quickstart (2024)

A quick guide to creating your first Plasma Style

One of Plasma's features is the ability to theme desktop elements using ScalableVector Graphics (SVGs). This means there is no need for theme authors to knowC++ or any other programming language to create a great looking theme. Theyneed only use common graphics tools like Krita,Inkscape, GIMP, etc. Depending on your prowess with such tools, a greatlooking Plasma Style can be created in under an hour.

A video tutorial is available to learn how to edit Plasma Styles.

Creating a Plasma Style in 7 Easy Steps

Step 1: Using an existing theme

Copy and rename an existing Plasma Style folder. The new folder name shouldbe the name of the theme. Themes provided by your distribution are stored in /usr/share/plasma/desktoptheme/,while user-installed themes go in ~/.local/share/plasma/desktoptheme/.You can also find Plasma Styles on the KDE Store. Edit the metadata.json filein the theme folder to match your theme name.

See Theme Metadata if you need help.

Important

Prior to KDE Frameworks 6, themes used a metadata.desktop file instead of metadata.json.

# Create theme directory in home if it doesn't existmkdir -p ~/.local/share/plasma/desktoptheme# Copy default theme to home directory so we can modify itcp -r /usr/share/plasma/desktoptheme/default ~/.local/share/plasma/desktoptheme/# Rename themecd ~/.local/share/plasma/desktopthememv ./default ./mytheme# Edit the relevant fields in the metadata.json# with your theme information and credits.# Remove any translation names or descriptions# (entries like Name[fr] or Description[zh_CN]).

Note

The default/ theme is the base Breeze theme with all the default SVGs. breeze-light/ and breeze-dark/ only have a colors file and a pair of metadata files and inherit everything else from the default/ theme.

Step 2: Open a file

Open the SVG file associated with the Plasma element you would like to theme(panel background, clock, etc.) in an SVG editor (e.g. Inkscape).

See Theme Location, Structure and Definition to understand how Plasma Styles are organized, and the Theme Elements Reference to understand what each SVG file does.

Step 3: Edit each element

Each SVG file may have several elements (objects with element ID = left,right, top, topright, center, ClockFace, etc.). Modify existing elements OR deleteand create replacement elements. Elements can be any SVG primitive or object group.

See SVG Elements and Inkscape to understand how to edit Plasma SVG elements.

Hint

You can embed raster images as SVG elements if you creatively prefer raster editorslike Krita, GIMP, etc. Remember to embed each image instead of linking (Inkscape:Effects -> Images -> Embed All Images).

Step 4: Use an Inkscape extension

To make renaming of the theme elements easier, it is possible to use an Inkscapeextension provided byKSvg. See Inkscape Extensions for how to install it.

Step 5: Review element IDs

Make sure that the element ID for each new element is correctly set.

Hint

In Inkscape you can check the element ID for each element by right-clicking on theelement and choosing Object Properties.

Step 6: Edit hint elements

Add or remove any element containing a hint ID you desire. It doesn't matter how the element looks,just that elements with IDs matching the hint elements either exist ordon't exist. See Background SVG Format for adescription of available hint elements.

Step 7: Save the SVG file.

Repeat steps 3 - 6 for any other Plasma element for which you would like tocreate a new theme.

Testing the Theme

  • If you have not already done so, copy your new theme folder to ~/.local/share/plasma/desktoptheme.

  • Choose the theme in System Settings -> Appearance -> Plasma Style or edit your ~/.config/plasmarc to point to the new theme. This may require restarting Plasma.

  • Carefully check the appearance of all new theme elements.

  • If you created separate themes that do not require compositing/desktop effects (SVGs in the opaque/ folder), rememberto test your theme with compositing turned off (this can be toggled with the keyboard shortcut Alt+Shift+F12 on X11).

Note

The opaque/ folder is only relevant for themes on the Plasma X11 session, as the Wayland session does not allow to turn off compositing. See Opaque Folder for details.

When you update the theme, you need to battle with Plasma's caching. To make sureyou are running the latest version of your theme after updating its files, clear the cache:

rm -r ~/.cache/plasma*

Then restart the Plasma Shell. The easiest way to do so is by opening KRunner with Alt + Space and running:

plasmashell --replace

Theme Colors

  • You can provide a Plasma color scheme that will allow text, selected backgrounds andother items to blend well with your theme by supplying a colors file in your theme folder.See the colors file in the default theme for an example.

  • If the colors file is omitted, Plasma will use the current Plasma system colors.

Important

Theme SVGs will not be colorized unless they contain the hint-apply-color-scheme element.)

Hints and Tips

  • Even a pixel or two out of place can make a difference over hours of use. It may notbe obvious at first glance but the user may intuitively pick up that something is "justnot right" and give up using your theme.

  • In Inkscape, turn off stroke scaling when elements are resized. Inkscape may defaultto scaling the stroke of an element when changing its size. This may show up in the renderedPlasma Style as thin, barely-there lines that you can't seem to get rid of.

  • If you prefer raster editors like Krita and GIMP, create your theme in theseprograms first, then import them into Inkscape (drag and drop of the files works fine). Ifyou're working on a background with multiple elements, like widgets/panel-background.svg or widgets/background.svg, crop the raster image into the different elements (top, bottom, right,etc.) and save as separate files before importing into Inkscape.

  • Don't forget to embed imported raster images. By default Inkscape will import theseas linked images that will not show up in Plasma (to embed the images, go to Effects ->Images -> Embed All Images).

  • Remember that the border elements of backgrounds (top, right, bottom, left) are tiled if thehint-stretch-borders element is not present in the SVG.

  • Remember that the center element of backgrounds are stretched if the hint-tile-centerelement is not present in the SVG.

  • To control how much colorization will be applied by Plasma when using thehint-apply-color-scheme element, make sure the color (HSV) Value/Intensity is closer to 0or 255 for less colorization, and closer to 127 for more colorization. So, for example, tokeep shadows from being colorized, use a color (HSV) Value/Intensity of 0.

  • When testing the theme, if it looks like portions of a multi-element SVG are missing(missing borders, etc.), check the SVG again to make sure the element IDs are correct.

  • Do not use more advanced SVG features since they will not be rendered properly. If youwant to add blur or something similar, consider pre-rendering to PNG, and then importing thePNG into the final SVG file.

  • Perform this quick sanity check for background SVGs to help troubleshoot annoying linesand gaps between elements:

    • topleft, top and topright elements should have the same height
    • topright, right and bottomright elements should have the same width
    • bottomleft, bottom and bottomright elements should have the same height
    • topleft, left and bottomleft elements should have the same width
Creating a Plasma Style quickstart (2024)

FAQs

Creating a Plasma Style quickstart? ›

The default KDE Plasma theme is called Breeze.

What is the default theme of KDE Plasma? ›

The default KDE Plasma theme is called Breeze.

Where are KDE plasma styles stored? ›

Themes are stored in: System/Default: /usr/share/plasma/desktoptheme/ User Installed: ~/. local/share/plasma/desktoptheme/ (KDE Store Category)

What is the drawback of KDE? ›

However, KDE has its disadvantages too, namely its huge mass of applications, and its cluttered menus. And Konqueror seems to do almost everything and anything these days.

Is KDE faster than GNOME? ›

It's worth it to try KDE Plasma rather than GNOME. It's lighter and faster than GNOME by a fair margin, and it's far more customizable. GNOME is great for your OS X convert who isn't used to anything being customizable, but KDE is an utter delight for everyone else.

Are KDE themes safe? ›

While it is a serious vulnerability, lets not get hyperbolic. This didn't “Wipe all files on system” it wiped all the files in the user account's $HOME.

What distro is KDE Plasma based on? ›

KDE neon. KDE neon takes the latest Plasma desktop and KDE apps and builds them fresh each day for your pleasure, using the stable Ubuntu LTS base.

How do I edit the plasma theme? ›

Choose the theme in System Settings -> Appearance -> Plasma Style or edit your ~/. config/plasmarc to point to the new theme.

Does KDE Plasma have workspaces? ›

The KDE Plasma Workspaces provide a set of modern interfaces designed for a variety of devices.

What is the default panel in KDE Plasma? ›

The default layout is one panel that stretches across the entire bottom of the desktop with the following widgets: application menu, desktop pager, task manager (list of open windows), system tray (including things like power management if you are on a laptop), digital clock, and peek at desktop.

How to customize KDE menu? ›

menu editor : you may want to add items to the KDE Menu toolbar. In order to do so select Utilities, Menu Editor. You will see a copy of the KDE Menu toolbar and if you click (or right-click, depending on the case) on it you can add and edit applications as you may wish.

How can I make KDE run better? ›

Try changing the Animation Speed to Very Fast or higher. If you are not satisfied, uncheck Various animations and Enable desktop effects at startup. If you would like to keep (at least some) desktop effects, reenable them and proceed to the Advanced Tab.

Is KDE Plasma bloated? ›

KDE is definitely not bloated in any way for the amount of features and capabilities it brings out of the box. Everything you need to get to work is already built in, no extra add-ons or extensions are needed, even for power users.

What is the best display manager for KDE Plasma? ›

SDDM serves as the default display manager for the KDE Plasma desktop environment. It's created for simplicity, speed, and visual appeal.

Top Articles
Latest Posts
Recommended Articles
Article information

Author: Jerrold Considine

Last Updated:

Views: 5937

Rating: 4.8 / 5 (58 voted)

Reviews: 81% of readers found this page helpful

Author information

Name: Jerrold Considine

Birthday: 1993-11-03

Address: Suite 447 3463 Marybelle Circles, New Marlin, AL 20765

Phone: +5816749283868

Job: Sales Executive

Hobby: Air sports, Sand art, Electronics, LARPing, Baseball, Book restoration, Puzzles

Introduction: My name is Jerrold Considine, I am a combative, cheerful, encouraging, happy, enthusiastic, funny, kind person who loves writing and wants to share my knowledge and understanding with you.