Difference between revisions of "KDE"

From ArchWiki
Jump to: navigation, search
(Adding a Global Menu to the desktop: Added warning about the deprecation of the firefox-extension-globalmenu and a possible solution)
(Using an alternative window manager: add style and out of date notices)
 
(453 intermediate revisions by more than 100 users not shown)
Line 1: Line 1:
 
[[Category:KDE]]
 
[[Category:KDE]]
 +
[[ar:KDE]]
 
[[cs:KDE]]
 
[[cs:KDE]]
 
[[de:KDE]]
 
[[de:KDE]]
 
[[es:KDE]]
 
[[es:KDE]]
 +
[[fa:KDE]]
 
[[fr:KDE]]
 
[[fr:KDE]]
 
[[it:KDE]]
 
[[it:KDE]]
Line 8: Line 10:
 
[[pl:KDE]]
 
[[pl:KDE]]
 
[[ru:KDE]]
 
[[ru:KDE]]
[[tr:KDE_Masaüstü_Ortamı]]
+
[[tr:KDE Masaüstü Ortamı]]
 
[[zh-CN:KDE]]
 
[[zh-CN:KDE]]
 
[[zh-TW:KDE]]
 
[[zh-TW:KDE]]
{{Article summary start}}
+
{{Related articles start}}
{{Article summary text|This article covers installation, configuration, and troubleshooting of KDE.}}
+
{{Related|Desktop environment}}
{{Article summary heading|Overview}}
+
{{Related|Display manager}}
{{Article summary text|{{Graphical user interface overview}}}}
+
{{Related|Dolphin}}
{{Article summary heading|Related}}
+
{{Related|Window manager}}
{{Article summary wiki|Plasma}}
+
{{Related|Qt}}
{{Article summary wiki|Qt}} - KDE uses the Qt toolkit
+
{{Related|KDM}}
{{Article summary wiki|KDM}}
+
{{Related|KDevelop}}
{{Article summary wiki|KDevelop 4}}
+
{{Related|Trinity}}
{{Article summary wiki|Uniform Look for Qt and GTK Applications}}
+
{{Related|Uniform Look for Qt and GTK Applications}}
{{Article summary end}}
+
{{Related articles end}}
  
From [http://www.kde.org/community/whatiskde/softwarecompilation.php KDE Software Compilation] and [http://www.kde.org/download/ Getting KDE Software]:
+
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 [http://userbase.kde.org/ UserBase wiki]. Detailed information about most KDE applications can be found there.
 
+
:''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 [http://userbase.kde.org/ UserBase wiki]. Users can get detailed information about most KDE applications there.
+
  
 
== Installation ==
 
== Installation ==
  
KDE 4.x is '''modular'''. You can install an entire set of packages or only install your preferred KDE applications.
+
=== Plasma Desktop ===
  
{{Note|If you do not have [[Xorg#Installation|Xorg]] installed on your system, be sure to install it before KDE.}}
+
{{Note|
 +
*Plasma 5 is not co-installable with Plasma 4.
 +
*The Plasma 4 desktop is unmaintained since August 2015.[https://www.kde.org/announcements/announce-applications-15.08.0.php] It is no longer in the official repositories since December 2015.[https://www.archlinux.org/news/dropping-plasma-4/]
 +
* [[KDM]] is no longer available for Plasma 5. KDE upstream [http://blog.davidedmundson.co.uk/blog/display_managers_finale recommends] using the [[SDDM]] display manager as it provides integration with the Plasma 5 theme.}}
  
=== Full install ===
+
Before installing Plasma, make sure you have a working [[Xorg]] installation on your system.
  
[[pacman|Install]] {{Grp|kde}} or {{Grp|kde-meta}} available in the [[official repositories]]. For differences between {{Grp|kde}} and {{Grp|kde-meta}} see the [[KDE Packages]] article.
+
Install the {{Pkg|plasma-meta}} meta-package or the {{Grp|plasma}} group. For differences between {{Pkg|plasma-meta}} and {{Grp|plasma}} reference [[Creating packages#Meta packages and groups]]. Alternatively, for a more minimal Plasma installation, install the {{Pkg|plasma-desktop}} package.
  
=== Minimal install ===
+
=== Upgrading from Plasma 4 to 5 ===
  
If you want to have a minimal installation of the KDE SC, install:
+
# Isolate {{ic|multi-user.target}}:{{bc|# systemctl isolate multi-user.target}}
* {{Grp|kdebase}}
+
# If you use KDM as display manager, [[disable]] the {{ic|kdm.service}} systemd unit.
 +
# [[Install|Uninstall]] the {{AUR|kdebase-workspace}} package.
 +
# [[Install]] the {{pkg|plasma-meta}} package or the {{grp|plasma}} group.
 +
# [[Enable]] the {{ic|sddm.service}} systemd unit, or install and enable any other [[display manager]].
 +
# Reboot or simply [[start]] the systemd {{ic|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.}}
  
=== Language pack ===
+
=== KDE applications and language packs ===
  
If you need language files, install {{ic|kde-l10n-yourlanguagehere}} (e.g. {{Pkg|kde-l10n-de}} for the German language).
+
To install the full set of KDE Applications, install the {{Grp|kde-applications}} group or the {{Pkg|kde-applications-meta}} meta-package. Note that this will only install applications, it will not install any version of the Plasma Desktop.
  
For a full list of available languages see [https://www.archlinux.org/packages/extra/any/kde-l10n/ this link].
+
If you need language files, install {{ic|kde-l10n-'''yourlanguagehere'''}} (e.g. {{Pkg|kde-l10n-de}} for the German language). For a full list of available languages see [https://www.archlinux.org/packages/extra/any/kde-l10n/ this link].
  
== Upgrading ==
+
== Starting Plasma ==
  
'''KDE 4.11''' Software Compilation is the current major [http://kde.org/announcements/ release of KDE]. Important hints for upgraders:
+
{{Tip|To better integrate SDDM with Plasma, it is recommended to edit {{ic|/etc/sddm.conf}} to use the breeze theme. Refer to [[SDDM#Theme settings]] for instructions.}}
* Always check if your mirror is '''up to date'''.
+
* '''Do not force an update using {{ic|# pacman --force}}'''. If pacman complains about conflicts please '''file a bug report'''.
+
* You can remove the meta packages and the sub packages you do not need after the update.
+
* If you do not like split packages just keep using the kde-meta packages.
+
  
== Starting KDE ==
+
To launch a Plasma 5 session, choose ''Plasma'' in your [[display manager]] menu.
  
Starting KDE depends on your preferences. Basically there are two ways of starting KDE. Using '''KDM''' or '''xinitrc'''.
+
Alternatively, to start Plasma with ''startx'', append {{ic|exec startkde}} to your {{ic|.xinitrc}} file. If you want to start Xorg at login, please see [[Start X at login]].
  
=== Using a Display Manager ===
+
=== Wayland ===
''It is highly recommended to get familiar with the [[Display Manager|full article]] concerning display managers, before you make any changes.''
+
  
==== KDM (KDE Display Manager) ====
+
As of Plasma 5.8, Plasma on [[Wayland]] should be usable, although there are a [https://community.kde.org/Plasma/5.8_Errata#Wayland few known problems].
  
''See also [[KDM]] Wiki page.''
+
* To start a Plasma on Wayland session from a display manager, install the {{Pkg|plasma-wayland-session}} package and ''Plasma'' should show up in the display manager.
 +
* To start a Plasma on Wayland session from a console, run {{ic|startplasmacompositor}}.
  
[[Daemons|Enable/start]] {{ic|kdm.service}}.
+
== Configuration ==
  
=== Using xinitrc ===
+
Most settings for KDE applications are stored in {{ic|~/.config}}, but some older applications may use {{ic|~/.kde4}}.  However, configuring KDE is primarily done through the '''System Settings''' application. It can be started from a terminal by executing ''systemsettings5''.
  
''The meaning and usage of '''xinitrc''' is very well described [[Xinitrc|here]].
+
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 {{ic|~/.kde4/share/apps/konsole}} to {{ic|~/.local/share/konsole/}}
 +
*Application appearance from {{ic|~/.kde4/share/config/kdeglobals}} to {{ic|~/.config/kdeglobals}}
  
{{Pkg|kdebase-workspace}} provides startkde. Make sure it is installed then use:
+
=== Personalization ===
  
{{hc|~/.xinitrc|
+
==== Plasma desktop ====
exec startkde
+
}}
+
  
After a reboot and/or log-in, each execution of Xorg ({{ic|startx}} or {{ic|xinit}}) will start KDE automatically.
+
===== Themes =====
  
{{Note|If you want to start Xorg at boot, please read [[Start X at Login]] article.}}
+
{{Note|1=If the Plasma cursor theme is incorrect in some instances, see the following [https://bbs.archlinux.org/viewtopic.php?pid=1533071#p1533071 forum post] for a workaround.}}
 +
[http://kde-look.org/index.php?xcontentmode=76 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 [https://aur.archlinux.org/packages.php?O=0&K=plasmatheme&do_Search=Go AUR].
  
== Configuration ==
+
The easiest way to install themes is by going through the Desktop Settings control panel:
  
All KDE configuration is saved in the {{ic|~/.kde4}} folder. If your KDE is giving you a lot of trouble or if you ever want a fresh installation of KDE, just back this folder up and restart your X session. KDE will re-create this folder with all the default config files. If you want very fine-grained control over your KDE programs, then you may want to edit the files in this folder.
+
  Workspace Theme > Desktop Theme > Get new Themes
  
However, configuring KDE is primarily done in '''System Settings'''. There are also a few other options available for the desktop with '''Default Desktop Settings''' when you right click the desktop.
+
This will present a nice frontend for [http://www.kde-look.org/ kde-look.org] that allows you to install, uninstall, or update third-party plasmoid scripts with literally just one click.
  
For other personalization options not covered below such as activities, different wallpapers on one cube, etc please refer to the [[Plasma]] wiki page.
+
Splash and Lock screens are currently unavailable so to customize these screens you have to modify the original theme found in {{ic|/usr/share/plasma/look-and-feel/}}.
 +
See [https://www.kubuntuforums.net/showthread.php?67599-Plasma-5-background-images&s=59832dc20e5bfc2948dbb591d8453f61 this thread] on the Kubuntu forums.
  
=== Personalization ===
+
Note that the [[SDDM]] login screen is not part of this theme.
  
How to set up the KDE desktop to your personal style; use different Plasma themes, window decorations and icon themes.
+
====== Qt and GTK+ Applications Appearance ======
  
==== Plasma desktop ====
+
{{Tip|For Qt and GTK theme consistency, see [[Uniform look for Qt and GTK applications]].}}
  
[[Plasma]] is a desktop integration technology that provides many functions from displaying the wallpaper, adding widgets to the desktop, and handling the panels or "taskbar".
+
;Qt4
 +
For Qt4 applications to have a consistent appearance, there are two options:
 +
Install {{Pkg|breeze-kde4}} and then pick Breeze as GUI Style in {{ic|qtconfig-qt4}}; or install {{Pkg|breeze-gtk}} and pick GTK+ as GUI Style.
  
===== Themes =====
+
;GTK+
 +
The recommended theme for a pleasant appearance in GTK+ applications is {{Pkg|breeze-gtk}} or {{AUR|gnome-breeze-git}}, a GTK+ theme designed to mimic the appearance of Plasma 5 Breeze.
 +
Install {{Pkg|kde-gtk-config}} and select the installed GTK-theme for GTK2/GTK3-Theme in ''System Settings > Application Style > GNOME Application Style''.
  
[http://kde-look.org/index.php?xcontentmode=76 Plasma themes] can be installed through the Desktop Settings control panel. Plasma themes define how your panels and plasmoids look like. If you like to have them installed system-wide, themes can be found in both the official repositories and [https://aur.archlinux.org/packages.php?O=0&K=plasmatheme&do_Search=Go AUR].
+
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 =====
 
===== Widgets =====
  
Plasmoids are little scripted or coded KDE apps that enhance the functionality of your desktop.  There are two kinds, plasmoid scripts and plasmoid binaries.
+
Plasmoids are little scripted (plasmoid scripts) or coded (plasmoid binaries) KDE applications designed to enhance the functionality of your desktop.
  
Plasmoid binaries must be installed using PKGBUILDS from [https://aur.archlinux.org/packages.php?O=0&K=plasmoid&do_Search=Go&PP=25&SO=d&SB=v AUR].  Or write your own PKGBUILD.
+
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 [http://www.kde-look.org/ kde-look.org] that allows you to install, uninstall, or update third-party plasmoid scripts with literally just one click.
  
The easiest way to install plasmoid scripts is by right-clicking onto a panel or the desktop:
+
Many Plasmoid binaries are [https://aur.archlinux.org/packages.php?O=0&K=plasmoid&do_Search=Go&PP=25&SO=d&SB=v available from the AUR].
  
Add Widgets > Get new Widgets > Download Widgets
+
===== Sound applet in the system tray =====
  
This will present a nice frontend for [http://www.kde-look.org/ kde-look.org] and allows you to (un)install or update third-party plasmoid scripts with just one click.
+
[[Install]] {{Pkg|plasma-pa}} or {{Pkg|kmix}} (start Kmix from the Application Launcher).
  
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.
+
{{Note|1=To adjust the [https://bugs.kde.org/show_bug.cgi?id=313579#c28 step size of volume increments/decrements], add e.g. {{ic|1=VolumePercentageStep=1}} in the {{ic|[Global]}} section of {{ic|~/.kde4/share/config/kmixrc}}}}
  
===== Sound applet in the system tray =====
+
===== Disable panel shadow =====
  
Install Kmix ({{Pkg|kdemultimedia-kmix}}) from the official repositories and start it from the application launcher. Since KDE autostarts programs from the previous session, the program need not be started manually every time one logs in.
+
As the plasma panel is on top of other windows, its shadow is drawn over them. [https://bbs.archlinux.org/viewtopic.php?pid=1228394#p1228394] To disable this behaviour without impacting other shadows, [[install]] {{Pkg|xorg-xprop}} and run:
  
===== Adding a Global Menu to the desktop =====
+
$ xprop -remove _KDE_NET_WM_SHADOW
  
Install {{Pkg|appmenu-qt}} from the official repos and {{aur|appmenu-gtk}} and {{aur|appmenu-qt5}} from the AUR in order to complete the preliminaries for an always-on globalmenu (mac-style). To get firefox and libreoffice support as well, install {{aur|firefox-extension-globalmenu}} and {{aur|libreoffice-extension-menubar}} from the AUR.
+
then select the panel with the plus-sized cursor. [https://forum.kde.org/viewtopic.php?f=285&t=121592] For automation, install {{Pkg|xorg-xwininfo}} and create the following script:
  
{{Warning|{{aur|firefox-extension-globalmenu}} 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, namely {{aur|firefox-ubuntu}} available in the AUR which has canonical's patch for getting the globalmenu to work with the current version of Firefox (as of this writing).}}
+
{{hc|/usr/local/bin/kde-no-shadow|<nowiki>
 +
#!/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
 +
</nowiki>}}
 +
 
 +
The script can be run on login with ''Add Script'' in ''Autostart'':
  
To actually get the globalmenu, install {{aur|kdeplasma-applets-menubar}} 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 globalmenu, 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.
+
$ kcmshell5 autostart
  
 
==== Window decorations ====
 
==== Window decorations ====
  
[http://kde-look.org/index.php?xcontentmode=75 Window decorations] can be changed in:
+
[http://kde-look.org/index.php?xcontentmode=75 Window decorations] can be changed in ''System Settings > Workspace Appearance > Window Decorations''.
System Settings > Workspace Appearance > Window Decorations
+
There you can also directly download and install more themes with one click and some are available on [https://aur.archlinux.org/packages.php?O=0&K=kdestyle&do_Search=Go&PP=25&SO=d&SB=v AUR].
+
  
==== Icon themes ====
+
There you can also directly download and install more themes with one click, and some are available in the [https://aur.archlinux.org/packages.php?O=0&K=kdestyle&do_Search=Go&PP=25&SO=d&SB=v AUR].
  
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 [http://www.kde-look.org/ kde-look.org].
+
==== Icon themes ====
  
Official logos, icons, CD labels and other artwork for Arch Linux are provided in the {{AUR|archlinux-artwork}} package. After installing you can find such artwork at {{ic|/usr/share/archlinux/}}.
+
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.<br/>
 +
It is recommended to install Plasma compatible icon themes instead.}}
  
 
==== Fonts ====
 
==== Fonts ====
  
===== Fonts in KDE look poor =====
+
===== Fonts in a Plasma session look poor =====
  
Try installing the {{Pkg|ttf-dejavu}} and {{Pkg|ttf-liberation}} packages.  
+
Try installing the {{Pkg|ttf-dejavu}} and {{Pkg|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''.
 
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 ({{ic|fonts.conf}}).  
+
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 ({{ic|fonts.conf}}).
  
There is no way to prevent this but if you set the values to match your {{ic|fonts.conf}} file the expected font rendering will return (it will require you to restart your application or in a few cases for you to have to restart your desktop).  
+
There is no way to prevent this, but, if you set the values to match your {{ic|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.
  
Note too that Gnomes' Font Preferences will also do this if you use both desktop environments.
+
===== Fonts are huge or seem disproportional =====
  
===== Fonts are huge or seems disproportional =====
+
Try to force font DPI to '''96''' in ''System Settings > Application Appearance > Fonts''.
  
Try to force fonts DPI to '''96''' on ''System Settings > Application Appearance > Fonts''.
+
If that does not work, try setting the DPI directly in your Xorg configuration as documented [[Xorg#Setting_DPI_manually|here]].
 
+
If it does not work try set DPI directly on Xorg configuration [[Xorg#Setting_DPI_manually|here]].
+
  
 
==== Space efficiency ====
 
==== Space efficiency ====
  
Users with small screens (eg Netbooks) can change some setting to make KDE more space efficient. See [http://userbase.kde.org/KWin#Using_with_small_screens_(eg_Netbooks) upstream wiki] for more info. Also you can use [http://www.kde.org/workspaces/plasmanetbook/ KDE's Plasma Netbook] which is a workspace made specifically for small, lightweight netbook devices.
+
The Plasma Netbook shell has been dropped from Plasma 5, see the following [https://forum.kde.org/viewtopic.php?f=289&t=126631&p=335947&hilit=plasma+netbook#p335899 KDE forum post]
 
+
However, you can achieve something similar by editing the file {{ic|~/.config/kwinrc}} adding
=== Networking ===
+
{{ic|1=BorderlessMaximizedWindows=true}} in the {{ic|[Windows]}} section.
 
+
You can choose from the following tools:
+
* NetworkManager.  See [[NetworkManager#KDE4|NetworkManager]] for more information.
+
* Wicd. See [[Wicd]] for more information.
+
  
 
=== Printing ===
 
=== Printing ===
  
{{Tip|Use the [[CUPS]] web interface for faster configuration.}}
+
{{Tip|Use the [[CUPS]] web interface for faster configuration. Printers configured in this way can be used in KDE applications. }}
  
The printers are configured in this way can be found in applications KDE.  
+
You can also configure printers in ''System Settings > Printer Configuration''. To use this method, you must first install {{Pkg|print-manager}} and {{Pkg|cups}}.
  
You can also choose the printer configuration through ''System Settings > Printer Configuration''. To use this method, you must first install the packages {{Pkg|kdeutils-print-manager}} and {{Pkg|cups}}.
+
The {{ic|avahi-daemon.service}} and {{ic|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'
You need to start the {{ic|avahi-daemon}} and {{ic|cupsd}} daemons first or you will get the following error:  
+
  with keyword 'system-config- printer-kde/system-config-printer-kde.py'
  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.
 
  The factory does not support creating components of the specified type.
  
If you are getting the following error, you need to give the user rights to manage printers:
+
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'
 
  There was an error during CUPS operation: 'cups-authorization-canceled'
  
For CUPS, this is set in {{ic|/etc/cups/cupsd.conf}}.
+
For CUPS, this is set in {{ic|/etc/cups/cups-files.conf}}.
 +
 
 +
Adding {{ic|lpadmin}} to {{ic|/etc/group}} and then to the {{ic|SystemGroup}} directive in {{ic|/etc/cups/cups-files.conf}} allows anyone in the {{ic|lpadmin}} group to configure printers.  Do ''not'' add the {{ic|lp}} group to the {{ic|SystemGroup}} directive, or printing will fail.
 +
 
 +
# groupadd -g107 lpadmin
 +
 
 +
{{hc|/etc/cups/cups-files.conf|# Administrator user group...
 +
SystemGroup sys root lpadmin}}
  
Adding {{ic|lp}} to {{ic|SystemGroup}} allows anyone who can print to configure printers. You can, of course, add another group instead of {{ic|lp}}.
+
{{Tip|Read [[CUPS#Configuration]] to get more details on how to configure CUPS.}}
{{hc|/etc/cups/cupsd.conf|# Administrator user group...
+
SystemGroup sys root lp}}
+
  
 
=== Samba/Windows support ===
 
=== Samba/Windows support ===
  
If you want to have access to Windows services install [[Samba]] (package {{Pkg|samba}}).
+
If you want to have access to Windows services, install [[Samba]] (package {{Pkg|samba}}).
  
You may then configure your Samba shares through:
+
The Dolphin share functionality requires the package {{Pkg|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.
 
+
System Settings > Sharing > Samba
+
  
 
=== KDE Desktop activities ===
 
=== KDE Desktop activities ===
  
KDE Desktop Activities are Plasma based "virtual desktop"-like set of Plasma Widgets where you can independently configure widgets as if you had more than one screens/desktops.  
+
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".
+
On your desktop, click the Cashew Plasmoid and, on the pop-up window, press "Activities".
  
A plasma bar will appear at the bottom of the screen which presents you the current Plasma Desktop Activities which exist. You can then navigate between them by pressing their correspondent icon.
+
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 ===
 
=== 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).
+
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).
  
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 uses {{ic|ondemand}} as default CPU Frequency governor from kernel vesion 3.3. So nothing need to be done for most cases. For detaild fine tune of the governor, please see [[CPU Frequency Scaling]].
+
{{Accuracy|Regarding the note below, it might be that the problem is the logind setting ''LidSwitchIgnoreInhibited'' which defaults to ''yes''. [https://bbs.archlinux.org/viewtopic.php?pid&#61;1649022#p1649022]}}
  
=== Monitoring changes on local files and directories ===
+
{{Note|Powerdevil may not [[Power management#Power managers|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]].}}
  
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 {{AUR|kdirwatch}} from AUR which is a GUI frontend for kdirwatch.
+
=== Autostarting applications ===
  
== System administration ==
+
Plasma can autostart applications and run scripts on startup and shutdown. To autostart an application, start {{ic|systemsettings}} and navigate to ''Startup and Shutdown'' -> ''Autostart'' and add the program or shell script of your choice. For applications, a {{ic|.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.
 +
}}
  
=== Set keyboard ===
+
Place [[Desktop entries]] (i.e. {{ic|.desktop}} files) here:
 +
;{{ic|~/.config/autostart}}:for starting applications at login.
  
Navigate to:
+
Place or symlink shell scripts in one of the following directories:
System Settings > Hardware > Input Devices > Keyboard
+
;{{ic|~/.config/plasma-workspace/env}}:for executing scripts at login before launching Plasma.
There you may choose your keyboard model at first.
+
;{{ic|~/.config/autostart-scripts}}:for executing scripts at login.
 +
;{{ic|~/.config/plasma-workspace/shutdown}}:for executing scripts on shutdown.
  
In the "'''Layouts'''" tab, you choose the languages you may want to use by pressing the "Add Layout" button and therefore the variant and the language.
+
== System administration ==
  
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 ===
  
=== 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.
  
Navigate to:
+
=== KCM ===
System Settings > Input Devices > Keyboard > Advanced (tab) > "Key Sequence to kill the X server" submenu
+
and tick the checkbox.
+
  
=== Useful KCM ===
+
KCM stands for '''KC'''onfig '''M'''odule. KCMs can help you configure your system by providing interfaces in System Settings, or through the command line with ''kcmshell5''.
  
KCM means KConfig Module. This modules help you to configure you system providing a interface on System Settings.
+
'''Configuration for look and feel of GTK applications.'''
 
+
'''Configuration for look&feel of your GTK apps.'''
+
 
* {{Pkg|kde-gtk-config}}
 
* {{Pkg|kde-gtk-config}}
* {{AUR|kcm-gtk}}
+
* {{AUR|kcm-gtk}}{{Broken package link|{{aur-mirror|kcm-gtk}}}}
 
* {{AUR|kcm-qt-graphicssystem}}
 
* {{AUR|kcm-qt-graphicssystem}}
  
'''Configuration for the GRUB2 bootloader.'''
+
'''Configuration for the GRUB bootloader.'''
* {{AUR|grub2-editor}}
+
* {{AUR|grub2-editor}}{{Broken package link|{{aur-mirror|grub2-editor}}}}
* {{AUR|kcm-grub2}}
+
 
+
'''Configuration for Synaptics driver based touchpads.'''
+
* {{AUR|synaptiks}}
+
* {{AUR|kcm_touchpad}}
+
  
'''Configuration for [[Firewalls#ufw|UFW]]'''
+
'''Configuration for the [[Uncomplicated Firewall]] (UFW)'''
 
* {{AUR|kcm-ufw}}
 
* {{AUR|kcm-ufw}}
  
Line 262: Line 271:
 
* {{AUR|kcm-polkit-kde-git}}
 
* {{AUR|kcm-polkit-kde-git}}
  
'''Configuration for Wacom Tablet'''
+
'''Configuration for Wacom tablets'''
 
* {{AUR|kcm-wacomtablet}}
 
* {{AUR|kcm-wacomtablet}}
  
More KCM can be found [http://kde-apps.org/index.php?xcontentmode=273 here].
+
'''Configuration for systemd'''
 +
* {{Pkg|systemd-kcm}}
  
== Desktop search and semantic desktop ==
+
More KCMs can be found at [http://kde-apps.org/index.php?xcontentmode=273 kde-apps.org].
  
According to [[wikipedia:Semantic_desktop|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)."''
+
== Desktop search ==
  
The KDE implementation of this concept is tied to (as of KDE 4.10) two major pieces of software, Akonadi and Nepomuk. 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.
+
KDE implements desktop search with a software called Baloo, a file indexing and searching solution.
  
Soprano and Virtuoso are two dependencies of the Nepomuk Semantic Desktop. Since the relationship between the two major components and their dependencies is not very clear, the following sections try to shed some light on their inner workings.
+
=== Baloo ===
  
=== Virtuoso and Soprano ===
+
==== Using and configuring Baloo ====
  
The database used to store all the metadata used by the semantic desktop is a ''[[wikipedia:Resource_Description_Framework|Resource Description Framework (RDF)]]'' database called Virtuoso. Internally, Virtuoso may be looked as a relational database. (A [[wikipedia:Relational_model|relational database]] is different from a traditional single-table based database in the sense that it uses multiple tables related by a single key in order to store data.) It is currently controlled by OpenLink, and is available under commercial and an open source license.
+
In order to search using Baloo on the KDE Plasma Desktop, press {{ic|ALT+F2}} and type in your query. Within Dolphin press {{ic|CTRL+F}}.
  
From the [http://techbase.kde.org/Projects/Nepomuk/ComponentOverview#Soprano KDE Techbase], ''Soprano is a Qt abstraction over databases. It provides a friendly Qt-based API for accessing different RDF stores. It currently supports 3 database backends - Sesame, Redland and Virtuoso. The KDE Semantic Stack only works with Virtuoso. Soprano also provides additional features such as serializing, parsing RDF data, and a client server architecture that is heavily used in Nepomuk.''
+
By default the Desktop Search KCM exposes only two options: A panel to blacklist folders and a way to disable it with one click.
  
=== Nepomuk ===
+
Alternatively you can edit your {{ic|~/.config/baloofilerc}} file ([https://community.kde.org/Baloo/Configuration info]). Additionally the {{ic|balooctl}} process can also be used. In order to disable Baloo run {{ic|balooctl disable}}.
  
Nepomuk stands for "Networked Environment for Personal, Ontology-based Management of Unified Knowledge". It is what allows all the tagging and labeling of files as well to take place and also serves as the way to actually read the Virtuoso databases. It provides an API to application developers which allows them to read the data collected by it.
+
Once you added additional folders to the blacklist or disabled Baloo entirely, a process named {{ic|baloo_file_cleaner}} removes all unneeded index files automatically. They are stored under {{ic|~/.local/share/baloo/}}.
  
In the past, the "Strigi" service was used to collect data about the various files present on the system. However, due to many reasons, the most important of them being CPU and Memory usage, Strigi was replaced by a homegrown indexing service which is integrated with Nepomuk-Core.
+
More advanced configuration options are available through {{AUR|kcm_baloo_advanced}}{{Broken package link|{{aur-mirror|kcm_baloo_advanced}}}}.
  
For further information about Nepomuk, [http://techbase.kde.org/Projects/Nepomuk/ComponentOverview#Nepomuk_Components this page] is a good resource. However, some of the information in the previous page has been rendered outdated according to [http://vhanda.in/blog/2012/11/nepomuk-without-strigi/ this blog post].
+
==== How do I index a removable device? ====
  
==== Using and configuring Nepomuk ====
+
By default every removable device is blacklisted. You just have to remove your device from the blacklist in the KCM panel.
  
In order to search using Nepouk on the KDE desktop, press {{ic|ALT+F2}} and type in your query. Nepomuk is enabled by default. It can be turned on and off in:
+
=== Web browsers ===
System Settings > Desktop Search
+
==== Konqueror and Rekonq ====
 +
Konqueror supports two rendering engines – KHTML and QtWebKit (via the {{Pkg|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 [https://www.mail-archive.com/development@qt-project.org/msg18866.html 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 [http://qtwebkit.blogspot.com/2016/08/qtwebkit-im-back.html community continuation] of QtWebKit.
  
Nepomuk has to keep track of a lot of files. It is for this reason that it is recommended to increase the number of files that can be watched with inotify. In order to do that this command is a good option.
+
A successor named Fiber is currently in development, which will use Chromium's engine.
# sysctl fs.inotify.max_user_watches=524288
+
  
To do it persistently:
+
==== Chromium and Chrome ====
# echo "fs.inotify.max_user_watches = 524288" >> /etc/sysctl.d/99-inotify.conf
+
[[Chromium]] and its proprietary variant Google Chrome have limited Plasma integration. [[KDE_Wallet#KDE_Wallet_for_Chrome_and_Chromium|They can use KWallet]] and KDE Open/Save windows.
  
Restart Nepomuk to see the changes.
+
==== Firefox ====
 +
Firefox can be configured to better integrate with Plasma. See [[Firefox#KDE_integration|Firefox KDE integration]] for details.
  
==== KDE without Nepomuk ====
+
==== Qupzilla ====
 +
Qupzilla ({{Pkg|qupzilla}}) is a Qt web browser with Plasma integration features. Qupzilla 2.0 uses Qt WebEngine instead of WebKit. The WebKit variant is also available as {{aur|qupzilla-qtwebkit-git}}.
  
If you wish to run KDE without Nepomuk, there exists a {{AUR|nepomuk-core-fake}} package in the AUR.
+
== PIM ==
{{Warning|As of now, Dolphin depends on {{Pkg|nepomuk-widgets}} and hence will break if used with the fake Nepomuk package.}}
+
 
 +
KDE offers its own stack for personal information management. This includes emails, contacts, calendar, etc.
  
 
=== Akonadi ===
 
=== 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. It interfaces with the Nepomuk libraries to provide searching capabilities.
+
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).
 
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).
  
For more information on Akonadi and its relationship with Nepomuk, see [http://blogs.kde.org/node/4503] and [http://cmollekopf.wordpress.com/2013/02/13/kontact-nepomuk-integration-why-data-from-akonadi-is-indexed-in-nepomuk/].
+
==== Installation ====
 +
 
 +
Install {{Pkg|akonadi}}. For additional addons, install {{Pkg|kdepim-addons}}. For EWS support, install {{AUR|akonadi-ews-git}}.
 +
 
 +
{{Note|If you wish to use a database engine other than MariaDB/MySQL, then when installing the {{Pkg|akonadi}} package, use the following command to skip installing the {{Pkg|mariadb}} dependencies:
 +
<pre>
 +
pacman -S akonadi --assume-installed mariadb
 +
</pre>}}
  
 
==== Disabling Akonadi ====
 
==== Disabling Akonadi ====
Line 321: Line 341:
 
==== Database configuration ====
 
==== Database configuration ====
  
Start {{ic|akonaditray}} from package {{Pkg|kdepim-runtime}}. Right click on it and select '''configure'''. In the Akonadi server configure tab, you can:
+
===== MariaDB/MySQL =====
* Configuring Akonadi to use MySQL/MariaDB Server
+
* Configuring Akonadi to use PostgreSQL Server
+
* Configuring Akonadi to use SQLite
+
  
==== Running KDE without Akonadi ====
+
====== Using ZFS ======
  
The package {{AUR|akonadi-fake}} is a good option for those who wish to run KDE without Akonadi.
+
If your home directory is on a ZFS pool, you will need to create {{ic|~/.config/akonadi/mysql-local.conf}} with the following contents:
 +
 
 +
[mysqld]
 +
innodb_use_native_aio = 0
 +
 
 +
Otherwise you will get the [[MySQL#OS error 22 when running on ZFS|OS error 22]]
 +
 
 +
===== PostgreSQL =====
 +
 
 +
<ol>
 +
<li> Install and setup PostgreSQL (see [[PostgreSQL]])
 +
<ul><li> Enable the {{ic|postgresql}} [[systemd]] service: {{ic|systemctl enable postgresql.service}}.</li></ul></li>
 +
<li>Create the {{ic|~/.config/akonadi/akonadiserverrc}} file if it does not exist.</li>
 +
<li>Edit {{ic|~/.config/akonadi/akonadiserverrc}} file so that it has the following contents:
 +
<pre>
 +
[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
 +
</pre>
 +
{{Note|If your PostgreSQL database username, password, and port differ from {{ic|postgres}}, {{ic|}} (nothing), and {{ic|5432}}, then make sure you respectively change the configuration options, {{ic|1=User=}}, {{ic|1=Password=}}, and {{ic|1=Port=}}.}}</li>
 +
<li>Start Akonadi: {{ic|akonadictl start}}, and check its status: {{ic|akonadictl status}}.</li>
 +
</ol>
 +
 
 +
===== SQLite =====
 +
Edit {{ic|~/.config/akonadi/akonadiserverrc}} to match the configuration below:
 +
 
 +
[General]
 +
Driver=QSQLITE3
 +
 +
[QSQLITE3]
 +
Name=/home/username/.local/akonadi/akonadi.db
  
 
== Phonon ==
 
== Phonon ==
  
=== What is Phonon? ===
+
From [[Wikipedia:Phonon (software)|Wikipedia]]:
  
From [[Wikipedia:Phonon|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 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 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).
 
'''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? ===
 
=== 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 ({{Pkg|phonon-qt4-gstreamer}}, {{Pkg|phonon-qt5-gstreamer}} – {{Pkg|phonon-qt4-vlc}}, {{Pkg|phonon-qt5-vlc}}).
  
You can choose between various backends, like GStreamer ({{Pkg|phonon-gstreamer}}) or VLC ({{Pkg|phonon-vlc}}) available in the [[official repositories]] and MPlayer ({{AUR|phonon-mplayer-git}}), ({{AUR|phonon-quicktime-git}}) and ({{AUR|phonon-avkode-git}}) available on [[AUR]]. Most users will want GStreamer or VLC which have the best upstream support. Note that multiple backends can be installed at once and you can switch between them via ''System Settings > Multimedia > Phonon > Backend''.
+
[https://www.phoronix.com/scan.php?page=news_item&px=MTUwNDM 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 [http://community.kde.org/Phonon/FeatureMatrix features set].
  
{{Note|According to the [http://userbase.kde.org/Phonon#Backend_libraries KDE UserBase], Phonon-MPlayer is currently unmaintained}}
+
In the past other backends were developed as well but are no longer maintained and their AUR packages have been deleted.
  
According to [http://lists.kde.org/?l=kde-multimedia&m=137994906723790&w=2 this mail in the KDE-Multimedia mailing list], users should prefer VLC over GStreamer.
+
{{Note|1=<br>
 +
* 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 [https://forum.kde.org/viewtopic.php?f=250&t=126476&p=335080 KDE forums], the VLC backend lacks support for [[wikipedia:ReplayGain|ReplayGain]].}}
 +
{{Note|1=<br>
 +
* 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 [https://forum.kde.org/viewtopic.php?f=289&t=135956])
 +
* A possible fix is to run
 +
{{bc|# /usr/lib/vlc/vlc-cache-gen -f /usr/lib/vlc/plugins}}
 +
}}
  
 
== Useful applications ==
 
== Useful applications ==
Line 354: Line 419:
 
=== Yakuake ===
 
=== Yakuake ===
  
[http://yakuake.kde.org/ This] application provides a Quake-like terminal emulator, which is toggled visible using the F12 key. It also has support for multiple tabs. Yakuake can be installed by package {{Pkg|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 {{Pkg|yakuake}}.
  
=== KDE Telepathy ===
+
=== KDE Telepathy ===
  
[http://community.kde.org/KTp 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.
+
[http://community.kde.org/KTp 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 {{Grp|telepathy}} group.
+
To install all Telepathy protocols, install the {{Grp|telepathy}} group.
To use the KDE Telepathy client, install the {{Pkg|kde-telepathy-meta}} package that includes all the packages contained in the {{Grp|kde-telepathy}} group .
+
To use the KDE Telepathy client, install the {{Pkg|telepathy-kde-meta}} package that includes all the packages contained in the {{Grp|telepathy-kde}} group.
  
== Tips and tricks ==
+
==== Use Telegram with KDE Telepathy ====
  
=== Configure KWin to use OpenGL ES ===
+
Telegram protocol is available using {{pkg|telepathy-haze}}, installing {{aur|telegram-purple}} or {{aur|telegram-purple-git}} and {{aur|telepathy-morse-git}}. 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 ({{ic|~/.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.
  
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 {{ic|kwin_gles --replace}} in Konsole.
+
== Tips and tricks ==
If you want to make this change permanent you have to create a script in {{ic|$(kde4-config --localprefix)/env/}} which exports {{ic|1=KDEWM=kwin_gles}}.
+
  
=== Enabling audio thumbnails under Konqueror/Dolphin file managers ===
+
=== Using an alternative window manager ===
  
For thumbnails of audio files in Konqueror and Dolphin install {{AUR|audiothumbs}} from AUR.
+
{{Style|
 +
* The 'note' is far too large.
 +
* No need to explain why somebody wants to change the window manager. The reader probably already has reasons.
 +
* Issues should be mentioned in Troubleshooting or Known issues, not here.}}
  
=== Enabling video thumbnails under Konqueror/Dolphin file managers ===
+
{{Out of date|According to the note, these instructions don't work anymore. It would be better to re-write this section completely.}}
  
For thumbnails of videos in konqueror and dolphin install {{Pkg|kdemultimedia-mplayerthumbs}} or {{Pkg|kdemultimedia-ffmpegthumbs}}.
+
There may be reasons you want to use another window manager than KWin, for example to work around the DRI bug that causes [[PRIME#Black_screen_with_GL-based_compositors|black screen with PRIME]].
  
=== Speed up application startup ===
+
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.
  
User Rob wrote on his blog this "[http://kdemonkey.blogspot.nl/2008/04/magic-trick.html magic trick]" to improve applications start up by 50-150ms.
+
{{Note|1=
To enable it, create this folder in your home:
+
The component chooser settings in plasma 5 doesn't allow changing the window manager anymore. [https://github.com/KDE/plasma-desktop/commit/2f83a4434a888cd17b03af1f9925cbb054256ade]
$ mkdir -p ~/.compose-cache/
+
In order to change the window manager used you need to set the {{ic|KDEWM}} [[environment variable]] before KDE startup. [https://wiki.haskell.org/Xmonad/Using_xmonad_in_KDE] To do that you can create a script called {{ic|set_window_manager.sh}} in {{ic|~/.config/plasma-workspace/env}} and export the {{ic|KDEWM}} variable there. For example to use the i3 window manager :
  
''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 {{ic|/usr/share/X11/locale/<your locale>/Compose}}. This Compose 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 {{ic|~/.compose-cache}} if the directory already exists.''
+
{{hc|~/.config/plasma-workspace/env/set_window_manager.sh|2=
 +
export KDEWM=/usr/bin/i3
 +
}}
  
=== Hiding partitions ===
+
And then make it executable :
  
In Dolphin, it is as simple as right-clicking on the partition in the {{ic|Places}} sidebar and selecting {{ic|Hide <partition>}}. Otherwise...
+
{{bc|$ chmod +x ~/.config/plasma-workspace/env/set_window_manager.sh}}
  
If you wish to prevent your internal partitions from appearing in your file manager, you can create an udev rule, e.g:
 
 
{{hc|/etc/udev/rules.d/10-local.rules|2=
 
KERNEL=="sda[0-9]", ENV{UDISKS_IGNORE}="1"
 
 
}}
 
}}
  
The same thing for a certain partition:
+
==== KDE/Openbox session ====
  
KERNEL=="sda1", ENV{UDISKS_IGNORE}="1"
+
The {{Pkg|openbox}} package provides a session for using KDE with [[Openbox]]. To make use of this session, select ''KDE/Openbox'' from the [[display manager]] menu.
KERNEL=="sda2", ENV{UDISKS_IGNORE}="1"
+
  
=== Konqueror tips ===
+
For those starting the session manually, add the following line to your {{ic|.xinitrc}} file:
 +
exec openbox-kde-session
  
==== Disabling smart key tooltips (browser) ====
+
==== Compiz custom ====
  
To disable those smart key tooltips in Konqueror (pressing {{ic|Ctrl}} on a web page), use ''Settings > Configure Konqueror > Web Browsing'' and uncheck ''Enable Access Key activation with Ctrl key'' o
+
If you need to run Compiz with custom options and switches select ''Compiz custom'' and then create a script called {{ic|compiz-kde-launcher}} and add to it the commands you wish to use to start Compiz. See the example below:
  
{{hc|~/.kde4/share/config/konquerorrc|2=
+
{{hc|/usr/local/bin/compiz-kde-launcher|<nowiki>
[Access Keys]
+
#!/bin/bash
Enabled=false
+
LIBGL_ALWAYS_INDIRECT=1
}}
+
compiz --replace &
 +
wait
 +
</nowiki>}}
  
==== Using WebKit ====
+
Then make it executable:
 +
$ chmod +x /usr/local/bin/compiz-kde-launcher
  
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.
+
==== Re-enabling compositing effects ====
  
It is possible to use WebKit in Konqueror instead of KHTML. First install the {{Pkg|kwebkitpart}} package.
+
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]].
  
Then, after executing Konqueror, navigate to ''Settings > Configure Konqueror > General > Default web browser engine'' and set it as {{ic|WebKit}}.
+
=== Integrate Android ===
  
=== Firefox integration ===
+
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.
  
See [[Firefox#KDE_integration|Firefox]].
+
You will need to install KDE Connect both on your computer and on your Android. For PC side, install {{Pkg|kdeconnect}} package. For Android side, install {{ic|KDE Connect}} from [https://play.google.com/store/apps/details?id=org.kde.kdeconnect_tp Google Play] or from [https://f-droid.org/repository/browse/?fdid=org.kde.kdeconnect_tp F-Droid].
  
=== Setting the screensaver background to the same as the current one ===
+
=== Configure KWin to use OpenGL ES ===
 +
Set environment variable {{ic|KWIN_COMPOSE}} to 'O2ES' to force the OpenGL ES backend. Please note that OpenGL ES is not supported by all drivers.
  
For the beauty of a system you can placed your current background for your Kscreensaver instead of the default.
+
=== Speed up application startup ===
  
KDE by default is [https://bugs.kde.org/show_bug.cgi?id=312828 not able] to change this for the 'Simple Lock', but a [http://lists.opensuse.org/opensuse-kde/2013-02/msg00082.html workaround] [http://forum.kde.org/viewtopic.php?f=66&t=110039 exists]:
+
User Rob described a "[http://kdemonkey.blogspot.nl/2008/04/magic-trick.html 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
  
{{hc|/usr/share/apps/ksmserver/screenlocker/org.kde.passworddialog/contents/ui/|
+
{{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 {{ic|/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 {{ic|~/.compose-cache}} if the directory already exists.}}
[...]
+
        ''#source: theme.wallpaperPathForSize(parent.width, parent.height)''
+
        source: "1920x1080.jpg"
+
[...]
+
}}
+
  
Now you copy your current background image to {{ic|"1920x1080.jpg"}}.
+
=== Configuring monitor resolution / multiple monitors ===
  
Note you have to redo this for each update of the package {{Pkg|kdebase-workspace}}.
+
To enable display resolution management and multiple monitors in Plasma 5, install {{Pkg|kscreen}}. This adds the additional options to System Settings/Display and Monitor.
  
=== Setting lockscreen wallpaper to arbitrary image ===
+
=== Open application launcher with Super key (Windows key) ===
  
Copy an existing wallpaper profile as a template:
+
{{Note|Since plasma 5.8 release, this workaround is no longer needed. Pressing {{Ic|Super}} key launches kickstart application launcher as if {{Ic|Alt+F1}} keys are pressed.}}
$ cp -r /usr/share/wallpapers/''ExistingWallpaper'' ~/.kde4/share/wallpapers/
+
  
Change the name of the directory, and edit {{ic|metadata.desktop}}:
+
Install and start {{AUR|ksuperkey}}. Now assign {{ic|Alt+F1}} as hot key. The {{ic|Super}} key will now open the application launcher. You can add ksuperkey to the autostart if you don't want to start it manually.
  
{{hc|~/.kde4/share/wallpapers/''MyWallpaper''/metadata.desktop|2=
+
=== Enabling touchpad tap to click on plasma wayland session ===
[Desktop Entry]
+
Name=MyWallpaper
+
X-KDE-PluginInfo-Name=MyWallpaper
+
}}
+
  
Remove existing images ({{ic|contents/screenshot.png}} and {{ic|images/*}}):
+
Currently, it's not possible to [https://bugs.kde.org/show_bug.cgi?id=363109 configure tap to click via systemsettings] on plasma wayland session. [https://bugs.kde.org/show_bug.cgi?id=366605#c4 A workaround] is provided to configure tap to click on plasma wayland session via dbus.
$ rm ~/.kde4/share/wallpapers/MyWallpaper/contents/screenshot.png
+
$ rm ~/.kde4/share/wallpapers/MyWallpaper/contents/images/*
+
  
Copy new image in:
+
Here are simplified steps to get touchpad tap to click enabled on plasma wayland session.
$ cp ''path/to/MyWallpaper.png'' MyWallpaper/contents/images/1920x1080.png
+
  
Edit the metadata profile for the current theme:
+
Identify on which libinput recognizes the touchpad device.
{{hc|~/.kde4/share/apps/desktoptheme/MyTheme/metadata.desktop|2=
+
{{Hc|# libinput-list-devices|
[Wallpaper]
+
Device:          ETPS/2 Elantech Touchpad
defaultWallpaperTheme=NewWallpaper
+
Kernel:          /dev/input/event14
defaultFileSuffix=.png
+
Group:            7
defaultWidth=1920
+
Seat:            seat0, default
defaultHeight=1080
+
Size:            78.28x38.78mm
 +
Capabilities:    pointer
 +
Tap-to-click:    disabled
 +
Tap-and-drag:    enabled
 +
Tap drag lock:    disabled
 +
Left-handed:      disabled
 +
Nat.scrolling:    disabled
 +
Middle emulation: n/a
 +
Calibration:      n/a
 +
Scroll methods:  *two-finger edge
 +
Click methods:    none
 +
Disable-w-typing: enabled
 +
Accel profiles:  none
 +
Rotation:        n/a
 
}}
 
}}
  
Lock the screen to check that it worked.
+
In this case, the touchpad is identified as {{Ic|event14}}
  
{{Note|This method allows you to set the lockscreen background, without changing any system-wide settings. For the change to be system-wide, create the new wallpaper profile in {{ic|/usr/share/wallpapers}}.}}
+
Check whether KDE Dbus recognizes the touchpad. Replace {{Ic|event14}} with the touchpad identifier found from {{Ic|libinput-list-devices}}.
  
== Troubleshooting ==
+
{{Hc|$ qdbus org.kde.KWin.InputDevice /org/kde/KWin/InputDevice/event14 org.freedesktop.DBus.Properties.Get org.kde.KWin.InputDevice name|
 +
ETPS/2 Elantech Touchpad
 +
}}
  
=== Configuration related ===
+
Check the current value of {{Ic|tapToClick}}.
 +
{{Hc|$ qdbus org.kde.KWin.InputDevice /org/kde/KWin/InputDevice/event14 org.freedesktop.DBus.Properties.Get org.kde.KWin.InputDevice tapToClick|
 +
false
 +
}}
  
Many issues in KDE are related to configuration. One way to resolve upgrade problems is to start over with a fresh KDE config.  
+
Now set the {{Ic|tapToClick}} value to {{Ic|true}}.
  
==== Reset all KDE configuration ====
+
$ qdbus org.kde.KWin.InputDevice /org/kde/KWin/InputDevice/event14 org.freedesktop.DBus.Properties.Set org.kde.KWin.InputDevice tapToClick true
  
To test whether your config is the problem try quitting your KDE session by logging out and, in a tty, run
+
Confirm that {{Ic|tapToClick}} value is {{Ic|true}}.
$ mv ~/.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.
+
{{Hc|$ qdbus org.kde.KWin.InputDevice /org/kde/KWin/InputDevice/event14 org.freedesktop.DBus.Properties.Get org.kde.KWin.InputDevice tapToClick|
 +
true
 +
}}
  
If the problem is resolved, you will have a fresh, problem-free {{ic|~/.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.
+
After these steps performed, tap to click should work as expected.
  
==== File Indexer Service not working even after enabling everything properly ====
+
== Troubleshooting ==
  
This is caused due to a corrupted Nepomuk database. It may be remedied by moving the database or deleting it all together. Log out of KDE and issue this command from a virtual console:
+
=== Configuration related ===
 
+
$ mv ~/.kde4/share/apps/nepomuk ~/.kde4/share/apps/nepomuk_backup
+
  
to move your existing (and corrupt) nepomuk database. It will be recreated when you log in again.
+
Many problems in KDE are related to configuration.
  
 
==== Plasma desktop behaves strangely ====
 
==== Plasma desktop behaves strangely ====
  
Plasma issues 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.  
+
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 issue (detailing steps to reproduce, etc).
+
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:
+
If you cannot find the problem, but you do not want ''all'' the settings to be lost, navigate to {{ic|~/.config}}:
  
  $ rm -r ~/.kde4/share/config/plasma*
+
  $ for j in plasma*; do mv -- "$j" "${j%}.bak"; done
  
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 ought to create a backup folder and copy all the plasma related configs in it.
+
This command will '''rename all Plasma related configs''' to *.bak (e.g. {{ic|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 ====
 
==== Clean cache to resolve upgrade problems ====
  
The [https://bbs.archlinux.org/viewtopic.php?id=135301 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.
+
The [https://bbs.archlinux.org/viewtopic.php?id=135301 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:
 
Rebuild your cache with the following commands:
Line 523: Line 606:
 
=== Clean akonadi configuration to fix KMail ===
 
=== Clean akonadi configuration to fix KMail ===
  
First, make sure that KMail is not running. Then backup configuration:
+
First, make sure that KMail is not running. Then backup configuration:
 
  $ mv ~/.local/share/akonadi ~/.local/share/akonadi-old
 
  $ mv ~/.local/share/akonadi ~/.local/share/akonadi-old
 
  $ mv ~/.config/akonadi ~/.config/akonadi-old
 
  $ mv ~/.config/akonadi ~/.config/akonadi-old
Line 530: Line 613:
 
{{ic|~/.config/akonadi}} - the copies you made ensure that you can back-track if necessary.
 
{{ic|~/.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.
+
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 ===
+
=== Fix empty IMAP inbox ===
  
This command prints out a wonderful summary of the current state of KWin including used options, used compositing backend and relevant OpenGL driver capabilities. [http://blog.martin-graesslin.com/blog/2012/03/on-getting-help-for-kwin-and-helping-kwin/ See more at Martin's blog]
+
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 [https://bugs.kde.org/show_bug.cgi?id=284172]. To solve this problem simply disable the server side subscribition in the kmail account settings.
  
$ qdbus org.kde.kwin /KWin supportInformation
+
=== Getting current state of KWin for support and debug purposes ===
  
=== KDE4 does not finish loading ===
+
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 [http://blog.martin-graesslin.com/blog/2012/03/on-getting-help-for-kwin-and-helping-kwin/ Martin's blog].
  
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.
+
$ qdbus org.kde.KWin /KWin supportInformation
 
+
A solution for Nvidia users:
+
 
+
{{hc|~/.kde4/share/config/kwinrc|2=
+
[Compositing]
+
Enabled=false
+
}}
+
For more information look at this [https://bbs.archlinux.org/viewtopic.php?pid=932598 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 ===
 
=== 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 {{ic|startkde}}), then as of KDE 4.6.1 you will need to tell Qt how to find KDE's styles (Oxygen, QtCurve etc.)
+
If you are using KDE or Qt programs but not in a full Plasma session (specifically, you did not run {{ic|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 {{ic|QT_PLUGIN_PATH}}. E.g. put:
 
You just need to set the environment variable {{ic|QT_PLUGIN_PATH}}. E.g. put:
Line 560: Line 633:
 
  export QT_PLUGIN_PATH=$HOME/.kde4/lib/kde4/plugins/:/usr/lib/kde4/plugins/
 
  export QT_PLUGIN_PATH=$HOME/.kde4/lib/kde4/plugins/:/usr/lib/kde4/plugins/
  
into your {{ic|/etc/profile}} (or {{ic|~/.profile}} if you do not have root access). qtconfig should then be able to find your KDE styles and everything should look nice again!
+
into your {{ic|/etc/profile}} (or {{ic|~/.profile}} if you do not have root access). {{ic|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:
 
Alternatively, you can symlink the Qt styles directory to the KDE styles one:
  # ln -s /usr/lib/kde4/plugins/styles/ /usr/lib/qt/plugins/styles
+
  # ln -s /usr/lib/kde4/plugins/styles/ /usr/lib/qt4/pluginlib32-libdbusmenu-glibs/styles
  
 
Under Gnome you can try to install the package libgnomeui.
 
Under Gnome you can try to install the package libgnomeui.
  
=== Graphical related issues ===
+
=== 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 [https://bugs.kde.org/show_bug.cgi?id=348753 bug in Plasma] when using the Nvidia-304xx driver. Rather than disabling compositing, create a file {{ic|kwin.sh}} in {{ic|~/.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 [https://bugzilla.redhat.com/show_bug.cgi?id=1259475 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 ====
 
==== Low 2D desktop performance (or) artifacts appear when on 2D ====
Line 577: Line 667:
  
 
===== The Raster engine workaround =====
 
===== The Raster engine workaround =====
 +
{{Accuracy|xrender is not default in plasma 5. XRender should not be recommended anymore.}}
 +
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.
  
If this does not solve your problems, maybe your driver does 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 {{ic|-graphicssystem raster}} command line. This rendering engine can be set as the default one by recompiling Qt with the same as configure option, {{ic|-graphicssystem raster}}.
 
+
You can change the painter engine to software based only by invoking the application with the {{ic|-graphicssystem raster}} command line. This rendering engine can be set as the default one by recompiling Qt with the same as configure option, {{ic|-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.
 
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 {{ic|1=QT_GRAPHICSSYSTEM=raster}}, or {{ic|opengl}}, or {{ic|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).
+
Since Qt 4.7+, recompiling Qt is not needed. Simply export {{ic|1=QT_GRAPHICSSYSTEM=raster}}, or {{ic|opengl}}, or {{ic|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 {{AUR|kcm-qt-graphicssystem}} from AUR and configure this particular Qt setting through:
+
'''The best and automatic way to do that''' is to install {{AUR|kcm-qt-graphicssystem}} from AUR and configure this particular Qt setting through ''System Settings > Qt Graphics System''.
  
System Settings > Qt Graphics System
+
For more information, consult this [http://apachelog.wordpress.com/2010/09/05/qt-graphics-system-kcm/ KDE Developer blog entry] and/or this [https://web.archive.org/web/20100430183745/http://labs.trolltech.com/blogs/2009/12/18/qt-graphics-and-performance-the-raster-engine Qt Developer blog entry].
 
+
For more information, consult this [http://apachelog.wordpress.com/2010/09/05/qt-graphics-system-kcm/ KDE Developer blog entry] and/or this [http://labs.trolltech.com/blogs/2009/12/18/qt-graphics-and-performance-the-raster-engine/ Qt Developer blog entry].
+
  
 
==== Low 3D desktop performance====
 
==== 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:
+
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 {{ic|Alt+Shift+F12}}.
System Settings > Desktop Effects
+
or you can toggle desktop effects with {{ic|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 ({{ic|fglrx}}). This driver is known for having issues with 3D acceleration. Visit [[ATI|the ATi Wiki page]] for more troubleshooting.}}
+
{{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 ====
 
==== Desktop compositing is disabled on my system with a modern Nvidia GPU ====
Line 608: Line 694:
 
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.
 
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 ====
+
==== Display settings lost on reboot (multiple monitors) ====
 
+
There is a [https://bugs.kde.org/show_bug.cgi?id=346961 bug] in kscreen that makes it forget dual screen settings after reboot with certain displays.
{{Note|With the recent update of KDE to 4.11, several new Vsync options have been added, which may help with screen tearing.}}
+
A possible workaround is to uninstall {{Pkg|kscreen}} and specify your screen setup in a xorg.conf file instead:
 
+
* See [[Multihead#RandR]] for using the [[Wikipedia:RandR|RandR]] [[Wikipedia:X Window System|X Window System]] extension.
KWin may suffer from screen tearing while desktop effects are enabled. Uncheck the VSync option under ''System Settings > Desktop Effects > Advanced > Use Vsync''.
+
* For Nouveau you can use the template at [[Nouveau#Dual Head]], just edit it to suit your setup.
 
+
* For the proprietary nvidia driver you can use the [[NVIDIA#Using_NVIDIA_Settings|nvidia-settings]] utility as root to write the config file.
For proprietary driver users, ensure that the driver's VSync option is enabled ({{ic|amdccle}} for [[Catalyst]] users, and nvidia-settings for [[NVIDIA]] users).
+
  
 
=== Sound problems under KDE ===
 
=== Sound problems under KDE ===
Line 627: Line 712:
 
  The audio playback device ''name_of_the_sound_device'' does not work.
 
  The audio playback device ''name_of_the_sound_device'' does not work.
 
  Falling back to default
 
  Falling back to default
Go to:
+
Go to ''System Settings > Multimedia > Phonon'' and set the device named {{ic|default}} above all the other devices in each box you see.
System Settings > Multimedia > Phonon
+
and set the device named {{ic|default}} above all the other devices in each box you see.
+
  
===== I cannot play MP3 files when using the GStreamer Phonon backend =====
+
===== MP3 files cannot be played when using the GStreamer Phonon backend =====
  
That can be solved by installing the GStreamer plugins (package group {{Grp|gstreamer0.10-plugins}}). If you still encounter problems, you can try changing the Phonon backend used by installing another such as {{Pkg|phonon-vlc}}.
+
This can be solved by installing the GStreamer libav plugin (package {{Pkg|gst-libav}}). If you still encounter problems, you can try changing the Phonon backend used by installing another such as {{Pkg|phonon-qt4-vlc}} or {{Pkg|phonon-qt5-vlc}}.
Then make sure the backend is preferred via:
+
Then, make sure the backend is preferred via ''System Settings > Multimedia > Phonon > Backend (tab)''.
  
System Settings > Multimedia > Phonon > Backend (tab)
+
=== Inotify folder watch limit ===
  
=== Konsole does not save commands' history ===
+
If you get the following error:
  
By default console commands' history is saved only when you type 'exit' in console. When you close Konsole with 'x' in the corner it does not happen.
+
KDE Baloo Filewatch service reached the inotify folder watch limit. File changes may be ignored.
To enable autosaving after every command execution:
+
  
{{hc|~/.bashrc|<nowiki>
+
Then you will need to increase the inotify folder watch limit:
shopt -s histappend
+
[[ "${PROMPT_COMMAND}" ]] && PROMPT_COMMAND="$PROMPT_COMMAND;history -a" || PROMPT_COMMAND="history -a"
+
</nowiki>}}
+
  
=== KDE password prompts display three bullets per char ===
+
# echo 10000 > /proc/sys/fs/inotify/max_user_watches
  
You can change it under ''System Settings > Account Details > Password & User Account'':
+
To make changes permanent, create {{ic|/etc/sysctl.d/90-inotify.conf}} with
* Show one bullet for each letter
+
* Show three bullets for each letter
+
* Show nothing
+
  
=== Nepomukserver process still autostart even with semantic desktop disabled ===
+
#increase inotify watch limit
 +
fs.inotify.max_user_watches = 10000
  
Go to ''System Settings > Startup and Shutdown > Service Manager > Startup Services'' and uncheck the Nepomuk Search Module.
+
=== Freezes when using Automount on a NFS volume  ===
  
=== Dolphin and File Dialogs are extremely slow to start everytime ===
+
Using [[Fstab#Automount with systemd]] on a [[NFS]] volume may cause freezes, see [https://bugs.kde.org/show_bug.cgi?id=354137 bug report upstream].
  
May be caused by the upower service. If the upower service is not needed on your system, it can be disabled:
+
=== Locale warning when installing packages in Konsole ===
  
# systemctl disable upower
+
  mandb: can't set the locale; make sure $lc_* and $lang are correct
# systemctl mask upower
+
  
Obviously this will not have any side effect on a desktop system.
+
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.
  
=== Default PDF viewer in GTK applications under KDE ===
+
=== Multi-monitor issues ===
  
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.
+
The current release of KDE Plasma has several issues with multi-monitor setups, which can make Plasma unusable. See [https://bugs.kde.org/show_bug.cgi?id=356225 KDE Bug 356225].
  
$ xdg-mime default kde4-okularApplication_pdf.desktop application/pdf
+
These bugs have been resolved in the upstream/git KDE Plasma builds, which can be installed from {{AUR|plasma-desktop-git}} or {{AUR|plasma-git-meta}} - bear in mind that all packages will conflict with current versions - it is recommended to [[remove]] them first.
 
+
If you are using a different PDF viewer application, or a different mime-type is misbehaving, you should change {{ic|kde4-okularApplication_pdf.desktop}} and {{ic|application/pdf}} respectively according to your needs.
+
 
+
For more information, consult [[Default Applications]] wiki page.
+
  
 
== Unstable releases ==
 
== Unstable releases ==
  
When KDE is reaching beta or RC milestone, KDE "unstable" packages are uploaded to the [kde-unstable] repo. They stay there until KDE is declared stable and passes to [extra].
+
See [[Official repositories#kde-unstable]]
 
+
You may add it with:
+
 
+
{{hc|/etc/pacman.conf|2=
+
[kde-unstable]
+
Include = /etc/pacman.d/mirrorlist
+
}}
+
 
+
# [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].
+
# To update from a previous KDE installation, run: {{ic|# pacman -Syu}} or {{ic|# pacman -S kde-unstable/kde}}
+
# If you do not have KDE installed, you might have difficulties to install it by using groups (limitation of pacman)
+
# '''Subscribe and read the [https://mailman.archlinux.org/pipermail/arch-dev-public/ arch-dev-public] mailing list'''
+
# Make sure [[#Distro_and_Upstream_bug_report|you make bug reports]] if you find any issues.
+
 
+
== Other KDE projects ==
+
 
+
=== 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 ([http://trinitydesktop.org/ 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.
+
 
+
{{Warning|KDE 3 is no longer maintained and supported by the KDE developers. The "Trinity KDE" is maintained by the Trinity project commmunity. Use KDE 3 on your own risk, regarding any bugs, performance issues or security risks.}}
+
 
+
== Bugs ==
+
 
+
It is preferrable that if you find a minor or serious bug, you should visit [https://bugs.archlinux.org the Arch Bug Tracker] or/and [http://bugs.kde.org KDE Bug Tracker] in order to report that. Make sure that you be clear on what you want to report.
+
 
+
If you have any issue 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 [https://www.archlinux.de/?page=MirrorStatus here]) or try [[Reflector]].
+
  
 
== See also ==
 
== See also ==
  
* [http://www.kde.org] - KDE homepage
+
* [http://www.kde.org KDE homepage]
* [https://bugs.kde.org] - KDE bug tracker
+
* [https://bugs.kde.org KDE bug tracker]
* [https://bugs.archlinux.org] - Arch Linux bug tracker
+
* [https://projects.kde.org KDE Projects]
* [https://projects.kde.org] - KDE Projects
+
* [http://blog.martin-graesslin.com/blog/kategorien/kde/ Martin Graesslin's blog]

Latest revision as of 21:51, 29 November 2016

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.8, Plasma on Wayland should be usable, although there are a few known problems.

  • 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. [3] 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. [4] 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. [5] (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.

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 instead 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 [6])
  • 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

Tango-edit-clear.pngThis article or section needs language, wiki syntax or style improvements.Tango-edit-clear.png

Reason:
  • The 'note' is far too large.
  • No need to explain why somebody wants to change the window manager. The reader probably already has reasons.
  • Issues should be mentioned in Troubleshooting or Known issues, not here. (Discuss in Talk:KDE#)

Tango-view-refresh-red.pngThis article or section is out of date.Tango-view-refresh-red.png

Reason: According to the note, these instructions don't work anymore. It would be better to re-write this section completely. (Discuss in Talk:KDE#)

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.

Note: The component chooser settings in plasma 5 doesn't allow changing the window manager anymore. [7]

In order to change the window manager used you need to set the KDEWM environment variable before KDE startup. [8] To do that you can create a script called set_window_manager.sh in ~/.config/plasma-workspace/env and export the KDEWM variable there. For example to use the i3 window manager :

~/.config/plasma-workspace/env/set_window_manager.sh
export KDEWM=/usr/bin/i3

And then make it executable :

$ chmod +x ~/.config/plasma-workspace/env/set_window_manager.sh

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)

Note: Since plasma 5.8 release, this workaround is no longer needed. Pressing Super key launches kickstart application launcher as if Alt+F1 keys are pressed.

Install and start ksuperkeyAUR. 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.

Enabling touchpad tap to click on plasma wayland session

Currently, it's not possible to configure tap to click via systemsettings on plasma wayland session. A workaround is provided to configure tap to click on plasma wayland session via dbus.

Here are simplified steps to get touchpad tap to click enabled on plasma wayland session.

Identify on which libinput recognizes the touchpad device.

# libinput-list-devices
Device:           ETPS/2 Elantech Touchpad
Kernel:           /dev/input/event14
Group:            7
Seat:             seat0, default
Size:             78.28x38.78mm
Capabilities:     pointer
Tap-to-click:     disabled
Tap-and-drag:     enabled
Tap drag lock:    disabled
Left-handed:      disabled
Nat.scrolling:    disabled
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   *two-finger edge
Click methods:    none
Disable-w-typing: enabled
Accel profiles:   none
Rotation:         n/a

In this case, the touchpad is identified as event14

Check whether KDE Dbus recognizes the touchpad. Replace event14 with the touchpad identifier found from libinput-list-devices.

$ qdbus org.kde.KWin.InputDevice /org/kde/KWin/InputDevice/event14 org.freedesktop.DBus.Properties.Get org.kde.KWin.InputDevice name
ETPS/2 Elantech Touchpad

Check the current value of tapToClick.

$ qdbus org.kde.KWin.InputDevice /org/kde/KWin/InputDevice/event14 org.freedesktop.DBus.Properties.Get org.kde.KWin.InputDevice tapToClick
false

Now set the tapToClick value to true.

$ qdbus org.kde.KWin.InputDevice /org/kde/KWin/InputDevice/event14 org.freedesktop.DBus.Properties.Set org.kde.KWin.InputDevice tapToClick true

Confirm that tapToClick value is true.

$ qdbus org.kde.KWin.InputDevice /org/kde/KWin/InputDevice/event14 org.freedesktop.DBus.Properties.Get org.kde.KWin.InputDevice tapToClick
true

After these steps performed, tap to click should work as expected.

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 [9]. 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).

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

See also