Note: The information presented here covers Plasma in KDE 4.1. For older versions you can turn to the KDE 4.0 specific page
Plasma is one of the key technologies of KDE 4 (also known as the "Pillars of KDE"), and one of the most visible to users. As Plasma treats the user interface differently than a traditional desktop, there may be confusion as to what Plasma is, what it does, and how to perform common tasks.
This document attempts to address these problems by providing answers to the most common questions.
Plasma provides the desktop interface for KDE 4, including the application launcher (stat menu), the desktop and the desktop panel (often referred to simply as the task bar). However Plasma is more than just this familiar collection of utilities, it is a common framework for creating integrated interfaces. It is flexible enough to provide interfaces for mobile devices, media centres and desktop computers; to support the traditional desktop metaphor as well as well as designs that haven't yet been imagined.
Today's desktops are static. Typically they are tied to a folder in which one can find icons (application launchers), or user-placed documents and folders. Along with pictures and images as backgrounds, the current desktop doesn't go any further, or work for the user. Plasma takes a different approach, engaging the user by creating a dynamic and highly customizable environment.
With Plasma, you can let your desktop (and accompanying support elements) act like it always did. You can have a task bar, a background image, shortcuts, etc. If you want to, however, you can use tools provided by Plasma to take your experience further, letting your desktop take shape based on what you want and need.
Plasma's components are widgets called Plasmoids. Plasmoids can take on a variety of functions, ranging from displaying your desktop and associated wallpaper, showing your laptop's battery level, displaying your plugged in devices, and drawing the taskbar: basically, they are small applications that live on the desktop. Plasmoids can be grouped together in "containers" called containments. On a default desktop, there are two main elements: the Panel and the desktop itself. Both are containments in the Plasma sense.
The key difference here is that plasmoids can interact together. You want a better view of your laptop battery in order to find out when you are running low? You just drag it away from the taskbar and put it on the desktop. Also, applets can be resized and rotated at will, thanks to the use of Scalable Vector Graphics (SVGs). As you can see, the desktop not only interacts with you, as the user, but also with itself in new and interesting ways. You are now able to control how your workspace behaves and what it displays, in a visually pleasing and user-friendly manner. Since Plasma is the sum of its plasmoids, every element, even the desktop itself, is a widget. This allows you to move your desktop anywhere with respect to the windows (back and forward). It is no longer rooted behind everything and becomes instead another element of real interaction.
Especially regarding kicker, there was the important issue of maintainability. The code was in place since the KDE 2 days, and it was difficult to add new features without breaking others. In the end, to proceed forward the only viable option was to start anew from scratch.
Don't forget that Plasma is still in heavy development and that KDE 3 was an extremely polished codebase: it took seven years to get to that, while Plasma is much younger. With time, the Plasma developers plan on reintroducing features that are missing and fix regressions. As KDE progresses through the KDE4 cycle, Plasma will improve with it.
The idea of a Desktop folder is fundamentally a broken concept. It assumes that everything you will access there resides on a single physical directory on your disk. It may be convenient, but at the same time it greatly limits what you can do. For example, you can't use custom layouts for different desktops, as everything would be read from the directory. Also, quite often a desktop structured like that becomes a dumping ground for files and folders, without any other function.
That is not entirely correct. You can have icons and launchers (shortcuts) by dragging them from Dolphin or the K-menu. What has changed is that the desktop will no longer display the contents of the Desktop folder. However, you can show an arbitrary number of folders (local or remote) on your desktop view, instead of being forced to display only the contents of the "Desktop" folder. To do so, a new applet has been introduced, the Folder View applet.
The Folder View applet, like its name says, is used to display items (folders, files) from a directory. Such a directory can be either a local one residing on your computer, but also a remote FTP, SSH, or SMB share. In the future, it will even contain results from Nepomuk searches and tagging.
You can choose to view either all files, or filter for specific patterns using regular expressions (there is discussion on using filters based on file types for future versions of KDE).
This applet also supports basic file management properties (moving, copying, cutting and pasting for example), and you can have as many as you want on your desktop.
In KDE 4.2 you will be also able to use the Folder View as your desktop, replicating the "old style" paradigm.
During the development of KDE 4.0, different approaches for a K menu (application launcher) were tried. Some projects, like Raptor, were ambitious but there was no way they could be completed on time. At the time, one developer ported SUSE Linux's application launcher (Kickoff) to the new KDE architecture. As it was the most ready and feature complete (not to mention the product of usability testing) it was chosen to be the default menu. If you don't like it, the traditional K-menu is available as well. Also, some alternative menu systems have been announced (Lancelot, Raptor), but at the time of writing they're still in development.
KRunner is the versatile mini-command line you can activate by pushing "Alt-F2" or by selecting "Run Command" from the desktop contextual menu. It can search for applications, bookmarks, even sessions basing on your input, show system activity and even do simple arithmetic calculations.
KRunner's functionality can be extended through the use of plugins ("runners").
What is commonly referred as "cashew" is the Plasma logo you can find on the default desktop, on the upper right corner, and on the panel, on the right hand side. By clicking on them, you can access other configuration options, such as panel configuration and the Zooming User Interface (ZUI). Some of these, like the panel cashew, only appear if the widgets aren't locked (see below).
Although putting an option to disable the cashew for desktops sounds reasonable, from a coding point of view it would introduce unnecessary complexity and would break the design. What has been suggested is, since the destkop itself (a containment) is handled by plugins, to write a plugin that would draw the desktop without the cashew itself. Currently some work ("blank desktop" plugin) is already present in KDE SVN. With containment type switching expected by KDE 4.2, it is not unreasonable to see alternative desktop types developed by then.
The Zooming User Interface, or ZUI, is another component of Plasma. It enables the user to group different groups of plasmoids together, and to quickly switch between one and another using a zoom-and-pan approach. Notice that at the time, although significant improvements have been made in KDE 4.1, this feature is still under heavy development and may be fully functional only with later KDE 4.x releases.
Suppose you have three groups of plasmoids (such as widgets, application launchers, etc.) which you want arranged in specific combinations depending on what you want to do. You first group them according to your tastes, then you can switch between them by zooming out (getting a preview of all the groups) and then back in on the specific group you want to use. Notice that it is different from traditional X11 virtual desktop switching, as there is a higher degree of flexibility by using this approach, as the groups can be totally different from each other.
A very good example of this behavior is shown by this image courtesy of Half-Left from #kde on freenode.
Of course you can. Dragging an icon from Dolphin or Konqueror to the desktop will work. Notice that dragging on the desktop will not actually create a file there, just a link to it.
To display the contents of your Desktop folder, or any other folder, use the Folder View applet.
No. The reason is that having a panel over two displays adds a great deal of complexity, especially when the two displays have different resolution. As a result of this added complexity, this feature would not be guaranteed to work in all cases. As a result it was not implemented.
Method 1: Open the Add Widgets dialog in the Plasma cashew (upper right corner of the screen) then select the widget of your liking and drag it directly (don't double click or use the Add Widget button) to the panel.
Method 2: Drag an applet from the desktop to the panel. This is also shown briefly on a video on Lydia Pintscher's blog.
Just before KDE 4.1 RC1, a change has been introduced in Plasma to allow movement of the applets on the panel. To do so, open up the panel controller (by clicking on the cashew or by right clicking on the panel and selecting "Panel Settings") and hover the mouse cursor over the applets. Its shape will turn into four arrows, and you'll be able to rearrange the applets as you wish.
First of all, hover over the applet you want to resize. The applet handle will appear.
The applet handle takes care of resize, rotate and move.
Click on the panel cashew (the small icon on the right side of the panel), then click and drag, adjusting panel size and position to your choosing. Click again on the cashew (or on the red X) to close the panel configuration interface.
This video shows how to configure and move a panel.
Click on the panel cashew and select "Remove this Panel". Alternatively you can right click on the panel itself and choose "Remove this Panel".
Yes, Plasma can use OS X's widgets, but only the HTML ones.
You can bring all the widgets to the front by pushing Ctrl-F12, which will bring the Plasma Dashboard to the front.
Method 1: Right click on an empty area of the desktop and select "Lock Widgets" from the contextual menu. If you want to reverse that, right click again and select "Unlock Widgets". The same option is available if you right-click on the panel.
Method 2: Select "Lock Widgets" from the Plasma cashew on the upper right corner or from the panel controller.
If they're on the panel, right click on the widget and select "Remove this...". If the widgets are on the desktop, you have different options:
Right click on the menu icon and select "Switch to Classic Menu Style" (if using Kickoff) or "Switch to Kickoff Menu Style" (if using the classic menu). Alternatively, you can add either type of menu using the Add Applets dialog.
Aikurn has a video showing how to switch between the different styles.
Adding an activity: Zoom out from your current desktop view by clicking on the desktop view cashew (the icon in the top right corner) and selecting Zoom out. Clicking again on the cashew will show a new button, "Add Activity". Click on it to create a new desktop view.
Note: The "Add Activity", "Zoom in", and "Zoom Out" buttons are a little buggy in 4.1.0 and may disappear in certain situations. restarting plasma will bring them back.
This video shows how to add activities and move between them.
Removing an activity: Zoom out from your current desktop view, make sure it's not the current activity (otherwise select another one), then right-click on the activity you want to remove and choose the appropriate option.
Note: You must Unlock Widgets (Ctrl+L) before you can remove any activities.
In addition to the mouse, there is a number of shortcuts available:
Unfortunately, changing these shortcuts is not possible in KDE 4.1, but it is planned for KDE 4.2.
Yes, the ability to change the look of Plasma was planned since the beginning. Plasma can use "themes", which are essentially a number of SVG images and files specifying the colors, to change its appearance. Some themes have already appeared on popular sites like kde-look.org.
Yes. Right click on your current desktop, select "Desktop Settings" and you will find an option to change the theme in the dialog that will appear. You can also download new themes directly from there.
Step by step instructions (including screenshots) are available on Aikurn's blog.
kquitapp plasma; rm $KDEHOME/share/config/plasma-appletsrc; plasma
This deletes your plasma settings, so you'll get the default configuration back. The panel-vanishing-on-crash issue was fixed just after 4.0.0's release. If running all the 3 commands at once doesn't work, try typing them in manually and wait a few seconds before running the next command.
That is unfortunately a problem in the Freedesktop.org system tray specification, which does not define the sizes for system tray icons properly.
This is NVIDIA's fault entirely, due to their driver not supporting correctly the XRender X11 extension, and it also affects other parts of KDE such as Konsole. See this blog entry on how to report issues upstream to NVIDIA. This page contains a few suggestions on how to improve performance until an updated driver is released.
To work around this issue, you have to change the 2D acceleration method from XAA (X Acceleration Architecture) to the newer EXA. As this involves editing your xorg.conf file, bear in mind that such a modification may damage your system. Do it at your own risk.
To make the switch, edit your xorg.conf file (make a backup just in case) and locate the Device section for your graphics card. Add the line
Option "AccelMethod" "EXA"
before the "EndSection" line. If there is already a line with AccelMethod, change it from XAA to EXA. Save the file and restart the X server.
Notice that EXA is still marked as unstable, and that some other applications such as some KDE3 programs may render incorrectly.
See the Glossary page.