KDE

From ArchWiki
Revision as of 19:30, 19 February 2015 by Marekpetrik (talk | contribs) (Tips and tricks: Multiple monitors)
Jump to: navigation, search

zh-CN:KDE zh-TW:KDE

From KDE Software Compilation and Getting KDE Software:

"The KDE Software Compilation is the set of frameworks, workspaces, and applications produced by KDE to create a beautiful, functional and free desktop computing environment for Linux and similar operating systems. It consists of a large number of individual applications and a desktop workspace as a shell to run these applications."

The KDE upstream has a well maintained UserBase wiki. Users can get detailed information about most KDE applications there.

Note: The term "KDE Software Compilation" is now out dated. KDE is moving to a new way of organizing itself, see: KDE#Plasma 5

Contents

Installation

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

KDE 4

KDE 4 is modular. You can install an entire set of packages or only install your preferred KDE applications.

Full install

Install kde or kde-meta available in the official repositories. For differences between kde and kde-meta see the KDE Packages article.

Minimal install

If you want to have a minimal installation of the KDE Software Compilation, install kdebase-workspace.

Language pack

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.

Plasma 5

The KDE project has changed the way it names and organizes itself since KDE4. In effect there is no 'KDE5'. The project is now split into different sections with their own names, version numbering and development cycles including for example: Frameworks (KDE libraries), Plasma (the workspace) and Applications (that use KDE libraries).

Install plasma-meta or plasma available in the official repositories.

Note: Plasma 5 conflicts with KDE 4 Workspace and pacman will request to remove kdebase-workspace. It is recommended to remove the old workspace and its dependencies first with pacman -Rc kdebase-workspace

System tray icons

Plasma 5 uses a new specification to display items in the 'system tray' area called Status Notifier. To allow applications using the old xembed specification to display items the packages (gtk-2)libappindicator-gtk2AUR, (gtk-3)libappindicator-gtk3AUR or (qt4)sni-qt, lib32-sni-qt(for 32bit based applications like Skype) may be required. See "Where are my systray icons?" for more information.

See also Plasma

Starting Plasma

See Plasma#Starting_Plasma.

Configuration

All KDE 4 configurations are saved in the ~/.kde4 folder, otherwise ~/.config is used. If KDE is giving you a lot of trouble or if you ever want a fresh installation of KDE, just backup and rename this folder and restart your X session. KDE will re-create it with all the default configuration files. If you want very fine-grained control over KDE programs, you may want to edit the files in this folder.

However, configuring KDE is primarily done in System Settings. A few other options for the desktop are available in Default Desktop Settings in the desktop's context menu.

For other personalization options not covered below such as activities, different wallpapers on one cube, etc., please refer to the Plasma wiki page.

Personalization

How to set up the KDE desktop to your personal style: use different Plasma themes, window decorations and icon themes.

Tip: Applications using the new frameworks 5 use the same configurations as under the old kdebase-workspace 4 but read from new locations. To allow frameworks 5 applications running in kdebase-workspace 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
This information was gathered from the Applications & Desktop Environments section of the forums.

Plasma desktop

See Plasma.

Themes

See Plasma#Themes

Widgets

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

Plasmoid binaries can be installed using PKGBUILDs from AUR, or you can write your own PKGBUILD.

The easiest way to install plasmoid scripts is by right-clicking onto a panel or the desktop:

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.

Most plasmoids are not created officially by KDE developers. You can also try installing Mac OS X widgets, Microsoft Windows Vista/7 widgets, Google Widgets, and even SuperKaramba widgets.

Sound applet in the system tray

Install Kmix (kdemultimedia-kmix) from the official repositories and start it from the application launcher. Since KDE, by default, autostarts programs from the previous session, it does not need to be started manually upon every login.

Note: To adjust the step size of volume increments/decrements, add e.g. VolumePercentageStep=1 in the [Global] section of ~/.kde4/share/config/kmixrc
Adding a Global Menu to the desktop

Install appmenu-qt from the official repositories and appmenu-gtkAUR and appmenu-qt5AUR from the AUR in order to complete the preliminaries for a Mac OS X style always-on global menu. To get Firefox and LibreOffice to use the global menu as well, install firefox-extension-globalmenuAUR[broken link: package not found] and libreoffice-extension-menubarAUR from the AUR.

Note:
  • appmenu-gtkAUR is orphaned and Canonical has abandoned appmenu-gtk in favor of unity-gtk-module that is depending on Unity desktop. As of October 2014 there is no way of exporting gtk2,3 menus in KDE.
  • firefox-extension-globalmenuAUR[broken link: package not found] has been deprecated as of Firefox 25 and there is no other recommended method for getting the global menu. However, there is a patched package, firefox-ubuntuAUR available in the AUR which has Canonical's patch for getting the global menu to work with the current version of Firefox (as of November 2013).

To actually get the global menu, install kdeplasma-applets-menubarAUR from the AUR. Create a plasma-panel on top of your screen and add the window menubar applet to the panel. To export the menus to your global menu, go to System Settings > Application Appearance > Style. Now click the fine-tuning tab and use the drop-down list to select only export as your menubar style.

Disable panel shadow

As the plasma panel is on top of other windows, its shadow is drawn over them. [1] 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. [2] 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-desktop": ("Plasma" "Plasma")/!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:

$ kcmshell4 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

Not many full system icons themes are available for KDE 4. You can open up System Settings > Application Appearance > Icons and browse for new ones or install them manually. Many of them can be found on kde-look.org.

Official logos, icons, CD labels and other artwork for Arch Linux are provided in the archlinux-artworkAUR package. After installing you can find such artwork at /usr/share/archlinux/.

Qt 5 icons theme

If you are on Plasma 5, use System Settings > Icons. While if you are on KDE 4 use kcmshell5 icons to set the icons theme.

Fonts

Fonts in KDE 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

Users with small screens (e.g. netbooks) can change some setting to make KDE more space efficient. See the upstream wiki for more information. Also, you can use KDE's Plasma Netbook which is a workspace made specifically for small, lightweight netbook devices.

Networking

You can choose from the following tools:

  • NetworkManager. See NetworkManager for more information.
  • Wicd. See Wicd for more information.

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 kdeutils-print-manager and cups.

The avahi-daemon and cupsd 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#CUPS administration 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 usershares, which the stock smb.conf does not have enabled. Instructions to add them are in the Samba article, 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

KDE 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).

Since KDE 4.6, CPU frequency scaling is no longer managed by KDE. Instead it is assumed to be handled automatically by the the hardware and/or kernel. Arch has used ondemand as the default CPU frequency governor since kernel version 3.3, so no additional configuration is needed in most cases. For details on fine-tuning the governor, see CPU frequency scaling.

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 from AUR which is a GUI frontend for kdirwatch.

System administration

Set keyboard

Navigate to:

System Settings > Hardware > Input Devices > Keyboard

In the first tab, you can choose your keyboard model.

In the "Layouts" tab, you can choose the languages you may want to use by pressing the "Add Layout" button and subsequently choosing the variant and the language.

In the "Advanced" tab, you can choose the keyboard combination you want in order to change the layouts in the "Key(s) to change layout" sub-menu.

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 tick the checkbox.

KCM

KCM stands for KConfig Module. KCMs can help you configure your system by providing interfaces in System Settings.

Configuration for look and feel of GTK applications.

Configuration for the GRUB bootloader.

Configuration for Synaptics touchpads.

Configuration for the Uncomplicated Firewall (UFW)

Configuration for PolicyKit

Configuration for Wacom tablets

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

Auto Login

Go to System Settings > System Administration > Login Screen > Convenience, check Enable Auto-Login box and select user.

Desktop search and semantic desktop

According to Wikipedia:

"the Semantic Desktop is a collective term for ideas related to changing a computer's user interface and data handling capabilities so that data is more easily shared between different applications or tasks and so that data that once could not be automatically processed by a computer can be (automatically processed)."

The KDE implementation of this concept is tied to (as of KDE Applications 4.13) two major pieces of software: Akonadi and Baloo. Between the two of them, these programs look at your data and make an easily searchable index of it. The idea behind these pieces of software is to make your system "aware" of your data and give it context using meta-data and user-supplied tags. Baloo uses Xapian to store its data.

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 Dophin press CTRL+F.

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

Alternatively you can edit your ~/.kde4/share/config/baloofilerc (KDE4) or ~/.config/baloofilerc (KF5) 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.

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.

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).

Disabling Akonadi

See this section in the KDE userbase. Alternatively, install akonadi-fakeAUR from the AUR.

Database configuration

Start akonaditray from package kdepim-runtime. Right click on it and select configure. In the Akonadi server configure tab, you can:

  • Configuring Akonadi to use MySQL/MariaDB Server
    • 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

  • Configuring Akonadi to use PostgreSQL Server
  • Configuring Akonadi to use SQLite
    • Edit ~/.config/akonadi/akonadiserverrc to match the below
[General]
Driver=QSQLITE3

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

Phonon

From Wikipedia:

"Phonon is the multimedia API for KDE 4. Phonon was created to allow KDE 4 to be independent of any single multimedia framework such as GStreamer or xine and to provide a stable API for KDE 4's lifetime. It was done for various reasons: to create a simple KDE/Qt style multimedia API, to better support native multimedia frameworks on Windows and Mac OS X, and to fix problems of frameworks becoming unmaintained or having API or ABI instability."

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 various backends like GStreamer (phonon-qt4-gstreamer, phonon-qt5-gstreamer) or VLC (phonon-qt4-vlc, phonon-qt5-vlc), available in the official repositories, and MPlayer (phonon-qt4-mplayer-gitAUR), QuickTime (phonon-quicktime-gitAUR) or AVKode (phonon-avkode-gitAUR), available in the AUR.

Most users will want VLC which has the best upstream support. GStreamer is currently not well maintained. Note that multiple backends can be installed at once and chosen at System Settings > Multimedia > Phonon > Backend.

Note:
  • According to the Feature Matrix, the GStreamer backend has some more features that the VLC backend.
  • According to the KDE UserBase, Phonon-MPlayer is currently unmaintained.

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 kde-telepathy-meta package that includes all the packages contained in the kde-telepathy group .

Tips and tricks

Using an alternative window manager in KDE

To use an alternative window manager with KDE 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 with the KDE Desktop

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 if you are using KDE4 or if you are using Plasma 5, then you should install kdeconnect-frameworks-gitAUR instead. For Android side, install KDE Connect from the Google Play Store or from F-Droid.

Configure KWin to use OpenGL ES

Beginning with KWin version 4.8 it is possible to use the separately built binary kwin_gles as a replacement for kwin. It behaves almost the same as the kwin executable in OpenGL2 mode with the slight difference that it uses egl instead of glx as the native platform interface. To test kwin_gles you just have to run kwin_gles --replace in Konsole. If you want to make this change permanent you have to create a script in $(kde4-config --localprefix)/env/ which exports KDEWM=kwin_gles.

Enabling audio/video thumbnails under Konqueror/Dolphin file managers

For thumbnails of videos in konqueror and dolphin install kdemultimedia-mplayerthumbs or kdemultimedia-ffmpegthumbs and activate the installed package in Settings> Configure Konqueror> General> Previews> Video Files. For thumbnails of audio files in Konqueror and Dolphin install audiothumbsAUR from AUR.

Speed up application startup

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

$ mkdir ~/.compose-cache/

But it can produce freezes on heavy io, can be avoided by:

$ 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.

Hiding partitions

In Dolphin, it is as simple as right-clicking on the partition in the Places sidebar and selecting Hide partition. Otherwise...

If you wish to prevent your internal partitions from appearing in your file manager, you can create an udev rule, e.g:

/etc/udev/rules.d/10-local.rules
KERNEL=="sda[0-9]", ENV{UDISKS_IGNORE}="1"

The same thing for a certain partition:

KERNEL=="sda1", ENV{UDISKS_IGNORE}="1"
KERNEL=="sda2", ENV{UDISKS_IGNORE}="1"

Konqueror tips

Disabling Access Keys

Every time you pressing the Ctrl key while browsing, small square tooltips appear for each of the active areas (hyperlinks) on a webpage. This is useful when you browsing with only a keyboard.

To disable Access Keys, go to Settings > Configure Konqueror > Web Browsing and uncheck Enable Access Key activation with Ctrl key.

Using WebKit

WebKit is an open source browser engine developed by Apple Inc. It is a derivative from the KHTML and KJS libraries and contains many improvements. WebKit is used by Safari, Google Chrome and rekonq.

It is possible to use WebKit in Konqueror instead of KHTML. First install the kwebkitpart package.

Then, after executing Konqueror, navigate to Settings > Configure Konqueror > General > Default web browser engine and set it as WebKit.

Firefox integration

See Firefox.

Setting the background for lock screen

KDE by default is not able to set a custom wallpaper for the lock screen, but here a workaround from OpenSUSE mailing lists: http://lists.opensuse.org/opensuse-kde/2013-02/msg00082.html

For this you should modify the file /usr/share/kde4/apps/ksmserver/screenlocker/org.kde.passworddialog/contents/ui/main.qml, replacing a line

source: theme.wallpaperPathForSize(parent.width, parent.height)

with something like

source: "1920x1080.jpg"

Now you simply put a wallpaper image 1920x1080.jpg to the /usr/share/kde4/apps/ksmserver/screenlocker/org.kde.passworddialog/contents/ui directory.

Note: You have to redo this for each update of the package kdebase-workspace.

Setting lockscreen wallpaper to arbitrary image

Copy an existing wallpaper profile as a template:

$ cp -r /usr/share/wallpapers/ExistingWallpaper ~/.kde4/share/wallpapers/

Change the name of the directory, and edit metadata.desktop:

~/.kde4/share/wallpapers/MyWallpaper/metadata.desktop
[Desktop Entry]
Name=MyWallpaper
X-KDE-PluginInfo-Name=MyWallpaper

Remove existing images (contents/screenshot.png and images/*):

$ rm ~/.kde4/share/wallpapers/MyWallpaper/contents/screenshot.png
$ rm ~/.kde4/share/wallpapers/MyWallpaper/contents/images/*

Copy new image in:

$ cp path/to/MyWallpaper.png MyWallpaper/contents/images/1920x1080.png

Edit the metadata profile for the current theme:

~/.kde4/share/apps/desktoptheme/MyTheme/metadata.desktop
[Wallpaper]
defaultWallpaperTheme=MyWallpaper
defaultFileSuffix=.png
defaultWidth=1920
defaultHeight=1080

Lock the screen to check that it worked.

Note: This method sets the lockscreen background without changing any system-wide settings. For a system-wide change, create the new wallpaper profile in /usr/share/wallpapers.

Configuring monitor resolution / multiple monitors

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

Troubleshooting

Configuration related

Many problems in KDE are related to configuration. One way to resolve upgrade problems is to start over with a fresh KDE config.

Reset all KDE configuration

To test whether your config is the problem try quitting your KDE session by logging out and, in a tty, run

$ cp -r ~/.kde4 ~/.kde4.safekeeping
$ rm .kde4/{cache,socket,tmp}-$(hostname)

The rm command just removes symbolic links which will be recreated by KDE automatically. Now start a new KDE session to see the results.

If the problem is resolved, you will have a fresh, problem-free ~/.kde4/. You can gradually move parts of your saved configuration back, restarting your session regularly to test, to identify the problematic parts of your config. Some files here are named after applications so you will probably be able to test these without needing to restart KDE.

Plasma desktop behaves strangely

Plasma problems are usually caused by unstable plasmoids or plasma themes. First, find which was the last plasmoid or plasma 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 KDE settings to be lost, do:

$ rm -r ~/.kde4/share/config/plasma*

This command will delete all plasma related configs of your user and when you will relogin into KDE, you will have the default settings back. You should know that this action cannot be undone. You should create a backup folder and copy all the plasma related configs in it.

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 musics. 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.

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

KDE4 does not finish loading

There might be a situation in which the graphic driver might create a conflict when starting KDE4. This situation happens after the login but before finishing loading the desktop, making the user wait indefinitely at the loading screen. Until now the only users confirmed to be affected by this are the ones that use Nvidia drivers and KDE4.

A solution for Nvidia users:

~/.kde4/share/config/kwinrc
[Compositing]
Enabled=false

For more information, see this thread.

If a minimal install was done, make sure you installed the required font by your phonon backend listed here: #Minimal install

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 KDE session (specifically, you did not run startkde), then as of KDE 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-qt4should 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.

Graphical related problems

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

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, especially the catalyst proprietary driver (fglrx). This driver is known for having problems with 3D acceleration. Visit the ATI Wiki page for more troubleshooting.

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.

Screen Tearing with desktop compositing enabled

KWin may suffer from screen tearing while desktop effects are enabled. Uncheck the VSync option under System Settings > Desktop Effects > Advanced > Use Vsync.

Note: With the release of KDE 4.11, several new Vsync options have been added, which may help with screen tearing.

For proprietary driver users, ensure that the driver's VSync option is enabled (amdccle for Catalyst users, and nvidia-settings for NVIDIA users).

Display settings lost on reboot (multiple monitors)

Installing kscreen might fix the problem unless your screens share the same EDID. Kscreen is the improved screen management software for KDE, more information can be found here.

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"

KDE password prompts display three bullets per char

This setting can be changed at System Settings > Account Details > Password & User Account:

  • Show one bullet for each letter
  • Show three bullets for each letter
  • Show nothing

Dolphin and File Dialogs are extremely slow to start

This may be caused by the upower service. If the upower service is not needed on your system, it can be disabled:

# systemctl disable upower
# systemctl mask upower

Obviously this will not have any side effect on a desktop system.

Default PDF viewer in GTK applications under KDE

In some cases when you have installed Inkscape, Gimp or other graphic programs, GTK applications (Firefox among all) might not select Okular as the default PDF application, and they are not going to follow the KDE settings on default applications. You can use the following user command to make Okular the default application again.

$ xdg-mime default kde4-okularApplication_pdf.desktop application/pdf

If you are using a different PDF viewer application, or a different mime-type is misbehaving, you should change kde4-okularApplication_pdf.desktop and application/pdf respectively according to your needs.

For more information, consult Default applications wiki page.

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

Unstable releases

When KDE is reaching beta or RC milestone, KDE "unstable" packages are uploaded to the kde-unstable repository. They stay there until KDE is declared stable and passes to the extra repository.

You can add kde-unstable with:

/etc/pacman.conf
[kde-unstable]
Include = /etc/pacman.d/mirrorlist
Warning: Make sure to add these lines before the extra repository. Adding the section after extra will cause pacman to prefer the older packages in the extra repository. pacman -Syu will not install them, and will warn that they are "too new" if installed manually. Also, some of the libraries will stay at the older versions, which may cause file conflicts and/or instability!
  1. kde-unstable is based upon testing. Therefore, you need to enable the repositories in the following order: kde-unstable, testing, core, extra, community-testing, community.
  2. To update from a previous KDE installation, run: # pacman -Syu or # pacman -S kde-unstable/kde
  3. If you do not have KDE installed, you might have difficulties to install it by using groups (limitation of pacman)
  4. Subscribe and read the arch-dev-public mailing list
  5. Make sure you make bug reports if you find any problems.

KDE forks

Trinity

From the release of KDE 4.x, the developers dropped support for KDE 3.5.x. Trinity Desktop Environment is a fork of KDE3 developed by Timothy Pearson (trinitydesktop.org). This project aims to keep the KDE3.5 computing style alive, as well as polish off any rough edges that were present as of KDE 3.5.10. See Trinity for more info.

Bugs

It is preferrable 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