Xfce/Guide

This guide provides an extensive introduction to Xfce, a fast, lightweight, full-featured desktop environment.

The Xfce desktop environment
Xfce is a fast, lightweight desktop environment for Unix-like operating systems. It is designed for productivity, and is quite configurable while still adhering to the Freedesktop specifications.

Unlike heavier desktop environments, such as Gnome and KDE, Xfce uses far fewer system resources. Additionally, it offers greater modularity and fewer dependencies; it takes up less space on your hard disk and takes less time to install.

This guide will not only show you how to install and configure a minimal Xfce environment, but will also explore options to create a full-featured desktop in keeping with the Xfce philosophy: light, fast, and modular.

The last part of this guide lists a few commands to run after upgrading to a new Xfce release, so be sure to follow them if you are upgrading from an older version.

The basics
First, make sure you've configured Xorg as shown in the X Server Configuration Howto.

Next, double-check your USE flags in ; you'll probably at least want.

Now that you've set your  variables in , it's time to install Xfce.

Next, add your regular user(s) to the ,   , and   groups, so that they can mount and use devices such as cameras, optical drives, and USB sticks.

Next, update your environment variables:

You'll also need a graphical terminal so that you can continue working with your new desktop environment. is a good choice, as it's made specifically for Xfce. Install Terminal as shown:

Starting Xfce
Now that Xfce is now installed, we'll configure it to be the default desktop environment when we issue the  command. Exit your root shell and log on as a regular user.

Now start your graphical environment by typing  :

Congratulations, and welcome to your new Xfce desktop environment. Go ahead, explore it a bit. Then continue reading to learn how you can configure Xfce to suit your needs.

Sessions & startup
If you've installed (or plan to install) popular Gnome or KDE applications such as ,   ,   ,   , etc. then you should make sure that Xfce launches the appropriate services for these at startup. Navigate to Menu --> Settings --> Sessions & Startup. On the "Advanced" tab, select the appropriate checkbox. This might slightly increase Xfce startup times, but it decreases load times for KDE and Gnome applications.

Xfce has the ability to save your session settings and running programs from the "General" tab in the Sessions & Startup menu. They can be automatically saved when you logout, or Xfce can ask you each time. This feature is particularly useful for undoing configuration mistakes. Accidentally killed a panel? Just select "No" when prompted to save your current session, and the next time you start Xfce, your old desktop is restored. Want to automatically launch your open webbrowser, terminal, and email client the next time you login? Just save your session before logging out.

You've now got a basic working environment installed and configured. But if you're interested in doing more, then continue reading!

Panel plugins
In this chapter, we'll discuss some useful plugins and applications for everyday use within Xfce.

There are many plugins for the panel available in Portage; see for yourself with. Though for the most part their names are self-explanatory, a few deserve extra attention, as they are quite helpful. To use them, simply  them. They'll be added to the list of available items in the "Add New Items" menu shown when you right-click on the panel.


 * is perfect for laptop users. It displays battery percentage, time remaining, power source (AC or battery), fan status, warnings, and can even be configured to execute commands at certain power levels. This feature can be used to put the laptop into hibernate mode when the battery is almost exhausted.
 * is a small command line embedded into the panel. It's quicker than opening up another terminal when you want to run a command.
 * gives you a handy method of mounting devices listed in just by clicking your mouse
 * lets you monitor your hardware sensors, such as CPU temperature, fan RPM, hard drive temp, motherboard voltage, and more

Useful programs
We should now  some useful applications and utilities:  ,   ,   ,   ,   ,   ,   , and.

is a volume control for your sound card. It can also be run as a panel applet, giving you fast access to playback volume. displays a list of all running programs, and the CPU and memory consumption each one takes up. By right-clicking an item, you can kill a misbehaving application, pause and restart it, or even alter its runtime priority, which lets you fine-tune how much of a demand it puts on your system's resources.

adds several window manager themes. You may want to add a more full-coverage icon theme such as just to round out your desktop.

is a simple, handy calendar. is a barebones text editor that starts up extremely quickly.

is an application to monitor and manage power usage. This is especially important for laptops! The power manager allows you to adjust screen brightness, choose maximum performance or battery-saving modes, and setup hibernate, suspend, and shutdown actions when the lid is shut or buttons are pressed. You can setxfce4-power-manager to warn you when your battery reaches certain levels, or even turn off your machine. The application comes with a couple of helpful panel plugins to display battery/charging status, and a brightness control.

is an X11 terminal emulator, far more configurable and useful than the barebones. supports Unicode text, color schemes, pseudo-transparency and hardware-accelerated transparency via Xfce's built-in compositor, all out-of-the-box. Just make sure that the default action on the terminal launcher of your panel runs instead of. Right-click the launcher and choose "Properties" to change the command.

