KDE

From ArchWiki
Jump to: navigation, search

KDE is a software project currently comprising of a desktop environment known as Plasma (or Plasma Workspaces), a collection of libraries and frameworks (KDE Frameworks) and several applications (KDE Applications) as well. KDE upstream has a well maintained UserBase wiki. Detailed information about most KDE applications can be found there.

Contents

Installation

Plasma Desktop

Note:
  • Plasma 5 is not co-installable with Plasma 4.
  • The Plasma 4 desktop is unmaintained since August 2015.[1] It is no longer in the official repositories since December 2015.[2]
  • KDM is no longer available for Plasma 5. KDE upstream recommends using the SDDM display manager as it provides integration with the Plasma 5 theme.

Before installing Plasma, make sure you have a working Xorg installation on your system.

Install the plasma-meta meta-package or the plasma group. For differences between plasma-meta and plasma reference Creating packages#Meta packages and groups. Alternatively, for a more minimal Plasma installation, install the plasma-desktop package.

Upgrading from Plasma 4 to 5

  1. Isolate multi-user.target:
    # systemctl isolate multi-user.target
  2. If you use KDM as display manager, disable the kdm.service systemd unit.
  3. Uninstall the kdebase-workspaceAUR package.
  4. Install the plasma-meta package or the plasma group.
  5. Enable the sddm.service systemd unit, or install and enable any other display manager.
  6. Reboot or simply start the systemd sddm.service unit.
Note: The Plasma 4 configuration is not automatically migrated to Plasma 5, so you will have to configure your desktop from scratch.

KDE applications and language packs

To install the full set of KDE Applications, install the kde-applications group or the kde-applications-meta meta-package. Note that this will only install applications, it will not install any version of the Plasma Desktop.

If you need language files, install kde-l10n-yourlanguagehere (e.g. kde-l10n-de for the German language). For a full list of available languages see this link.

Starting Plasma

Tip: To better integrate SDDM with Plasma, it is recommended to edit /etc/sddm.conf to use the breeze theme. Refer to SDDM#Theme settings for instructions.

To launch a Plasma 5 session, choose Plasma in your display manager menu.

Alternatively, to start Plasma with startx, append exec startkde to your .xinitrc file. If you want to start Xorg at login, please see Start X at login.

Wayland

As of Plasma 5.6, Plasma on Wayland should be usable but still buggy.[3] Multi-monitor support is broken.

  • To start a Plasma on Wayland session from a display manager, install the plasma-wayland-session package and Plasma should show up in the display manager.
  • To start a Plasma on Wayland session from a console, run startplasmacompositor.

Configuration

Most settings for KDE applications are stored in ~/.config, but some older applications may use ~/.kde4. However, configuring KDE is primarily done through the System Settings application. It can be started from a terminal by executing systemsettings5.

Frameworks 5 applications can use KDE 4 configuration however they expect the configuration files to be located in different places. To allow Frameworks 5 applications running in KDE 4 to share the same configurations they may be moved to the new locations and symlinked back to the old. Examples are:

  • Konsole profiles from ~/.kde4/share/apps/konsole to ~/.local/share/konsole/
  • Application appearance from ~/.kde4/share/config/kdeglobals to ~/.config/kdeglobals

Personalization

Plasma desktop

Themes
Note: If the Plasma cursor theme is incorrect in some instances, see the following forum post for a workaround.

Plasma themes define the look of panels and plasmoids. For easy system-wide installation, some such themes are available in both the official repositories and the AUR.

The easiest way to install themes is by going through the Desktop Settings control panel:

 Workspace Theme > Desktop Theme > Get new Themes

This will present a nice frontend for kde-look.org that allows you to install, uninstall, or update third-party plasmoid scripts with literally just one click.

Splash and Lock screens are currently unavailable so to customize these screens you have to modify the original theme found in /usr/share/plasma/look-and-feel/. See this thread on the Kubuntu forums.

Note that the SDDM login screen is not part of this theme.

Qt and GTK+ Applications Appearance
Tip: For Qt and GTK theme consistency, see Uniform look for Qt and GTK applications.
Qt4

