Gentoo Logo
Gentoo Logo Side

The KDE Configuration HOWTO


1. What is the K Desktop Environment?

The Project 

The KDE Project is a free software project dedicated to the development of KDE, an open source graphical desktop environment for Linux and Unix workstations. The development is covered by several hundred software engineers from all over the world committed to free software development. See also What is the KDE Project.

The Software 

The K Desktop Environment is an easy to use desktop environment build around a well-thought application framework to allow for application interoptability, drag 'n drop, etc. Apart from the necessary components the KDE environment also provides ready-to-use applications for 101 tasks: file management, internet browser, office application, e-mail handling, ... Everything is covered by the KDE project.

The KDE environment is available in more than 70 languages and has an immense userbase. For those interested, there are lots of screenshots available. For more information on KDE, read the What is KDE? article on

The Community 

Many KDE-based community sites exist. On you'll find the latest news on KDE generally. is targeted at the KDE development specifically, while KDE-forum is better suited for the large masses. More links can be found on the KDE Family page.

2. Installing KDE

What do you need? 

First of all, if you're interested in installing KDE (or KDE support), you will have to make sure that your USE variable contains the kde and qt flags. For those of you interested, Qt is the graphical widget library KDE uses.

Second, you need to think on what you want to install from the KDE distribution. As mentioned before, KDE is very feature-rich and embraces lots of packages. You don't have to believe our word for it -- just check yourself :)

Code Listing 2.1: Listing all packages KDE would install

# emerge --pretend kde | less

If you're not interested in installing all those packages, you can emerge the individual packages. You will most definitely want the kdebase package as it contains KDE's base packages and necessities. The following table lists some available packages you can emerge.

Package Description
kdeaccessibility Accessibility related programs, managed by the KDE Accessibility Project
kdeadmin KDE Administrative tools, such as KCron (Task Scheduling), KUser (User Management) and KDat (Backup Management)
kdeartwork Various art-related stuff, including screen savers and themes. See also for more KDE related artwork
kdeedu Educational KDE applications focused on schoolchildren aged 3 to 18. See also the KDE Edu Project.
kdegames Various KDE-developed games. More information can be found at the KDE Games Center.
kdegraphics Graphic-related tools for KDE, including KSnapshot (Screenshot Software), KPain (Simple Graphical Editor), Kpdf (PDF viewer), KIconEdit (Icon Editor) and KPovModeler (a 3D Modeler).
kde-i18n Internationalisation-related files for KDE. This includes support for foreign languages (and currencies, number/date formats, ...) and documentation. See also the KDE i18n project for more information.
kdemultimedia Multimedia-related applications, including support for CD, MP3, DVD, sequencing, sound and video applications. More information can be found on the KDE Multimedia Project website.
kdenetwork Network-related applications such as kppp (Dial-In) and lisa (Networking). Note that konqueror (File Manager and Browser) is part of kdebase!
kdepim Personal Information Management tools, such as KOrganizer (Journal), KAddressbook (Address book), Kontact (Groupware) and KMail (E-mail). More information online at the KDE PIM Project website.
kdesdk Code development tools, including KBabel (Translation tool), KBugBuster (Front end for KDE bugtracking) and Kompare (GUI to see differences between files).
kdetoys Various toys to amuse yourself with when you're waiting for your pizza delivery. You'll find applets such as eyesapplet and fifteenapplet, but also nifty tools like amor which doesn't do much except eat resources :)
kdeutils Graphical system tools such as kcalc (Calculator), kdessh (SSH terminal), kfloppy (Floppy-related actions), etc.

For instance, to install KDE with only the network- and admin-related applications:

Code Listing 2.2: Example installation of individual KDE components

# emerge kdebase kdenetwork kdeadmin

In case you wonder: compiling KDE does take a while :)

First Impressions 

Now let us take a look at the result. Now your mother has probably told you never to work as root. So we'll take on your mother's advice and test KDE as a user. Log in as your user and configure your session so it starts KDE when you issue startx. You can do this by writing exec startkde in ~/.xinitrc:

Code Listing 2.3: Configuring your local session

$ echo "exec startkde" > ~/.xinitrc

Now start up your graphical environment by running startx.

Code Listing 2.4: Starting KDE

$ startx

You will be greeted by an application called KPersonalizer. Congratulations, let's now take a look at how we can configure KDE...

3. Configuring KDE


KPersonalizer is the application that configures KDE for you. It's a very useful wizard that allows you to quickly change KDE to suit your own needs. When you run KDE for the first time, KPersonalizer is automatically started.

The first input KPersonalizer requests is your country and the language of your choice. As we haven't installed the necessary language packs on your system yet, the available languages will be very slim -- you'll probably have only English to choose from. Don't mind this, we will change the language later on (if applicable of course).

The second choice you're offered is the System Behaviour. This includes window activation, mouse selection, etc. When you select a certain behaviour it's description is shown to help you choose the behaviour you like. If you're uncertain, don't panic -- you are able to change the behaviour whenever you want.

Next KPersonalizer asks for the amount of eye-candy it should activate. The more eye-candy you want, the funkier your KDE will be, but the more your CPU will be stressed. However, this should be taken with a bit of salt - on a 600 Mhz CPU with 128 Mb of memory, enabling full eye candy still results in a responsive system.

Finally, KDE asks what style you want to use. A style defines the window decoration, theme, button layout, etc. Try several styles to see which one you like the most. Did we already mention KDE is fully configurable?

Now sit back and enjoy -- KDE will start up and you'll be greeted by a nice, clean, functional desktop environment.

Installing Language Packs 

If English isn't your native language or you're just interested in working with KDE in a foreign language, please read on. We will install the language pack(s) for the language(s) you want to use with KDE.

Language packs are contained in the kde-i18n package. To install the language packs of your choice, you need to set the LINGUAS variable to the language(s) you want to use. It is adviseable to set this variable in /etc/make.conf so that updating your system doesn't remove the language packs you want.

Code Listing 3.1: Setting LINGUAS in /etc/make.conf

# nano -w /etc/make.conf
(As an example, we install the language packs for Dutch (nl) 
 and French (fr))
LINGUAS="nl fr"

Now run emerge kde-i18n to install the language packs. Once settled, fire up KDE, then start the KDE Control Center (K-menu > Settings > Control Center). This is the application where you can control almost every aspect of KDE. It is much more extended than KPersonalizer.

To change your language, go to Regional & Accessibility, Country/Region & Languages. Then add the language(s) of your choice. To see your (localised) KDE in its full glory, log out and in again, and enjoy.

Graphical Login 

If you want to use kdm as graphical login manager (which means you don't have to log on onto a terminal and type startx every time) you first need to look inside /etc/X11/Sessions to see how the KDE session is called:

Code Listing 3.2: Checking the KDE session name

# ls /etc/X11/Sessions
Xsession  fluxbox  kde-3.2.1

In the above example, the KDE session is called kde-3.2.1. Let's enter this in /etc/rc.conf in the variable called XSESSION. While you are at it, also set the DISPLAYMANAGER to kdm.

Code Listing 3.3: Setting XSESSION in /etc/rc.conf

# nano -w /etc/rc.conf
(Edit the following two variables)

Finish up by adding xdm to the default runlevel:

Code Listing 3.4: Adding xdm to the default runlevel

# rc-update add xdm default

When you reboot your system, it will use KDM as graphical login manager.

4. Frequently Asked Questions

KDE is extremely slow during startup 

Make sure your /etc/hosts file is correct:

  • If you have a static IP address, make sure your FQDN and hostname are mentioned on that line, like tux.mydomain tux
  • If you have a dynamic IP address or you do not have any additional interfaces at all, add your hostname after the localhost statement, like localhost tux

Check if you have DMA enabled for your disks:

Code Listing 4.1: Verifying DMA settings

# hdparm /dev/hda
using_dma       = 1 (on)

If you don't have an IPv6-enabled network, disable KDE's IPv6 checking by adding the following line to /etc/env.d/99kde-env:

Code Listing 4.2: Changing /etc/env.d/99kde-env


The contents of this document are licensed under the Creative Commons - Attribution / Share Alike license.
Updated October 22, 2004
Sven Vermeulen

Summary:  One of the most used desktop environments is KDE. This guide tries to describe all aspects of KDE, including installation, configuration, usage, ...
The Gentoo Linux Store
Copyright 2001-2004 Gentoo Foundation, Inc. Questions, Comments, Corrections? Email [email protected].