Gentoo Wiki



K Desktop Environment

Location: KDE4

KDE Pages








KDE 4.1: In Portage Now!

Head up to and use the official guide!

KDE 4.2: Unofficial Overlay

This overlay is called "kdesvn-portage". It includes ebuilds for KDE4-SVN and weekly SVN-snapshots of the KDE 4.2 development branch. KDE 4.1.1 was dropped recently.


Layman and tools

At first you need layman to install an overlay. Make sure the git flag is enabled for layman: emerge -av layman

If not, add the following entry to your /etc/portage/package.use: app-portage/layman git
That should automatically pull in dev-util/git as a dependency of layman for it to be emerged.
(For more information read the Overlay Documentation)

Note: Users with older configurations will need to replace /usr/local/portage with /usr/portage/local - This is a recent change to the default layman configuration.

You can either add all your layman managed overlays to the overlay list by adding the following line to /etc/make.conf: source /usr/portage/local/layman/make.conf

Preparing /etc/portage

Both overlays provide the necessary package.keywords and package.unmask pre-made for us.

If you already use directories for /etc/portage/package.*, you can skip the following sections and continue with installing one of the two overlays.

Create package.* directories

If you've not used any of the package.* directories before, you'll need to create them:
mkdir -p /etc/portage/package.{use,mask,unmask,keywords}

Excerpt: Converting to directories (package.* are files)

This section will show you how to switch from using a single file for each of /etc/portage/package.* to using directories. Using directories makes it easier to manage large sets of entries by just adding or deleting entire files and even autounmask will create a new file for each run.

Using the following script, the old contents of your /etc/portage/package.* files will be saved as /etc/portage/package.*/monolithic.

Copy the following file to ~/


if [ ! -e ${PROFILE_DIR} ]; then
  mkdir ${PROFILE_DIR};

for PACK_DIR in package.keywords package.use package.unmask package.mask; do
  if [ ! -e ${CUR_DIR} ]; then
    mkdir ${CUR_DIR}

  if [ -e ${CUR_DIR} -a ! -d ${CUR_DIR} ]; then
    mv ${CUR_DIR} ${CUR_DIR}.moving
    mkdir ${CUR_DIR}
    mv ${CUR_DIR}.moving ${CUR_DIR}/monolithic

echo "Completed!"

Now run sh ~/ to convert to directories.

Broken autounmask

Many people like to use autounmask to help with huge unmasks. Unfortunately it is broken in Gentoo 2008.0. Some people have reported workarounds in a Autounmask-Bugzilla-Report. But unfortunately amd64-Users can only downgrade to profile 2007.0 to make it work again: eselect profile list and then: eselect profile set # (where # is your listed profile number).

Now fetch and add the KDE development overlay: layman -f -a kdesvn-portage


This overlay requires a large amount of unmasking. Fortunately there are some things in place that make it a lot easier. If you know what to do you can simply unmask your desired version of kde-meta with all the dependencies using autounmask or you read these tips how to ease it a lot:

The following points are useful if you want to use the predefined Package.* files from the overlay. It creates links from /etc/portage/package.keywords to a file inside the overlay.

KDE 4.2 Weekly Snapshots Only

Add the unmask entries for the overlay to your /etc/portage/package.unmask/ directory:
ln -s /usr/local/portage/layman/kdesvn-portage/Documentation/portage/package.unmask /etc/portage/package.unmask/kdesvn

Add the keywords for the overlay to your /etc/portage/package.keywords/ directory:
mkdir /etc/portage/package.keywords/kdesvn
ln -s /usr/local/portage/layman/kdesvn-portage/Documentation/portage/package.keywords/*-4.2.keywords /etc/portage/package.keywords/kdesvn/

KDE 4.2 SVN Only

Add the unmask entries for the overlay to your /etc/portage/package.unmask/ directory:
ln -s /usr/local/portage/layman/kdesvn-portage/Documentation/portage/package.unmask /etc/portage/package.unmask/kdesvn

Add the keywords for the overlay to your /etc/portage/package.keywords/ directory:
ln -s /usr/local/portage/layman/kdesvn-portage/Documentation/portage/package.keywords /etc/portage/package.keywords/kdesvn

For All

Add the QT4 keyword entries for the overlay to your /etc/portage/package.keywords/ directory:
ln -s /usr/local/portage/layman/kdesvn-portage/Documentation/portage/package.keywords/qt* /etc/portage/package.keywords/kdesvn/



If you get a qt:4 blocker, to fix it run: emerge -C qt:4; emerge -av1 qt-gui

If you get a qca:0 blocker, keyword app-crypt/qca-1.0-r3 and then run emerge -av1 app-crypt/qca:0

When all the blockers are fixed... ... it is still possible to have packages that don't compile. Sometimes they need a second start to do it and sometimes you need to tweek a bit. A good start for help with this is the KDE-Portage-Thread at the Gentoo-Forums.

Portage 2.1.x

Portage 2.1 does not feature set functionality.

To install KDE 4.2 without using the set: emerge -vat kde-meta:4.2

To install all of KDE SVN without using the set: emerge -vat kde-meta:kde-svn

Portage 2.2

With Portage 2.2 you have the option of using sets.

To install KDE 4.2 using the set: emerge -vat @kde-4.2

To install all of KDE SVN using the set: emerge -vat @kde-svn

You can, of course, also install individual packages as desired using the normal syntax.

If you find any required packages which are not unmasked by the package.* files, please report them to the overlay maintainers (either via the website or the irc channel.

Installation Tuning

There are some known problems with the NVIDIA or ATI graphic drivers that cause KDE4 to have very bad performance. There are two Howtos in KDE-techbase that have workarounds or improvements for these Issues:

I recommend reading both.


Retrieved from ""

Last modified: Tue, 07 Oct 2008 09:39:00 +0000 Hits: 65,482