Revision as of 20:33, December 21, 2012 by Daniel Robbins (Talk)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

About Xfce

Xfce is a lightweight desktop environment for UNIX-like operating systems. It aims to be fast and low on system resources, while still being visually appealing and user friendly.

Xfce embodies the traditional UNIX philosophy of modularity and re-usability. It consists of a number of components that provide the full functionality one can expect of a modern desktop environment. They are packaged separately and you can pick among the available packages to create the optimal personal working environment.

Another priority of Xfce is adhereance to standards, specifically those defined at freedesktop.org. <ref>http://www.xfce.org/about/</ref>


Before emerging Xfce you need to:

  • Check that you have enabled the USE flags necessary for a desktop environment. You can either set your profile to "desktop" or you can edit your make.conf:
# nano -w /etc/make.conf
USE="-minimal dbus consolekit jpeg libnotify lock session startup-notification svg thunar udev X"

We are now ready to install Xfce. Install the meta-package, which pulls in all of the components you need for a minimal Xfce installation:

#  emerge xfce4-meta

Running Xfce

There are several different ways to start Xfce:

  • Typing the command startxfce4 at the console.
  • Editing the .xinitrc file in your user's home directory.
  • Using a display manager (e.g. SLiM, GDM, and KDM).
  • Configuring your shell profile to automatically start Xfce upon a successful login.


The most common way to start the environment is to configure ~/.xinitrc to launch an Xfce session. The proper way to launch Xfce from the terminal is by using startxfce4.

$ echo "exec ck-launch-session startxfce4" > ~/.xinitrc

Note that ck-launch-session (from ConsoleKit) is required by Xfce for important tasks such as shutting down, suspending, and automatically mounting removable storage media. Some applications will not work properly without it. Therefore we need to add ConsoleKit to the default runlevel, executing the following command as root:

# rc-update add consolekit default

Finally, to start the graphical environment:

$ startx

Display manager

A display manager is a program that manages sessions and acts as a login screen. Here's a short list of a few of the display managers available in Funtoo:

  • XDM (x11-apps/xdm): X.Org's standard display manager.
  • LightDM (x11-misc/lightdm): A lightweight, but highly configurable display manager.
  • SLiM (x11-misc/slim): Simple Login Manager -- a lightweight display manager. Not very configurable.

Any of these would make a fine choice. After you've chosen which display manager to use, install it:

# emerge lightdm

All that's left to do now is to add the name of the display manager to /etc/conf.d/xdm, add the xdm service to the default runlevel, and start the service:

# nano -w /etc/conf.d/xdm

# rc-update add xdm default
# /etc/init.d/xdm start