For Qt4 applications to have a consistent appearance, there are two options: Install breeze-kde4 and then pick Breeze as GUI Style in qtconfig-qt4; or install breeze-gtk and pick GTK+ as GUI Style.

GTK+

The recommended theme for a pleasant appearance in GTK+ applications is breeze-gtk or gnome-breeze-gitAUR, a GTK+ theme designed to mimic the appearance of Plasma 5 Breeze. Install kde-gtk-config and select the installed GTK-theme for GTK2/GTK3-Theme in System Settings > Application Style > GNOME Application Style.

In some themes, tooltips in GTK+ applications have white text on white backgrounds making it difficult to read. To change the colors in GTK2 applications, find the section for tooltips in the gtkrc file and change it. For GTK3 application two files need to be changed, gtk.css and settings.ini.

Widgets

Plasmoids are little scripted (plasmoid scripts) or coded (plasmoid binaries) KDE applications designed to enhance the functionality of your desktop.

The easiest way to install plasmoid scripts is by right-clicking onto a panel or the desktop and choosing Add Widgets > Get new Widgets > Download Widgets. This will present a nice frontend for kde-look.org that allows you to install, uninstall, or update third-party plasmoid scripts with literally just one click.

Many Plasmoid binaries are available from the AUR.

Sound applet in the system tray

Install plasma-pa or kmix (start Kmix from the Application Launcher).

Note: To adjust the step size of volume increments/decrements, add e.g. VolumePercentageStep=1 in the [Global] section of ~/.kde4/share/config/kmixrc
Disable panel shadow

As the plasma panel is on top of other windows, its shadow is drawn over them. [4] To disable this behaviour without impacting other shadows, install xorg-xprop and run:

$ xprop -remove _KDE_NET_WM_SHADOW

then select the panel with the plus-sized cursor. [5] For automation, install xorg-xwininfo and create the following script:

/usr/local/bin/kde-no-shadow
#!/bin/bash
for WID in $(xwininfo -root -tree | sed '/"Plasma": ("plasmashell" "plasmashell")/!d; s/^  *\([^ ]*\) .*/\1/g'); do
   xprop -id $WID -remove _KDE_NET_WM_SHADOW
done

The script can be run on login with Add Script in Autostart:

$ kcmshell5 autostart

Window decorations

Window decorations can be changed in System Settings > Workspace Appearance > Window Decorations.

There you can also directly download and install more themes with one click, and some are available in the AUR.

Icon themes

Icon themes can be installed and changed on System Settings > Icons.

Note: Although all modern Linux desktops share the same icon theme format, desktops like GNOME use fewer icons (esp. in menus and toolbars). Themes developed for such desktops usually lack icons required by Plasma 5 and KDE apps.
It is recommended to install Plasma compatible icon themes instead.

Fonts

Fonts in a Plasma session look poor

Try installing the ttf-dejavu and ttf-liberation packages.

After the installation, be sure to log out and back in. You should not have to modify anything in System Settings > Fonts.

If you have personally set up how your Fonts render, be aware that System Settings may alter their appearance. When you go System Settings > Appearance > Fonts System Settings will likely alter your font configuration file (fonts.conf).

There is no way to prevent this, but, if you set the values to match your fonts.conf file, the expected font rendering will return (it will require you to restart your application or in a few cases restart your desktop). Note that Gnome's Font Preferences also does this.

Fonts are huge or seem disproportional

Try to force font DPI to 96 in System Settings > Application Appearance > Fonts.

If that does not work, try setting the DPI directly in your Xorg configuration as documented here.

Space efficiency

The Plasma Netbook shell has been dropped from Plasma 5, see the following KDE forum post However, you can achieve something similar by editing the file ~/.config/kwinrc adding BorderlessMaximizedWindows=true in the [Windows] section.

Printing

Tip: Use the CUPS web interface for faster configuration. Printers configured in this way can be used in KDE applications.

You can also configure printers in System Settings > Printer Configuration. To use this method, you must first install print-manager and cups.

The avahi-daemon.service and org.cups.cupsd.service daemons must be started first; otherwise, you will get the following error:

The service 'Printer Configuration' does not provide an interface 'KCModule'
with keyword 'system-config- printer-kde/system-config-printer-kde.py'
The factory does not support creating components of the specified type.

If you are getting the following error, you need to give your user the right to manage printers.

There was an error during CUPS operation: 'cups-authorization-canceled'

For CUPS, this is set in /etc/cups/cups-files.conf.

Adding lpadmin to /etc/group and then to the SystemGroup directive in /etc/cups/cups-files.conf allows anyone in the lpadmin group to configure printers. Do not add the lp group to the SystemGroup directive, or printing will fail.

# groupadd -g107 lpadmin
/etc/cups/cups-files.conf
# Administrator user group...
SystemGroup sys root lpadmin
Tip: Read CUPS#Configuration to get more details on how to configure CUPS.

Samba/Windows support

If you want to have access to Windows services, install Samba (package samba).

The Dolphin share functionality requires the package kdenetwork-filesharing and usershares, which the stock smb.conf does not have enabled. Instructions to add them are in Samba#Creating usershare path, after which sharing in Dolphin should work out of the box after restarting Samba.

KDE Desktop activities

KDE Desktop Activities are Plasma-based virtual-desktop-like sets of Plasma Widgets where you can independently configure widgets as if you have more than one screen or desktop.

On your desktop, click the Cashew Plasmoid and, on the pop-up window, press "Activities".

A plasma bar presenting you the current existing Plasma Desktop Activities will appear at the bottom of the screen. You can navigate between them by pressing the correspondent icons.

Power saving

Plasma has an integrated power saving service called "Powerdevil Power Management" that may adjust the power saving profile of the system and/or the brightness of the screen (if supported).

Tango-inaccurate.pngThe factual accuracy of this article or section is disputed.Tango-inaccurate.png

Reason: Regarding the note below, it might be that the problem is the logind setting LidSwitchIgnoreInhibited which defaults to yes. [6] (Discuss in Talk:KDE#)
Note: Powerdevil may not inhibit all logind settings (such as the lid close action for laptops). In these cases, the logind setting itself will need to be changed - see Power management#Power management with systemd.

Monitoring changes on local files and directories

KDE now uses inotify directly from the kernel with kdirwatch (included in kdelibs), so Gamin or FAM are no longer needed. You may want to install this kdirwatchAUR[broken link: archived in aur-mirror] from AUR which is a GUI frontend for kdirwatch.

Autostarting applications

Plasma can autostart applications and run scripts on startup and shutdown. To autostart an application, start systemsettings and navigate to Startup and Shutdown -> Autostart and add the program or shell script of your choice. For applications, a .desktop file will be created, for shell scripts, a symlink will be created.

Note:
  • Programs can be autostarted on login only, whilst shell scripts can also be run on shutdown or even before Plasma itself starts.
  • Shell scripts will only be run if they are marked executable.

Place Desktop entries (i.e. .desktop files) here:

~/.config/autostart
for starting applications at login.

Place or symlink shell scripts in one of the following directories:

~/.config/plasma-workspace/env
for executing scripts at login before launching Plasma.
~/.config/autostart-scripts
for executing scripts at login.
~/.config/plasma-workspace/shutdown
for executing scripts on shutdown.

System administration

Terminate Xorg server through KDE System Settings

Navigate to the submenu System Settings > Input Devices > Keyboard > Advanced (tab) > "Key Sequence to kill the X server" and ensure that the checkbox is ticked.

KCM

KCM stands for KConfig Module. KCMs can help you configure your system by providing interfaces in System Settings, or through the command line with kcmshell5.

Configuration for look and feel of GTK applications.

Configuration for the GRUB bootloader.

Configuration for the Uncomplicated Firewall (UFW)

Configuration for PolicyKit

Configuration for Wacom tablets

Configuration for systemd

More KCMs can be found at kde-apps.org.

Desktop search

KDE implements desktop search with a software called Baloo, a file indexing and searching solution.

Baloo

Using and configuring Baloo

In order to search using Baloo on the KDE Plasma Desktop, press ALT+F2 and type in your query. Within Dolphin press CTRL+F.

By default the Desktop Search KCM exposes only two options: A panel to blacklist folders and a way to disable it with one click.

Alternatively you can edit your ~/.config/baloofilerc file (info). Additionally the balooctl process can also be used. In order to disable Baloo run balooctl disable.

Once you added additional folders to the blacklist or disabled Baloo entirely, a process named baloo_file_cleaner removes all unneeded index files automatically. They are stored under ~/.local/share/baloo/.

More advanced configuration options are available through kcm_baloo_advancedAUR[broken link: archived in aur-mirror].

How do I index a removable device?

By default every removable device is blacklisted. You just have to remove your device from the blacklist in the KCM panel.

Web browsers

Konqueror and Rekonq

Konqueror supports two rendering engines – KHTML and QtWebKit (via the kwebkitpart package) – Rekonq supports only QtWebKit. KHTML development was halted after Qt shipped WebKit but was kept for compatibility reasons. QtWebKit, in turn, has since been deprecated by the Qt Project and replaced by Chromium-based Qt WebEngine which is currently not supported by either Konqueror or Rekonq. There is a community continuation of QtWebKit.

A successor named Fiber is currently in development, which will use Chromium's engine.

Chromium and Chrome

Chromium and its proprietary variant Google Chrome have limited Plasma integration. They can use KWallet and KDE Open/Save windows.

Firefox

Firefox can be configured to better integrate with Plasma. See Firefox KDE integration for details.

Qupzilla

Qupzilla (qupzilla) is a Qt web browser with Plasma integration features. Qupzilla 2.0 uses Qt WebEngine intead of WebKit. The WebKit variant is also available as qupzilla-qtwebkit-gitAUR.

PIM

KDE offers its own stack for personal information management. This includes emails, contacts, calendar, etc.

Akonadi

Akonadi is a system meant to act as a local cache for PIM data, regardless of its origin, which can be then used by other applications. This includes the user's emails, contacts, calendars, events, journals, alarms, notes, and so on.

Akonadi does not store any data by itself: the storage format depends on the nature of the data (for example, contacts may be stored in vCard format).

Installation

Install akonadi. For additional addons, install kdepim-addons. For EWS support, install akonadi-ews-gitAUR.

Note: If you wish to use a database engine other than MariaDB/MySQL, then when installing the akonadi package, use the following command to skip installing the mariadb dependencies:
pacman -S akonadi --assume-installed mariadb

Disabling Akonadi

See this section in the KDE userbase.

Database configuration

MariaDB/MySQL
Using ZFS

If your home directory is on a ZFS pool, you will need to create ~/.config/akonadi/mysql-local.conf with the following contents:

[mysqld]
innodb_use_native_aio = 0

Otherwise you will get the OS error 22

PostgreSQL
  1. Install and setup PostgreSQL (see PostgreSQL)
    • Enable the postgresql systemd service: systemctl enable postgresql.service.
  2. Create the ~/.config/akonadi/akonadiserverrc file if it does not exist.
  3. Edit ~/.config/akonadi/akonadiserverrc file so that it has the following contents:
    [General]
    Driver=QPSQL
    
    [QPSQL]
    Host=/run/postgresql/
    InitDbPath=/usr/bin/initdb
    Name=akonadi
    Options=
    Password=
    Port=5432
    ServerPath=/usr/bin/pg_ctl
    StartServer=true
    User=postgres
    
    Note: If your PostgreSQL database username, password, and port differ from postgres, (nothing), and 5432, then make sure you respectively change the configuration options, User=, Password=, and Port=.
  4. Start Akonadi: akonadictl start, and check its status: akonadictl status.
SQLite

Edit ~/.config/akonadi/akonadiserverrc to match the configuration below:

[General]
Driver=QSQLITE3

[QSQLITE3]
Name=/home/username/.local/akonadi/akonadi.db

Phonon

From Wikipedia:

“Phonon is the multimedia API provided by KDE and is the standard abstraction for handling multimedia streams within KDE software and also used by several Qt applications.

Phonon was originally created to allow KDE and Qt software to be independent of any single multimedia framework such as GStreamer or xine and to provide a stable API for a major version's lifetime.”

Phonon is being widely used within KDE, for both audio (e.g., the System notifications or KDE audio apps) and video (e.g., the Dolphin video thumbnails).

Which backend should I choose?

You can choose between backends based on GStreamer and VLC – each available in versions for Qt4 applications and Qt5 applications (phonon-qt4-gstreamer, phonon-qt5-gstreamerphonon-qt4-vlc, phonon-qt5-vlc).

Upstream prefers VLC but prominent Linux distributions (Kubuntu and Fedora-KDE for example) prefer GStreamer because that allows them to easily leave out patented MPEG codecs from the default installation. Both backends have a slightly different features set.

In the past other backends were developed as well but are no longer maintained and their AUR packages have been deleted.

Note:
  • Multiple backends can be installed at once and prioritized at System Settings > Multimedia > Phonon > Backend. For Plasma 5 this would be System Settings > Multimedia > Backend.
  • According to the KDE forums, the VLC backend lacks support for ReplayGain.
Note:
  • If you choose the vlc backend, you may experience crashes every time kde wants to send you a audible warning (and in quite a number of other cases as well, see [7])
  • A possible fix is to run
/usr/lib/vlc/vlc-cache-gen -f /usr/lib/vlc/plugins

Useful applications

The official set of KDE applications may be found here.

Yakuake

Yakuake provides a Quake-like terminal emulator whose visibility is toggled by the F12 key. It also has support for multiple tabs. Yakuake is available in the package yakuake.

KDE Telepathy

KDE Telepathy is a project with the goal to closely integrate Instant Messaging with the KDE desktop. It utilizes the Telepathy framework as a backend and is intended to replace Kopete.

To install all Telepathy protocols, install the telepathy group. To use the KDE Telepathy client, install the telepathy-kde-meta package that includes all the packages contained in the telepathy-kde group.

Use Telegram with KDE Telepathy

Telegram protocol is available using telepathy-haze, installing telegram-purpleAUR or telegram-purple-gitAUR and telepathy-morse-gitAUR. The username is the Telegram account telephone number (complete with the national prefix '+xx', e.g. '+49' for Germany). The configuration through the GUI may be tricky: if the phone number is not accepted when configuring a new account in the KDE Telepathy client (with an error message complaining about an invalid parameter which prevents the account creation), insert it between single quotes and then remove the quotes manually from the configuration file (~/.local/share/telepathy/mission-control/accounts.cfg) after the account creation (if the quotes are not removed after, an authentication error should rise). Note that the configuration file should be edited manually when KDE Telepathy is not running, e.g. when there is no KDE desktop session active, otherwise manual changes may be overwritten by the software.

Tips and tricks

Using an alternative window manager

There may be reasons you want to use another window manager than KWin, for example to work around the DRI bug that causes black screen with PRIME.

To use an alternative window manager with Plasma open the System Settings panel, navigate to (Default) Applications > Window Manager > Use a different window manager and select the window manager you wish to use from the list.

KDE/Openbox session

The openbox package provides a session for using KDE with Openbox. To make use of this session, select KDE/Openbox from the display manager menu.

For those starting the session manually, add the following line to your .xinitrc file:

exec openbox-kde-session

Compiz custom

If you need to run Compiz with custom options and switches select Compiz custom and then create a script called compiz-kde-launcher and add to it the commands you wish to use to start Compiz. See the example below:

/usr/local/bin/compiz-kde-launcher
#!/bin/bash
LIBGL_ALWAYS_INDIRECT=1
compiz --replace &
wait

Then make it executable:

$ chmod +x /usr/local/bin/compiz-kde-launcher

Re-enabling compositing effects

When replacing Kwin with a window manager which does not provide a Compositor (such as Openbox), any desktop compositing effects e.g. transparency will be lost. In this case, install and run a separate Composite manager to provide the effects such as Xcompmgr or Compton.

Integrate Android

KDE Connect provides several features for you:

  • Share files and URLs to/from KDE from/to any app, without wires.
  • Touchpad emulation: Use your phone screen as your computer's touchpad.
  • Notifications sync (4.3+): Read your Android notifications from the desktop.
  • Shared clipboard: copy and paste between your phone and your computer.
  • Multimedia remote control: Use your phone as a remote for Linux media players.
  • WiFi connection: no usb wire or bluetooth needed.
  • RSA Encryption: your information is safe.

You will need to install KDE Connect both on your computer and on your Android. For PC side, install kdeconnect package. For Android side, install KDE Connect from Google Play or from F-Droid.

Configure KWin to use OpenGL ES

Set environment variable KWIN_COMPOSE to 'O2ES' to force the OpenGL ES backend. Please note that OpenGL ES is not supported by all drivers.

Speed up application startup

User Rob described a "magic trick" on his blog to improve application start-up time by 50-150ms. To enable it, create this folder in your home:

$ mkdir ~/.compose-cache/

It can produce freezes under heavy io. To avoid this, also do:

$ ln -sfv /run/user/$UID/ /home/$USER/.compose-cache
Note: For those curious about what is going on here, this enables an optimization which Lubos (of general KDE speediness fame) came up with some time ago and was then rewritten and integrated into libx11. Ordinarily, on startup, applications read input method information from /usr/share/X11/locale/your locale/Compose. This file is quite long (>5000 lines for the en_US.UTF-8 one) and takes some time to process. libX11 can create a cache of the parsed information which is much quicker to read subsequently, but it will only re-use an existing cache or create a new one in ~/.compose-cache if the directory already exists.

Configuring monitor resolution / multiple monitors

To enable display resolution management and multiple monitors in Plasma 5, install kscreen. This adds the additional options to System Settings/Display and Monitor.

Open application launcher with Super key (Windows key)

Install and start ksuperkey. Now assign Alt + F1 as hot key. The Super Key will now open the application launcher. You can add ksuperkey to the autostart if you don't want to start it manually.

Troubleshooting

Configuration related

Many problems in KDE are related to configuration.

Plasma desktop behaves strangely

Plasma problems are usually caused by unstable Plasma widgets (colloquially called plasmoids) or Plasma themes. First, find which was the last widget or theme you had installed and disable it or uninstall it.

So, if your desktop suddenly exhibits "locking up", this is likely caused by a faulty installed widget. If you cannot remember which widget you installed before the problem began (sometimes it can be an irregular problem), try to track it down by removing each widget until the problem ceases. Then you can uninstall the widget, and file a bug report (bugs.kde.org) only if it is an official widget. If it is not, it is recommended you find the entry on kde-look.org and inform the developer of that widget about the problem (detailing steps to reproduce, etc).

If you cannot find the problem, but you do not want all the settings to be lost, navigate to ~/.config:

$ for j in plasma*; do mv -- "$j" "${j%}.bak"; done

This command will rename all Plasma related configs to *.bak (e.g. plasmarc.bak) of your user and when you will relogin into Plasma, you will have the default settings back. To undo that action, remove the .bak file extension. If you already have *.bak files, rename, move, or delete them first. It is highly recommended that you create regular backups anyway. See Synchronization and backup programs for a list of possible solutions.

Clean cache to resolve upgrade problems

The problem may be caused by old cache. Sometimes after an upgrade, the old cache might introduce strange, hard to debug behaviour such as unkillable shells, hangs when changing various settings and several other problems such as ark being unable to unrar or unzip or amarok not recognizing any of your music. This solution can also resolve problems with KDE and Qt programmes looking bad following upgrade.

Rebuild your cache with the following commands:

$ rm ~/.config/Trolltech.conf
$ kbuildsycoca4 --noincremental

Hopefully, your problems are now fixed.

Clean akonadi configuration to fix KMail

First, make sure that KMail is not running. Then backup configuration:

$ mv ~/.local/share/akonadi ~/.local/share/akonadi-old
$ mv ~/.config/akonadi ~/.config/akonadi-old

Start SystemSettings > Personal and remove all the resources. Go back to Dolphin and remove the original ~/.local/share/akonadi and ~/.config/akonadi - the copies you made ensure that you can back-track if necessary.

Now go back to the System Settings page and carefully add the necessary resources. You should see the resource reading in your mail folders. Then start Kontact/KMail to see if it work properly.

Fix empty IMAP inbox

For some IMAP accounts, kmail will show the inbox as a container with all other folders of this account inside. Kmail does not show messages in the inbox container but in all other subfolders [8]. To solve this problem simply disable the server side subscribition in the kmail account settings.

Getting current state of KWin for support and debug purposes

This command prints out a wonderful summary of the current state of KWin including used options, used compositing backend and relevant OpenGL driver capabilities. See more on Martin's blog.

$ qdbus org.kde.KWin /KWin supportInformation

KDE and Qt programs look bad when in a different window manager

If you are using KDE or Qt programs but not in a full Plasma session (specifically, you did not run startkde), then as of Plasma 4.6.1 you will need to tell Qt how to find KDE's styles (Oxygen, QtCurve etc.)

You just need to set the environment variable QT_PLUGIN_PATH. E.g. put:

export QT_PLUGIN_PATH=$HOME/.kde4/lib/kde4/plugins/:/usr/lib/kde4/plugins/

into your /etc/profile (or ~/.profile if you do not have root access). qtconfig-qt4 should then be able to find your KDE styles and everything should look nice again!

Alternatively, you can symlink the Qt styles directory to the KDE styles one:

# ln -s /usr/lib/kde4/plugins/styles/ /usr/lib/qt4/pluginlib32-libdbusmenu-glibs/styles

Under Gnome you can try to install the package libgnomeui.

KF5/Qt5 applications don't display icons in i3/fvwm/awesome

See Qt#Configuration of Qt5 apps under environments other than KDE.

Graphical related problems

Plasma keeps crashing with legacy Nvidia

This is caused by a bug in Plasma when using the Nvidia-304xx driver. Rather than disabling compositing, create a file kwin.sh in ~/.config/plasma-workspace/env/ with the following contents:

#!/bin/sh
export KWIN_EXPLICIT_SYNC=0

Then go to system-settings > Startup and Shutdown > Autostart and Check/Add the script as a pre-KDE startup file.

Applications don't refresh properly

If you use 3D-accelerated composition with Intel, you might find that the Plasma panel and other applications don't refresh properly (stay frozen). Some Intel drivers have problems with EGL. Go to System Settings under Display and Monitor -> Compositor. Set OpenGL interface to OpenGL 3.1. If that does not work, see Intel graphics#SNA issues for alternative solutions.

Low 2D desktop performance (or) artifacts appear when on 2D

GPU driver problem

Make sure you have the proper driver for your card installed, so that your desktop is at least 2D accelerated. Follow these articles for more information: ATI, NVIDIA, Intel for more information, in order to make sure that everything is all right. The open-source ATI and Intel drivers and the proprietary (binary) Nvidia driver should theoretically provide the best 2D and 3D acceleration.

The Raster engine workaround

Tango-inaccurate.pngThe factual accuracy of this article or section is disputed.Tango-inaccurate.png

Reason: xrender is not default in plasma 5. XRender should not be recommended anymore. (Discuss in Talk:KDE#)

If this does not solve your problems, your driver may not provide a good XRender acceleration which the current Qt painter engine relies on by default.

You can change the painter engine to software based only by invoking the application with the -graphicssystem raster command line. This rendering engine can be set as the default one by recompiling Qt with the same as configure option, -graphicssystem raster.

The raster paint engine enables the CPU to do the majority of the painting, as opposed to the GPU. You may get better performance, depending on your system. This is basically a work-around for the terrible Linux driver stack, since the CPU should obviously not be doing graphical computations since it is designed for fewer threads of greater complexity, as opposed to the GPU which is many threads but lesser computational strength. So, only use Raster engine if you are having problems or your GPU is much slower than you CPU, otherwise is better to use XRender.

Since Qt 4.7+, recompiling Qt is not needed. Simply export QT_GRAPHICSSYSTEM=raster, or opengl, or native (for the default). Raster depends on the CPU, OpenGL depends on the GPU and high driver support, and Native is just using the X11 rendering (mixture, usually).

The best and automatic way to do that is to install kcm-qt-graphicssystemAUR from AUR and configure this particular Qt setting through System Settings > Qt Graphics System.

For more information, consult this KDE Developer blog entry and/or this Qt Developer blog entry.

Low 3D desktop performance

KDE begins with desktop effects enabled. Older cards may be insufficient for 3D desktop acceleration. You can disable desktop effects in System Settings > Desktop Effects and you can toggle desktop effects with Alt+Shift+F12.

Note: You may encounter such problems with 3D desktop performance even when using a more powerful graphics card. Make sure the GPU driver and it's components has been successfully installed.

Desktop compositing is disabled on my system with a modern Nvidia GPU

Sometimes, KWin may have settings in its configuration file (kwinrc) that may cause a problem on re-activating the 3D desktop OpenGL compositing. That could be caused randomly (for example, due to a sudden Xorg crash or restart, and it gets corrupted), so, in case that happens, delete your ~/.kde4/share/config/kwinrc file and relogin. The KWin settings will turn to the KDE default ones and the problem should be probably gone.

Flickering in fullscreen when compositing is enabled

As of KDE SC 4.6.0, there is an option in Sytem Settings > Desktop Effect > Advanced > Suspend desktop effects for fullscreen windows. Uncheck it would tell kwin to disable unredirect fullscren.

Display settings lost on reboot (multiple monitors)

There is a bug in kscreen that makes it forget dual screen settings after reboot with certain displays. A possible workaround is to uninstall kscreen and specify your screen setup in a xorg.conf file instead:

Sound problems under KDE

ALSA related problems

Note: First make sure you have alsa-lib and alsa-utils installed.
"Falling back to default" messages when trying to listen to any sound in KDE

When you encounter such messages:

The audio playback device name_of_the_sound_device does not work.
Falling back to default

Go to System Settings > Multimedia > Phonon and set the device named default above all the other devices in each box you see.

MP3 files cannot be played when using the GStreamer Phonon backend

This can be solved by installing the GStreamer libav plugin (package gst-libav). If you still encounter problems, you can try changing the Phonon backend used by installing another such as phonon-qt4-vlc or phonon-qt5-vlc. Then, make sure the backend is preferred via System Settings > Multimedia > Phonon > Backend (tab).

Konsole does not save commands' history

By default console command history is saved only when you type 'exit' in console. When you close Konsole with 'x' in the corner it does not happen. To enable autosaving after every command execution:

~/.bashrc
shopt -s histappend
[[ "${PROMPT_COMMAND}" ]] && PROMPT_COMMAND="$PROMPT_COMMAND;history -a" || PROMPT_COMMAND="history -a"

Inotify folder watch limit

If you get the following error:

KDE Baloo Filewatch service reached the inotify folder watch limit. File changes may be ignored.

Then you will need to increase the inotify folder watch limit:

# echo 10000 > /proc/sys/fs/inotify/max_user_watches

To make changes permanent, create /etc/sysctl.d/90-inotify.conf with

#increase inotify watch limit
fs.inotify.max_user_watches = 10000

Freezes when using Automount on a NFS volume

Using Fstab#Automount with systemd on a NFS volume may cause freezes, see bug report upstream.

Locale warning when installing packages in Konsole

 mandb: can't set the locale; make sure $lc_* and $lang are correct

By default, Konsole sets $LANG to en_US.US-ASCII. If you haven't generated that locale, then mandb can't use it. In your Konsole profile settings, click "Environment" and then add a line for LANG=en_US.UTF-8 or whatever your locale should be.

Multi-monitor issues

The current release of KDE Plasma has several issues with multi-monitor setups, which can make Plasma unusable. See KDE Bug 356225.

These bugs have been resolved in the upstream/git KDE Plasma builds, which can be installed from plasma-desktop-gitAUR or plasma-git-metaAUR - bear in mind that all packages will conflict with current versions - it is recommended to remove them first.

Unstable releases

See Official repositories#kde-unstable

Bugs

It is preferable that if you find a minor or serious bug, you should visit the Arch Bug Tracker or/and KDE Bug Tracker in order to report that. Make sure that you are clear about what you want to report.

If you have any problem and you write about in on the Arch forums, first make sure that you have fully updated your system using a good sync mirror (check here) or try Reflector.

See also