Xfce

Xfce is Article description::a lightweight [[desktop environment built to be fast, good looking, and user friendly.]]

Selecting a profile
Using the basic desktop profile will provide a good set of defaults for Xfce. Other profiles can be used, but this gives a good balance between dependencies and usability, all else aside. To select the desktop profile:

Avoiding unnecessary dependencies
The package will be pulled in as a dependency when emerging Xfce. On desktop profiles, this package will use the  USE flag by default, and so will pull in Qt dependencies that may not be needed for Xfce. One way to avoid this is to disable this USE flag for poppler:

Of course,  can also added to, to unset the flag globally, if desired.

xfce4-notifyd
This is an optional step to install in place of. Skip this next section if the choice of notification daemon is unimportant.

Emerging will pull in the  dependency. This virtual dependency is designed to insure that Xfce will be provided with a notification-daemon, whatever suitable software the user chooses to fulfill this role.

By default, will satisfy this dependency by drawing in GNOME's  package. Xfce users may prefer to use, if a notification-daemon has not already been installed.

By installing before emerging Xfce, the virtual package  will use, and pull in no other packages. Use the  option to avoid adding xfce4-notifyd to the world file:

Now proceed with the installation.

Emerge
Emerge for a default set of Xfce packages, to get a reasonably complete desktop environment:

The package will provide the following user-facing applications, plus some libraries and system software:

Too see everything that is installed by, see the dependency tab for that package on pgo.

It is not strictly necessary to use, Xfce can be "custom built" by installing just the desired components, but be aware that this requires some knowledge of what is needed.

Additional software
There are a number of additional applications that are part of the Xfce project and are of note:

The following applications work well in Xfce to round out a basic desktop environment:

This is a partial selection of packages available in the Gentoo repository, see p.g.o/categories/xfce-extra, or use eix, to see packages from the xfce-extra category that may be of interest. See also https://www.xfce.org/projects/ for more information.

Launching Xfce
Xfce can either be run from a terminal after login, launched automatically after login, or be started by a graphical display manager that will greet the user and ask for login details.

Starting Xfce without a display manager
and are two of the readily available options for starting Xfce without using a display manager.

This is a partial selection of packages available in the Gentoo repository, see p.g.o/categories/xfce-extra, or use eix, to see packages from the xfce-extra category. See also https://www.xfce.org/projects/ for more information.

startx
When using, create an file with the following contents:

If experiencing authorization or permissions issues, see the troubleshooting section.

startxfce4
To launch the Xfce4 desktop, simply type at the command-line and press enter:

Display managers
It is possible to use a display manager to start Xfce. Please refer to the display manager article to configure a display manager.

Most display managers use files to configure available sessions. The following is an example desktop file:

The desktop file can be placed in the right location for the display manager.

Configuration
Xfce is a desktop environment and as such can be tuned and tailored to the needs of (almost) every user. In this section, a number of popular (or more challenging) aspects are covered.

Volume keys
Install to manage the volume keys:

may be an option for systems not using.

Alternatively, custom keys can be bound to by running :


 * button: amixer set Master 5%+
 * button: amixer set Master 5%-
 * button: amixer set Master toggle

Consistent GTK 3 themes
One option is to use the Greybird theme, which has support for GTK 2, GTK 3, xfwm4, emerald, and metacity:

Go to ->  ->. Or run. Select "Greybird" from the "Style" list.

Now GTK 2 and GTK 3 applications should have a consistent look.

Other themes
Other themes available in Portage that are compatible with XFCE can be emerged with the following list:

Enable vertical window snapping
Most modern desktop environments have vertical window snapping enabled by default. This is also possible in Xfce, but not by default. To enable, navigate to: →  →.


 * Make sure the "Snap windows to screen border" checkbox has been checked.
 * Make sure the checkboxes under "Wrap workspaces when reaching the screen edge" have been unchecked. These interfere with vertical window snapping.

Once the checkboxes are set it should be now possible to drag a window to the right or left side of the screen, which should cause the window to resize to 50% of the screen width.

Keyboard shortcuts can be set in order to do this via the typical + or + behavior. Navigate to →  →.

Set the "Tile window to the left" and "Tile window to the right" actions with the + and + key combinations respectively.

Audio mixer complains about missing pavucontrol binary
Clicking the speaker (audio) icon in the panel and then selecting results in a message saying "pavucontrol binary not found".

The solution is to install :

Xfce4-screensaver unable to unlock
Xfce-screensaver uses gnome-keyring by default to authenticate. By applying the installation method above, gnome-keyring will not be pulled and pam will be unable to service the default configuration installed in /etc/pam.d/xfce4-screensaver. Either pull gnome-keyring, otherwise the file should be modified to allow system-auth to be used on passwords:

Authorization or permissions issues
When experiencing authorization or permissions issues within xfce4 in an OpenRC profile (symptoms include being unable to open power manager and unable to suspend/hibernate) make sure that is installed and properly configured, and that the   USE flag is globally enabled.

If launching with startx, replace the appropriate line in with the following: