Difference between revisions of "KDE"

From ArchWiki
Jump to: navigation, search
m (This is a dependence of kdebase-workspace now)
(Using an alternative window manager: add style and out of date notices)
 
(502 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|For users on Linux and Unix, KDE offers a full suite of user workspace applications which allow interaction with these operating systems in a modern, graphical user interface. This article covers its installation, configuration, and troubleshooting.}}
+
{{Related|Desktop environment}}
{{Article summary text|KDE uses the [[Qt]] toolkit.}}
+
{{Related|Display manager}}
{{Article summary heading|Overview}}
+
{{Related|Dolphin}}
{{Article summary text|{{Graphical user interface overview}}}}
+
{{Related|Window manager}}
{{Article summary heading|Related}}
+
{{Related|Qt}}
{{Article summary wiki|Plasma}}
+
{{Related|KDM}}
{{Article summary wiki|Qt}}
+
{{Related|KDevelop}}
{{Article summary wiki|KDM}}
+
{{Related|Trinity}}
{{Article summary wiki|KDevelop 4}}
+
{{Related|Uniform Look for Qt and GTK Applications}}
{{Article summary wiki|Uniform Look for Qt and GTK Applications}}
+
{{Related articles end}}
{{Article summary end}}
+
  
From [http://www.kde.org/community/whatiskde/softwarecompilation.php KDE - KDE Software Compilation]:
+
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 grew out of the history of the KDE Project. In its inception, KDE was formed to create a beautiful, functional and free desktop computing environment for Linux and similar operating systems. At the time, these systems lacked a graphical user environment that could rival the offerings from the larger proprietary operating system vendors. KDE was created to fill this gap.''
+
== Installation ==
  
:''The KDE Software Compilation is the set of libraries, workspaces, and applications produced by KDE that share this common heritage, and continue to use the synchronized release cycle. Software may move in and out of this semi-formally defined collection depending on the particular needs of the contributors who are working on that software, with exceptions made to ensure that binary compatibility remains at the library level throughout any major release of the compilation.''
+
=== Plasma Desktop ===
  
From [http://www.kde.org/download/ KDE - Getting KDE Software]:
+
{{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.}}
  
:''KDE software consists of a large number of individual applications and a desktop workspace as a shell to run these applications. You can run KDE applications just fine on any desktop environment. KDE applications are built to integrate well with your system's components. By using also KDE workspace, you get even better integration of your applications with the working environment while lowering system resource needs.''
+
Before installing Plasma, make sure you have a working [[Xorg]] installation on your system.
  
The KDE upstream has a well maintained [http://userbase.kde.org/ UserBase wiki]. Users can get detailed information about most KDE applications there.
+
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.
  
== Overview ==
+
=== Upgrading from Plasma 4 to 5 ===
  
'''KDE 4.10''' Software Compilation is the current major [http://kde.org/announcements/ release of KDE]. Important hints for upgraders:
+
# Isolate {{ic|multi-user.target}}:{{bc|# systemctl isolate multi-user.target}}
* Always check if your mirror is '''up to date'''.
+
# If you use KDM as display manager, [[disable]] the {{ic|kdm.service}} systemd unit.
* '''Do not force an update using pacman --force'''. If pacman complains about conflicts please '''file a bug report'''.
+
# [[Install|Uninstall]] the {{AUR|kdebase-workspace}} package.
* You can remove the meta packages and the sub packages you do not need after the update.
+
# [[Install]] the {{pkg|plasma-meta}} package or the {{grp|plasma}} group.
* If you do not like split packages just keep using the kde-meta packages.
+
# [[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.}}
  
== Installation ==
+
=== KDE applications and language packs ===
  
KDE 4.x is '''modular'''. You can install an entire set of packages or only install your preferred KDE applications.
+
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.
  
{{Note|If you do not have [[Xorg#Installation|Xorg]] installed on your system, be sure to install it before KDE.}}
+
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].
  
=== Full install ===
+
== Starting Plasma ==
  
[[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.
+
{{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.}}
  
=== Minimal install ===
+
To launch a Plasma 5 session, choose ''Plasma'' in your [[display manager]] menu.
  
If you want to have a minimal installation of the KDE SC, install:
+
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]].
* {{Grp|kdebase}}
+
* {{Pkg|phonon-vlc}} or {{Pkg|phonon-gstreamer}} as phonon backend
+
  
=== Language pack ===
+
=== Wayland ===
  
If you need language files, install {{ic|kde-l10n-yourlanguagehere}} (e.g. {{Pkg|kde-l10n-de}} for the German language).
+
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].
  
For a full list of available languages see [https://www.archlinux.org/packages/extra/any/kde-l10n/ this link].
+
* 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}}.
  
== Starting KDE ==
+
== Configuration ==
  
Starting KDE depends on your preferences. Basically there are two ways of starting KDE. Using '''KDM''' or '''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''.
  
=== Using KDM (KDE Display Manager)===
+
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}}
  
''It is highly recommended to get familiar with the [[Display Manager|full article]] concerning display managers, before you make any changes. See also [[KDM]] Wiki page.''
+
=== Personalization ===
  
[[Daemons|Enable/start]] {{ic|kdm.service}}.
+
==== Plasma desktop ====
  
=== Using xinitrc ===
+
===== Themes =====
''The meaning and usage of '''xinitrc''' is very well described [[Xinitrc|here]].
+
  
{{Pkg|kdebase-workspace}} provides startkde. Make sure it is installed. Then edit {{ic|~/.xinitrc}}, uncomment:
+
{{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.}}
exec startkde
+
[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].
  
After a reboot and/or log-in, each execution of Xorg ('''startx''' or '''xinit''') will start KDE automatically.
+
The easiest way to install themes is by going through the Desktop Settings control panel:
  
{{Note|If you want to start Xorg at boot, please read [[Start X at Login]] article.}}
+
  Workspace Theme > Desktop Theme > Get new Themes
  
== Configuration ==
+
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.
  
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.
+
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.
  
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.
+
Note that the [[SDDM]] login screen is not part of this theme.
  
For other personalization options not covered below such as activities, different wallpapers on one cube, etc please refer to the [[Plasma]] wiki page.
+
====== Qt and GTK+ Applications Appearance ======
  
=== Personalization ===
+
{{Tip|For Qt and GTK theme consistency, see [[Uniform look for Qt and GTK applications]].}}
  
How to set up the KDE desktop to your personal style; use different Plasma themes, window decorations and icon themes.  
+
;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.
  
==== Plasma desktop ====
+
;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''.
  
[[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".
+
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.
  
===== Themes =====
+
===== Widgets =====
  
[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].
+
Plasmoids are little scripted (plasmoid scripts) or coded (plasmoid binaries) KDE applications designed to enhance the functionality of your desktop.
  
===== Widgets =====
+
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.
  
Plasmoids are little scripted or coded KDE apps that enhance the functionality of your desktop. There are two kinds, plasmoid scripts and plasmoid binaries.
+
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].
  
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.
+
===== Sound applet in the system tray =====
  
The easiest way to install plasmoid scripts is by right-clicking onto a panel or the desktop:
+
[[Install]] {{Pkg|plasma-pa}} or {{Pkg|kmix}} (start Kmix from the Application Launcher).
  
Add Widgets > Get new Widgets > Download 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}}}}
  
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.
+
===== Disable panel shadow =====
  
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.
+
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:
  
===== Sound applet in the system tray =====
+
$ xprop -remove _KDE_NET_WM_SHADOW
 +
 
 +
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:
 +
 
 +
{{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'':
  
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.
+
$ 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].
+
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].
  
 
==== Icon themes ====
 
==== Icon themes ====
  
Not many full system icons themes are available for KDE 4.  You can open up '''System Settings > Application Appearance > Icons''' and browse for new ones or install them manually. Many of them can be found on [http://www.kde-look.org/ kde-look.org].
+
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/>
Official logos, icons, CD labels and other artwork for Arch Linux are provided in the {{Pkg|archlinux-artwork}} package. After installing you can find such artwork at {{ic|/usr/share/archlinux/}}.
+
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.
+
  
After the installation, be sure to log out and back in. You should not have to modify any settings in the "Fonts" panel of the KDE System Settings application.
+
Try installing the {{Pkg|ttf-dejavu}} and {{Pkg|ttf-liberation}} packages.
  
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}}).  
+
After the installation, be sure to log out and back in. You should not have to modify anything in ''System Settings > Fonts''.
  
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).  
+
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}}).
  
Note too that Gnomes' Font Preferences will also do this if you use both desktop environments.
+
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.
  
===== Fonts are huge or seems disproportional =====
+
===== Fonts are huge or seem disproportional =====
  
Try to force fonts DPI to '''96''' on ''System Settings > Application Appearance > Fonts.''
+
Try to force font DPI to '''96''' in ''System Settings > Application Appearance > Fonts''.
  
If it does not work try set DPI directly on Xorg configuration [[Xorg#Setting_DPI_manually|here]].
+
If that does not work, try setting the DPI directly in your Xorg configuration as documented [[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
 +
{{ic|1=BorderlessMaximizedWindows=true}} in the {{ic|[Windows]}} section.
  
=== Networking ===
+
=== Printing ===
  
You can choose from the following tools:
+
{{Tip|Use the [[CUPS]] web interface for faster configuration. Printers configured in this way can be used in KDE applications. }}
* NetworkManager.  See [[NetworkManager#KDE4|NetworkManager]] for more information.
+
* Wicd and its KDE front end {{AUR|wicd-kde}}. See [[Wicd]] for more information.
+
  
=== Printing ===
+
You can also configure printers in ''System Settings > Printer Configuration''. To use this method, you must first install {{Pkg|print-manager}} and {{Pkg|cups}}.
  
{{Tip|Use the [[CUPS]] web interface for faster configuration.}}
+
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'
 +
with keyword 'system-config- printer-kde/system-config-printer-kde.py'
 +
The factory does not support creating components of the specified type.
  
The printers are configured in this way can be found in applications KDE.  
+
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'
  
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}}.
+
For CUPS, this is set in {{ic|/etc/cups/cups-files.conf}}.
  
You need to start the avahi-daemon and cupsd daemons first or you will get the following error:
+
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.
{{bc|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 the user rights to manage printers:
+
  # groupadd -g107 lpadmin
  There was an error during CUPS operation: 'cups-authorization-canceled'
+
  
For CUPS, this is set in {{ic|/etc/cups/cupsd.conf}}.
+
{{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).
  
==== How to enable Cpufreq based power saving ====
+
{{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]}}
  
{{Note|Cpufreq seems have been dropped from arch linux in favour of [[cpupower]] ([https://github.com/mate-desktop/mate-applets/issues/11 reference]).}}
+
{{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]].}}
  
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 cpufreq governor from kernel vesion 3.3. See [[cpufreq|wiki article on cpufreq]].
+
=== Autostarting applications ===
  
If you are happy with setting your governor once at boot (with the {{ic|cpufreq}} daemon script, for example) then this section is not relevant and can be skipped.
+
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|
# If you have not already done so, install the {{Pkg|cpufrequtils}} package (for the {{ic|cpufreq-set}} utility).
+
* 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.
# Next, you will need to grant access to '''cpufreq-set''' for the appropriate users by configuring [[sudo]].  For example, if you are part of the ''wheel'' group, you could use {{ic|visudo}} to add:
+
%wheel ALL = (ALL) NOPASSWD: /usr/bin/cpufreq-set
+
to your {{ic|sudoers}} file.
+
 
+
3. From ''System Settings > Power Management > Power Profiles'' select a profile to edit or create a new one.  Check the ''Run Script'' option and add an appropriate {{ic|cpufreq-set}} command for the selected power profile. For example, your "Powersave" profile might have:
+
sudo cpufreq-set -r -g ondemand
+
Your "Performance" profile might have
+
sudo cpufreq-set -r -g performance
+
 
+
{{Note|* The ''cpufreq-set'' examples above may be insufficient for setting the governor for all processors/cores.
+
For some CPU families the {{ic|-r}} switch may not set the governor for all cores/cpus and instead only set the governor for CPU 0.  In this case you will need to write a script to iterate through all your cores.  A simple script for a four core system could look like:
+
#!/bin/bash
+
for i in {0..3}; do
+
  sudo /usr/bin/cpufreq-set -c${i} -gondemand
+
done
+
* You can check which governors are active with {{ic|cpufreq-info -o}} or less intuitively by inspecting {{ic|/sys/devices/system/cpu/cpu*/cpufreq/scaling_governor}}.
+
 
}}
 
}}
  
=== Monitoring changes on local files and directories ===
+
Place [[Desktop entries]] (i.e. {{ic|.desktop}} files) here:
 +
;{{ic|~/.config/autostart}}:for starting applications at login.
  
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.
+
Place or symlink shell scripts in one of the following directories:
 +
;{{ic|~/.config/plasma-workspace/env}}:for executing scripts at login before launching Plasma.
 +
;{{ic|~/.config/autostart-scripts}}:for executing scripts at login.
 +
;{{ic|~/.config/plasma-workspace/shutdown}}:for executing scripts on shutdown.
  
 
== System administration ==
 
== System administration ==
  
=== Set keyboard layout in order switch language inputs ===
+
=== Terminate Xorg server through KDE System Settings ===
 
+
In order to do that, navigate to
+
    System Settings > Hardware > Input Devices > Keyboard
+
There you may choose your keyboard model at first.
+
{{Note| It is preferable that, if you use Evdev, that means Xorg automatic configuration for keyboards, you should choose "Evdev-managed keyboard".}}
+
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.
+
In the "'''Advanced'''" tab, you can choose the keyboard combination you want in order to change the layouts in the "Key(s) to change layout" sub-menu.
+
 
+
=== Terminate Xorg-server through KDE system settings ===
+
  
Navigate to:
+
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.
System Settings > Input Devices > Keyboard > Advanced (tab) > "Key Sequence to kill the X server" submenu
+
and tick the checkbox.
+
  
=== Useful KCM ===
+
=== KCM ===
  
KCM means KConfig Module. This modules help you to configure you system providing a interface on System Settings.
+
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''.
  
'''Configuration for look&feel of your GTK apps.'''
+
'''Configuration for look and feel of GTK applications.'''
 
* {{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.'''
+
'''Configuration for the [[Uncomplicated Firewall]] (UFW)'''
* {{Pkg|synaptiks}}
+
* {{AUR|kcm_touchpad}}
+
 
+
'''Configuration for [[Firewalls#ufw|UFW]]'''
+
 
* {{AUR|kcm-ufw}}
 
* {{AUR|kcm-ufw}}
  
Line 280: 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 [https://en.wikipedia.org/wiki/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 ''[https://en.wikipedia.org/wiki/Resource_Description_Framework Resource Description Framework (RDF)]'' database called Virtuoso. Internally, Virtuoso may be looked as a relational database. (A [https://en.wikipedia.org/wiki/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 {{Keypress|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.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).
 +
 
 +
==== Installation ====
  
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).
+
Install {{Pkg|akonadi}}. For additional addons, install {{Pkg|kdepim-addons}}. For EWS support, install {{AUR|akonadi-ews-git}}.
  
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/].
+
{{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 339: 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 Server running on the System
+
* 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]], Xine ({{AUR|phonon-xine}}) or  MPlayer ({{AUR|phonon-mplayer-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 and Phonon-Xine are 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 [https://www.archlinux.org/news/kde-sc-46-to-extra/ announcement of KDE 4.6 in Arch] and [http://mail.kde.org/pipermail/phonon-backends/2011-February/000500.html mail in Phonon dev list], users should prefer GStreamer over VLC due to the feature difference.
+
{{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 371: 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.
 +
 
 +
==== Use Telegram with KDE Telepathy ====
 +
 
 +
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.
  
 
== Tips and tricks ==
 
== Tips and tricks ==
  
=== Configure KWin to use OpenGL ES ===
+
=== Using an alternative window manager ===
  
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.
+
{{Style|
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}}.
+
* 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.'' [Cit. Rob]
+
{{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 'Places' sidebar and selecting '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, for example {{ic|/etc/udev/rules.d/10-local.rules}}:
+
}}
  
KERNEL=="sda[0-9]", ENV{UDISKS_IGNORE}="1"
+
==== KDE/Openbox session ====
  
The same thing for a certain partition:
+
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=="sda1", ENV{UDISKS_IGNORE}="1"
+
For those starting the session manually, add the following line to your {{ic|.xinitrc}} file:
  KERNEL=="sda2", ENV{UDISKS_IGNORE}="1"
+
  exec openbox-kde-session
  
=== Konqueror tips ===
+
==== Compiz custom ====
  
==== Disabling smart key tooltips (browser) ====
+
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:
  
To disable those smart key tooltips in Konqueror (pressing {{Keypress|Ctrl}} on a web page), open {{ic|~/.kde4/share/config/konquerorrc}} and add this section:
+
{{hc|/usr/local/bin/compiz-kde-launcher|<nowiki>
 +
#!/bin/bash
 +
LIBGL_ALWAYS_INDIRECT=1
 +
compiz --replace &
 +
wait
 +
</nowiki>}}
  
[Access Keys]
+
Then make it executable:
  Enabled=false
+
  $ chmod +x /usr/local/bin/compiz-kde-launcher
  
==== Disabling the sidebar tab (filemanager) ====
+
==== Re-enabling compositing effects ====
  
To disable this small sidebar tab on the left side, open {{ic|~/.kde4/share/config/konqsidebartng.rc}} and set {{ic|HideTabs}} to {{ic|true}}.
+
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]].
  
==== Using WebKit ====
+
=== Integrate Android ===
  
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.
+
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.
  
It is possible to use WebKit in Konqueror instead of KHTML. First install the {{Pkg|kwebkitpart}} package.
+
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].
  
Then, after executing Konqueror, press ''Settings > Configure Konqueror''.  
+
=== 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.
  
On the ''General'' submenu, select ''WebKit'' as the ''Default web browser engine''.
+
=== Speed up application startup ===
  
=== Firefox integration ===
+
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
  
See [[Firefox#KDE_integration]].
+
{{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.}}
  
== Troubleshooting ==
+
=== Configuring monitor resolution / multiple monitors ===
  
=== Getting current state of KWin for support and debug purposes ===
+
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.
  
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]
+
=== Open application launcher with Super key (Windows key) ===
  
qdbus org.kde.kwin /KWin supportInformation
+
{{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.}}
  
=== KDE4 does not finish loading ===
+
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.
  
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.
+
=== Enabling touchpad tap to click on plasma wayland session ===
  
A solution for Nvidia users is to edit the file at {{ic|/home/user/.kde4/share/config/kwinrc}} and change the option '''Enabled=true''' to '''false''' in the '''[Compositing]''' section. For more information look at this [https://bbs.archlinux.org/viewtopic.php?pid=932598 thread].
+
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.
  
If a minimal install was done, make sure you installed the required font by your phonon backend listed here: [[KDE#Minimal_install]]
+
Here are simplified steps to get touchpad tap to click enabled on plasma wayland session.
  
=== KDE and Qt programs look bad when in a different window manager ===
+
Identify on which libinput recognizes the touchpad device.
 +
{{Hc|# 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
 +
}}
  
If you are using KDE or Qt programs but not in a full KDE session (specifically, you did not run "startkde"), then as of KDE 4.6.1 you will need to tell Qt how to find KDE's styles (Oxygen, QtCurve etc.)
+
In this case, the touchpad is identified as {{Ic|event14}}
  
You just need to set the environment variable QT_PLUGIN_PATH. E.g. put:
+
Check whether KDE Dbus recognizes the touchpad. Replace {{Ic|event14}} with the touchpad identifier found from {{Ic|libinput-list-devices}}.
  
export QT_PLUGIN_PATH=$HOME/.kde4/lib/kde4/plugins/:/usr/lib/kde4/plugins/
+
{{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
 +
}}
  
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!
+
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
 +
}}
  
Alternatively, you can symlink the Qt styles directory to the KDE styles one:
+
Now set the {{Ic|tapToClick}} value to {{Ic|true}}.
# ln -s /usr/lib/kde4/plugins/styles/ /usr/lib/qt/plugins/styles
+
  
Under Gnome you can try to install the package libgnomeui.
+
$ qdbus org.kde.KWin.InputDevice /org/kde/KWin/InputDevice/event14 org.freedesktop.DBus.Properties.Set org.kde.KWin.InputDevice tapToClick true
  
=== KDE and Qt programs look bad after upgrade (using kwin) ===
+
Confirm that {{Ic|tapToClick}} value is {{Ic|true}}.
  
The problem is caused by old cache. Run the following to rebuild it:
+
{{Hc|$ qdbus org.kde.KWin.InputDevice /org/kde/KWin/InputDevice/event14 org.freedesktop.DBus.Properties.Get org.kde.KWin.InputDevice tapToClick|
 +
true
 +
}}
  
  $ rm ~/.config/Trolltech.conf
+
After these steps performed, tap to click should work as expected.
  $ kbuildsycoca4 --noincremental
+
  
[https://bbs.archlinux.org/viewtopic.php?id=135301 Reference].
+
== Troubleshooting ==
  
=== Graphical related issues ===
+
=== Configuration related ===
  
==== Low 2D desktop performance (or) artifacts appear when on 2D ====
+
Many problems in KDE are related to configuration.
  
===== GPU driver problem =====
+
==== Plasma desktop behaves strangely ====
  
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.
+
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.
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 =====
+
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 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.  
+
If you cannot find the problem, but you do not want ''all'' the settings to be lost, navigate to {{ic|~/.config}}:
  
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'''".  
+
$ for j in plasma*; do mv -- "$j" "${j%}.bak"; done
  
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.
+
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.
  
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).
+
==== Clean cache to resolve upgrade problems ====
  
'''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 [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.
  
  System Settings > Qt Graphics System
+
Rebuild your cache with the following commands:
  
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].
+
$ rm ~/.config/Trolltech.conf
 +
$ kbuildsycoca4 --noincremental
  
==== Low 3D desktop performance====
+
Hopefully, your problems are now fixed.
  
KDE begins with desktop effects enabled.  Older cards may be insufficient for 3D desktop acceleration.  You can disable desktop effects in
+
=== Clean akonadi configuration to fix KMail ===
System Settings > Desktop Effects
+
or you can toggle desktop effects with {{Keypress|Alt+Shift+F12}}.
+
  
{{Note| You may encounter such problems with 3D desktop performance even when using a more powerful graphics card, especially the catalyst proprietary driver (fglrx). This driver is known for having issues with 3D acceleration. Visit [[ATI|the ATi Wiki page]] for more troubleshooting.}}
+
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
  
==== Desktop compositing is disabled on my system with a modern Nvidia GPU ====
+
Start ''SystemSettings > Personal'' and remove all the resources. Go back to Dolphin and remove the original {{ic|~/.local/share/akonadi}} and
 +
{{ic|~/.config/akonadi}} - the copies you made ensure that you can back-track if necessary.
  
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 {{ic|~/.kde4/share/config/kwinrc}} file and relogin. The KWin settings will turn to the KDE default ones and the problem should be probably gone.
+
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.
  
==== Flickering in fullscreen when compositing is enabled ====
+
=== Fix empty IMAP inbox ===
  
As of KDE SC 4.6.0, there is an option in systemsettings > Desktop Effect > Advanced > "Suspend desktop effects for fullscreen windows" Uncheck it would tell kwin to disable unredirect fullscren.
+
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.
  
==== Screen Tearing with desktop compositing enabled ====
+
=== Getting current state of KWin for support and debug purposes ===
  
KWin may suffer from screen tearing while desktop effects are enabled. Uncheck the VSync option under System Settings > Desktop Effects > Advanced > "Use Vsync".
+
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].
  
For proprietary driver users, ensure that the driver's VSync option is enabled (amdccle for [[amd_catalyst|Catalyst]] users, and nvidia-settings for [[Nvidia]] users).
+
$ qdbus org.kde.KWin /KWin supportInformation
  
=== Sound problems under KDE ===
+
=== KDE and Qt programs look bad when in a different window manager ===
  
==== ALSA related problems ====
+
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.)
  
{{Note|First make sure you have {{Pkg|alsa-lib}} and {{Pkg|alsa-utils}} installed.}}
+
You just need to set the environment variable {{ic|QT_PLUGIN_PATH}}. E.g. put:
  
===== "Falling back to default" messages when trying to listen to any sound in KDE =====
+
export QT_PLUGIN_PATH=$HOME/.kde4/lib/kde4/plugins/:/usr/lib/kde4/plugins/
  
When you encounter such messages:
+
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!
: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.
+
  
===== I cannot play MP3 files when using the GStreamer Phonon backend =====
+
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
  
That can be solved by installing the GStreamer plugins (package {{Pkg|gstreamer0.10-plugins}}. If you still encounter problems, you can try changing the Phonon backend used by installing another such as {{Pkg|phonon-vlc}}.
+
Under Gnome you can try to install the package libgnomeui.
Then make sure the backend is preferred via:
+
  System Settings > Multimedia > Phonon > Backend (tab)
+
  
=== I want a fresh installation of KDE for my system ===
+
=== KF5/Qt5 applications don't display icons in i3/fvwm/awesome ===
  
Just rename the settings directory of KDE (just in case you will want to go back to your original settings):
+
See [[Qt#Configuration of Qt5 apps under environments other than KDE]].
mv ~/.kde4 ~/.kde4-backup
+
  
=== Plasma desktop behaves strangely ===
+
=== Graphical related problems ===
  
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 keeps crashing with legacy Nvidia ====
  
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, I recommend you find the entry on kde-look.org and inform the developer of that widget about the issue (detailing steps to reproduce, etc).
+
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:
  
If you cannot find the problem, but you do not want ''all'' the KDE settings to be lost, do:
+
#!/bin/sh
 +
export KWIN_EXPLICIT_SYNC=0
  
  rm -r ~/.kde4/share/config/plasma*
+
Then go to ''system-settings > Startup and Shutdown > Autostart'' and ''Check/Add'' the script as a pre-KDE startup file.
  
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.
+
==== Applications don't refresh properly ====
  
=== Konsole does not save commands' history ===
+
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.
  
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.
+
==== Low 2D desktop performance (or) artifacts appear when on 2D ====
To enable autosaving after every command execution you should add following lines into your .bashrc
+
shopt -s histappend
+
[[ "${PROMPT_COMMAND}" ]] && PROMPT_COMMAND="$PROMPT_COMMAND;history -a" || PROMPT_COMMAND="history -a"
+
  
=== KDE password prompts display three bullets per char ===
+
===== GPU driver problem =====
  
You can change it under ''System Settings > Account Details''. At ''Password & User Account'' the options are:
+
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.
* Show one bullet for each letter
+
The open-source ATI and Intel drivers and the proprietary (binary) Nvidia driver should theoretically provide the best 2D and 3D acceleration.
* Show three bullets for each letter
+
* Show nothing
+
  
=== Nepomukserver process still autostart even with semantic desktop disabled ===
+
===== The Raster engine workaround =====
Go to ''' System Settings > Startup and Shutdown > Service Manager > Startup Services''' and uncheck the Nepomuk Search Module.
+
{{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.
  
=== File Indexer Service not working even after enabling everything properly ===
+
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}}.
  
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:
+
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.
  
$ mv ~/.kde4/share/apps/nepomuk ~/.kde4/share/apps/nepomuk_backup
+
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).
  
to move your existing (and corrupt) nepomuk database. It will be recreated when you log in again.
+
'''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''.
  
=== Desktop does not respond for several seconds at startup ===
+
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].
  
There is a bug in either [https://bugs.freedesktop.org/show_bug.cgi?id=58758 pulseaudio] or [https://bugs.kde.org/show_bug.cgi?id=312560 kde] that makes the desktop not being usable for a few seconds after it has showed up (for example if you click on the K-menu it does not appears until that waiting time has elapsed).
+
==== Low 3D desktop performance====
  
The workaround is to disable {{ic|/etc/xdg/autostart/pulseaudio.desktop}} by adding the following line at the end (do not omit the semicolon):
+
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}}.
  
NotShowIn=KDE;
+
{{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.}}
  
Note that you could also remove that file, or renaming it (to pulseaudio.desktop.disable or the like) but then it will not load in other Desktop Managers, and will be restored by a package update.
+
==== Desktop compositing is disabled on my system with a modern Nvidia GPU ====
  
[http://linuxadvantage.blogspot.fr/2013/01/kde-rather-slow-to-start-pulseaudio.html Reference].
+
Sometimes, KWin may have settings in its configuration file ({{ic|kwinrc}}) that ''may'' cause a problem on re-activating the 3D desktop {{ic|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 {{ic|~/.kde4/share/config/kwinrc}} file and relogin. The KWin settings will turn to the KDE default ones and the problem should be probably gone.
  
=== Mysterious hangs/slowness after upgrade ===
+
==== Flickering in fullscreen when compositing is enabled ====
  
Try cleaning up your 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.
+
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.
  
To clean up your cache run as your normal user:
+
==== 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.
 +
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.
 +
* 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.
  
  rm ~/.config/Trolltech.conf
+
=== Sound problems under KDE ===
  kbuildsycoca4 --noincremental
+
  
Hopefully, your problems are now fixed.
+
==== ALSA related problems ====
 +
 
 +
{{Note|First make sure you have {{Pkg|alsa-lib}} and {{Pkg|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 {{ic|default}} above all the other devices in each box you see.
 +
 
 +
===== MP3 files cannot be played when using the GStreamer Phonon backend =====
  
== Other KDE projects ==
+
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 ''System Settings > Multimedia > Phonon > Backend (tab)''.
  
=== Official kde-unstable ===
+
=== Inotify folder watch limit ===
  
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].
+
If you get the following error:
  
You may add it by adding:
+
KDE Baloo Filewatch service reached the inotify folder watch limit. File changes may be ignored.
  
[kde-unstable]
+
Then you will need to increase the inotify folder watch limit:
SigLevel = PackageRequired
+
Include = /etc/pacman.d/mirrorlist
+
  
to {{ic|/etc/pacman.conf}}
+
# echo 10000 > /proc/sys/fs/inotify/max_user_watches
  
# 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 make changes permanent, create {{ic|/etc/sysctl.d/90-inotify.conf}} with
# To update from a previous KDE installation, run: <code>pacman -Syu</code> or <code>pacman -S kde-unstable/kde</code>
+
# If you don't have KDE installed, you might have difficulties to install it by using groups (limitation of pacman)
+
# '''Subscribe and read the arch-dev-public mailing list'''
+
# Make sure [[#Distro_and_Upstream_bug_report|you make bug reports]] if you find any issues.
+
  
=== Trinity ===
+
#increase inotify watch limit
 +
fs.inotify.max_user_watches = 10000
  
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.
+
=== Freezes when using Automount on a NFS volume  ===
  
{{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.}}
+
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].
  
==Bugs==
+
=== Locale warning when installing packages in Konsole ===
  
===Distro and Upstream bug report===
+
  mandb: can't set the locale; make sure $lc_* and $lang are correct
  
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.
+
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.
  
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]].
+
=== Multi-monitor issues ===
  
KDE 4 config files are usually located at
+
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].
  
~/.kde4/share/config/
+
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.
  
and for app-specific configs
+
== Unstable releases ==
  
~/.kde4/share/apps/
+
See [[Official repositories#kde-unstable]]
  
 
== See also ==
 
== See also ==
  
* [http://www.kde.org KDE Homepage]
+
* [http://www.kde.org KDE homepage]
* [http://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]
* [http://websvn.kde.org KDE WebSVN]
+
* [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