is Xfce's default graphical file manager. It's fast yet quite powerful, can support several plugins for even more functionality; just install them with. Let's take a look:


 * lets you create and extract archive files using the right-click menu. It provides a handy front-end for graphical archiving applications such as  and.
 * lets you preview certain types of files from within Thunar, such as images and fonts.
 * automatically manages removable media and drives.

Next, let's see about adding some useful but lightweight desktop applications, in keeping with Xfce's philosophy.

Though  is nice enough as a basic text editor, if you need a full-featured word processor but don't want the bloat of LibreOffice, try emerging. AbiWord is lighter, faster, and is completely interoperable with industry-standard document types.

Need a nice email client/newsreader that isn't as demanding as  or   ? Try emerging.

For your internet chat needs,  is an excellent, tiny, incredibly configurable IRC client that runs in your terminal. If you prefer a compact all-in-one client that handles nearly all chat protocols, you may want to.

If you need movie and music players, look no further than  and decibel-audio-player. They can play most every media format available quite nicely.

Finally, you'll need a webbrowser. Nearly all graphical webbrowsers require more resources than most of your other desktop applications. Still,  and   are always good choices. Alternatively, you may find  to be quite fast. However,  is not available on as many processor architectures as  , and it has more dependencies unless you override them with a few USE flags.

Now that we've explored some good suggestions for rounding out your desktop applications, let's see what else we can do to enhance your Xfce experience.

Graphical login
Remember when we added  to our  ? All you have to do to get into your desktop is type  after logging in. This is fine if you prefer a completely text-based boot and login, but let's use a display manager that will automatically start Xfce after booting (so that you can login graphically).

First, let's make sure Xfce loads at boot:

We aren't quite finished yet. We have to pick a display manager and set the appropriate variable. Though there are a few choices available in Portage, for this guide, we'll stick with SLiM, the Simple Login Manager.

is speedy and lightweight, with minimal dependencies. Perfect for Xfce!

Then edit the DISPLAYMANAGER variable in :

SLiM can automatically start your Xfce session if you add  to  :

Beautifying your desktop
A little customization of your desktop's appearance can go a long way. Xfce has all the options you'd expect from a modern desktop environment, font antialiasing settings, color schemes, dozens of window decorations, themes, and more. If these aren't enough, it's easy to install third-party themes, icon sets, mouse cursor themes, and wallpapers.

A selection of nice Gentoo wallpapers in a variety of resolutions are hosted on the Gentoo website. If you're looking for icon sets and complete Xfce themes, Xfce-Look has a huge collection. The important thing to remember about any third-party eyecandy you download is that it will usually first need to be unpacked and then installed to the proper directory. Icon sets go in, and themes go to  ; use these directories when you want all users to be able to access themes and icon sets. Individual users can install themes and icon sets to and.

If you installed SLiM as your display manager, there are lots of themes in the  package available in Portage. Also, be sure to check the SLiM themes page for more themes. Creating your own SLiM theme is fairly easy; just read the Themes HowTo. Gentoo also ships a  package that you can.

Finally, Xfce has its own built-in compositor to manage window transparency. This option can be found in Menu --> Settings --> Window Manager. For best performance, you will need to be running a graphics card with drivers that support hardware-accelerated rendering. Make sure you emerged  with the   USE flag. Next, you will need to enable compositing in by adding the following section:

This is the bare minimum configuration required for Xfce and Xorg-X11. However, setting up hardware-accelerated rendering depends on your individual graphics card, and is beyond the scope of this guide. Please see the other guides in the Desktop Documentation Resources list to learn about configuring hardware-accelerated rendering for your graphics card.

Once you've finished setting up a beautiful Xfce desktop, the next thing to do is take a picture of it to share with other folks! Just install  and post your pictures somewhere for all to admire.

Summary
Congratulations on making it this far! You've installed and configured a speedy desktop environment with a solid suite of applications for your computing needs.

Upgrading Xfce
If you're upgrading Xfce from earlier major versions (4.x), then you will need to remove your old cached sessions and profiles as they are incompatible with new releases. For each of your users, run the following commands to remove your old incompatible cached sessions and profile:

Users will be greeted with a new and shiny interface, but will lose many of their individual settings. Sadly, no migration of configuration(s) exist that we know of.

Resources
Need additional help on configuring and using Xfce? Need more lightweight application suggestions? Try checking out:


 * The Gentoo forums
 * #xfce on irc.freenode.net
 * The installed help files and other documentation provided by Xfce: . Just point your browser at it and start reading. There are even a lot of "hidden" configuration options detailed in the help files.
 * Xfce's home page

Acknowledgements
We would like to thank the following authors and editors for their contributions to this guide:


 * nightmorph