Xfce
Xfce is a lightweight and modular desktop environment based on GTK. To provide a complete user experience, it includes a window manager, a file manager, desktop and panel.
Installation
Install the xfce4 group. You may also wish to install the xfce4-goodies group which includes extra plugins and a number of useful utilities such as the mousepad editor. Xfce uses the Xfwm window manager by default.
Starting
Choose Xfce Session from the menu in a display manager of choice, or add exec startxfce4
to Xinitrc.
xfce4-session
executable directly; startxfce4
is the correct command which, in turn, calls the former when appropriate.Configuration
Xfce stores configuration options in Xfconf. There are several ways to modify these options:
- In the main menu, select Settings and the category you want to customize. Categories are programs usually located in
/usr/bin/xfce4-*
and/usr/bin/xfdesktop-settings
. xfce4-settings-editor
can see and modify all settings. Options modified here will take effect immediately. Usexfconf-query
to change settings from the commandline; see the documentation for details.- Settings are stored in XML files in
~/.config/xfce4/xfconf/xfce-perchannel-xml/
which can be edited by hand. However, changes made here will not take effect immediately.
Menu
See Xdg-menu for more info on using the Free Desktop menu system.
xfce4-whiskermenu-plugin (also part of xfce4-goodies) is an alternative application launcher. It shows a list of favorites, browses through all installed applications through category buttons, and supports fuzzy searching. After package being installed, it can replace Applications Menu as first item in Panel 1 (in Settings > Panel > Items add Whisker Menu).
To set a keyboard shortcut to launch the whisker menu, go to Settings > Keyboard and then the Application Shortcuts tab. Click on the Add button, set the command to xfce4-popup-whiskermenu
and assign the desired keyboard shortcut.
Edit entries
A number of graphical tools are available for this task:
- MenuLibre — An advanced menu editor that provides modern features in a clean, easy-to-use interface.
- Alacarte — Menu editor for GNOME
- XAME (XFCE Applications Menu Editor) — GUI tool written in Gambas designed specifically for editing menu entries in Xfce, it will not work in other environments. (Discontinued)
Alternatively, create the file ~/.config/menus/xfce-applications.menu
manually. See the example configuration below:
<!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN" "http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd"> <Menu> <Name>Xfce</Name> <MergeFile type="parent">/etc/xdg/menus/xfce-applications.menu</MergeFile> <Exclude> <Filename>xfce4-run.desktop</Filename> <Filename>exo-terminal-emulator.desktop</Filename> <Filename>exo-file-manager.desktop</Filename> <Filename>exo-mail-reader.desktop</Filename> <Filename>exo-web-browser.desktop</Filename> <Filename>xfce4-about.desktop</Filename> <Filename>xfhelp4.desktop</Filename> </Exclude> <Layout> <Merge type="all"/> <Separator/> <Menuname>Settings</Menuname> <Separator/> <Filename>xfce4-session-logout.desktop</Filename> </Layout> </Menu>
The <MergeFile>
tag includes the default Xfce menu.
The <Exclude>
tag excludes applications which we do not want to appear in the menu. Here we excluded some Xfce default shortcuts, but you can exclude firefox.desktop
or any other application.
The <Layout>
tag defines the layout of the menu. The applications can be organized in folders or however we wish. For more details see the Xfce wiki.
You can also make changes to the Xfce menu by editing the .desktop
files themselves. To hide entries, see Desktop entries#Hide desktop entries. You can edit the application's category by modifying the Categories=
line of the desktop entry, see Desktop entries#File example.
Set preferred applications
To change the default applications used for opening certain resources, use the Preferred Applications setting. This will change the behavior of exo-open
, which is invoked by resource openers such as xdg-open.
Desktop
Transparent background for icon titles
To change the default white background of desktop icon titles to something more suitable, create or edit ~/.gtkrc-2.0
:
style "xfdesktop-icon-view" { XfdesktopIconView::label-alpha = 10 base[NORMAL] = "#000000" base[SELECTED] = "#71B9FF" base[ACTIVE] = "#71B9FF" fg[NORMAL] = "#fcfcfc" fg[SELECTED] = "#ffffff" fg[ACTIVE] = "#ffffff" } widget_class "*XfdesktopIconView*" style "xfdesktop-icon-view"
Remove desktop icons
Issue the following command:
$ xfconf-query -c xfce4-desktop -v --create -p /desktop-icons/style -t int -s 0
To reinstate icons on the desktop, issue the same command with a value of 2.
One wallpaper across multihead
Open xfce4-settings-editor
and create a new property with the following settings:
Property: /backdrop/screen0/xinerama-stretch Type: Boolean Value: TRUE|1|Enabled
Kill window shortcut
Xfce does not have a shortcut to kill a window, for example when a program freezes.
With xorg-xkill, use xkill
to interactively kill a window. For the currently active window, use xdotool:
$ xdotool getwindowfocus windowkill
Alternatively:
$ sh -c "xkill -id $(xprop -root -notype | sed -n '/^_NET_ACTIVE_WINDOW/ s/^.*# *\|\,.*$//g p')"
To add the shortcut, use Settings > Keyboard or an application like xbindkeys.
Session
Autostart
To launch custom applications when Xfce starts up, click the Applications Menu > Settings > Settings Manager and then choose the Session and Startup option and click the tab Application Autostart. You will see a list of programs that get launched on startup. To add an entry, click the Add button and fill out the form, specifying the path to an executable you want to run.
Autostart application location paths are described in the XDG Autostart specification.
Alternatively, add the commands you wish to run (including setting environment variables) to xinitrc (or xprofile when a display manager is being used).
sleep 3 && command
does not work; a workaround is to use the syntax sh -c "sleep 3 && command"
Lock the screen
xflock4 is the reference Bash script which is used to lock an Xfce session.
It tries to lock the screen with either xfce4-screensaver (also part of xfce4-goodies), xscreensaver or light-locker. It consecutively looks for the corresponding binary or exits with return code 1 if it fails to find any of these.
The List of applications/Security#Screen lockers contains a short description of these screen lockers together with other popular applications. There is in this list an alternative locker, light-locker, which integrates particularly well with xfce4-power-manager. Once it is installed, Xfce Power Manager's setting gains an additional Security tab to configure light-locker and the existing Lock screen when system is going for sleep setting is relocated under this tab. In this new GUI, it is possible to set whether the session should be locked upon screensaver activity or whenever the system goes to sleep.
To have xflock4 run light-locker or any custom session locker, not among the five cited above, one must set LockCommand
in the session's xfconf channel to the command line to be used (the command inside the quotes in the following example can be adapted accordingly for other screen lockers):
$ xfconf-query --create -c xfce4-session -p /general/LockCommand -t string -s "light-locker-command --lock"
The panel lock button in the Action Buttons panel simply executes /usr/bin/xflock4
. It should work as expected as long as xflock4 is functioning i.e. one of the native lockers is installed or a custom locker is configured to integrate with it as proposed above.
Suspend
Whenever asked to suspend, Xfce executes the xfce4-session-logout(1) command with the suspend
option:
$ xfce4-session-logout --suspend
Whether or not the session is systematically locked on suspend can be configured through the xfconf properties or from the GUI.
To control this state using the CLI: there are two settings that are used, LockScreen
and lock-screen-suspend-hibernate
, in respectively the session and the power manager xfconf channels.
To prevent locking on suspend, turn them to false
:
$ xfconf-query -c xfce4-session -p /shutdown/LockScreen -s false $ xfconf-query -c xfce4-power-manager -p /xfce4-power-manager/lock-screen-suspend-hibernate -s false
Similarly, turn them to true
to lock the session on suspend.
The setting can also be controlled from the GUI: open the Session and Startup application and turn the flag Advanced > Lock screen before sleep on or off.
Whenever the suspend keyboard button is pressed, it can be handled by either Xfce's power manager or by systemd-logind. To give precedence to logind, the following xfconf setting must be set to true
:
$ xfconf-query --create -c xfce4-power-manager -p /xfce4-power-manager/logind-handle-suspend-key -t bool -s true
Disable saved sessions
Per user, saved sessions can be disabled by executing the following:
$ xfconf-query -c xfce4-session -p /general/SaveOnExit -s false
Then navigate to Applications > Settings > Session and Startup > Sessions and press the Clear saved sessions button to remove all previously saved sessions.
xfconf-query -c xfce4-session -p /general/SaveOnExit -n -t bool -s false
Alternatively, Xfce kiosk mode can be used to disable the saving of sessions systemwide. To disable sessions, create or edit the file /etc/xdg/xfce4/kiosk/kioskrc
and add the following:
[xfce4-session] SaveSession=NONE
If kiosk mode is not working, the user can set read-only permissions for the sessions directory:
$ rm ~/.cache/sessions/* && chmod 500 ~/.cache/sessions
This will prevent Xfce from saving any sessions despite any configuration that specifies otherwise.
Use a different window manager
The files specifying the default window manager are found in the following locations:
~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml
- per user/etc/xdg/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml
- systemwide
The default window manager for the user can be set easily using xfconf-query:
$ xfconf-query -c xfce4-session -p /sessions/Failsafe/Client0_Command -t string -sa xfsettingsd $ xfconf-query -c xfce4-session -p /sessions/Failsafe/Client1_Command -t string -sa wm_name
If you want to start the window manager with command line options, see the commands below:
$ xfconf-query -c xfce4-session -p /sessions/Failsafe/Client0_Command -t string -sa xfsettingsd $ xfconf-query -c xfce4-session -p /sessions/Failsafe/Client1_Command -t string -s wm_name -t string -s --wm-option
If you need more command line options, simply add more -t string
and -s --wm-option
arguments to the command.
Client0_Command
to wm_name
and Client1_Command
to xfsettingsd
, you can prevent xfce4-session-logout
from reverting to a default theme. However, you will need to manually set the cursor theme.If you want to change the default window manager systemwide, edit the file specified above manually, changing xfwm4 to the preferred window manager and adding more <value type="string" value="--wm-option"/>
lines for extra command line options if needed.
You can also change the window manager by autostarting wm_name --replace
using the autostart facility or by running wm_name --replace &
in a terminal and making sure the session is saved on logout. Be aware though that this method does not truly change the default manager, it merely replaces it at login. Note that if you are using the autostart facility, you should disable saved sessions as this could lead to the new window manager being started twice after the default window manager.
Theming
XFCE themes are available at xfce-look.org. Xfwm themes are stored in /usr/share/themes/theme_name/xfwm4
, and set in Settings > Window Manager. GTK themes are stored in /usr/share/themes/theme_name/gtk-2.0
and /usr/share/themes/theme_name/gtk-3.0
and are set in Settings > Appearance.
To achieve a uniform look for all applications, see Uniform look for Qt and GTK applications.
See also Cursor themes, Icons, and Font configuration.
Consistent Look Between SSD and CSD Windows
Xfce currently uses Server-Side Decorations (SSD) (see Wikipedia:Window decoration) themed by Xfwm for most windows and Client-side decoration (CSD) themed by the respective programs for Xfce Settings, Print, Save, and other dialogs.
Xfwm SSD window styles can be themed to match the CSD windows by manually adjusting or creating themes in /usr/share/themes/theme_name/xfwm4
or by using a tool such as the Xfwm4 Theme Generator which "Creates xfwm4 themes from client side decorations."
Reverting Client-Side Decorations
With Xfce 4.18, client-side decorations are optional and disabled by default. [1]
Non-Xfce applications may still use client-side decorations. To disable them globally, see GTK#Client-side decorations.
Sound
Sound themes
XFCE4 supports freedesktop system sounds, but it is not configured out of the box.
To enable a sound theme:
- Install libcanberra for PulseAudio support;
- "canberra-gtk-module" should be in the GTK_MODULES environment variable (re-login may be required);
- Check "Enable event sounds" in Settings Manager > Appearance > Settings tab;
- In the Settings Editor set "xsettings/Net/SoundThemeName" to a sound theme located in
/usr/share/sounds/
; - Turn on "System Sounds" in audio mixer (e.g. pavucontrol).
sound-theme-freedesktop provides a compatible sound theme, but it lacks many required events. A better choice is sound-theme-smoothAUR (SoundThemeName should be "Smooth").
Keyboard volume buttons
xfce4-pulseaudio-plugin provides a panel applet which has support for keyboard volume control and volume notifications. As an alternative, you can install xfce4-volumed-pulse, which also provides keybinding and notification control, but without an icon sitting in the panel. This is handy, for example, when using pasystray at the same time for a finer control.
Alternatively, xfce4-mixer also provides a panel applet and keyboard shortcuts which supports Alsa as well. Note however, that it is based on a feature of GStreamer 0.10 which has been abandoned in 1.0.
After installing the panels, you have to add it to the taskbar or the keyboard shortcuts will not work.
For non desktop environment specific alternatives, see List of applications/Multimedia#Volume control.
Shortcuts
If you are not using an applet or daemon that controls the volume keys, you can map volume control commands to your volume keys manually using Xfce's keyboard settings. For the sound system you are using, see the sections linked to below for the appropriate commands.
- ALSA: see Advanced Linux Sound Architecture#Keyboard volume control.
- PulseAudio: see PulseAudio#Keyboard volume control
- OSS: see OSS#Keyboard volume control.
Keyboard shortcuts
Keyboard shortcuts are defined in two places: Settings > Window Manager > Keyboard, and Settings > Keyboard > Shortcuts.
Polkit Authentication Agent
The polkit-gnome agent will be installed along with xfce4-session and autostarted automatically; no user intervention is required. For more information, see Polkit#Authentication agents.
A third party polkit authentication agent for Xfce is also available, see xfce-polkitAUR or xfce-polkit-gitAUR.
Display blanking
Some programs that are commonly used with Xfce will control monitor blanking and DPMS (monitor powersaving) settings. They are discussed below.
- Xfce Power Manager
Xfce Power Manager controls blanking and DPMS settings. These settings can be configured in the Power Manager GUI within the Display tab.
Note that when Display power management is turned off, DPMS is fully disabled, it does not mean that Power Manager will simply stop controlling DPMS. It does not disable screen blanking either. To disable both blanking and DPMS, right click on the power manager system tray icon or left click on the panel applet and make sure that the option labelled Presentation mode is ticked.
- XScreenSaver
If xscreensaver is installed and runs alongside Xfce Power Manager, it may not be clear which application is in control of blanking and DPMS as both are competing for control of the same settings. Therefore, in a situation where it is important that the monitor not be blanked (when watching a video for instance), it is advisable to disable blanking and DPMS through both applications. To know more about XScreenSaver options, see XScreenSaver#DPMS and blanking settings.
- xset
If neither of the above applications are running, then blanking and DPMS settings can be controlled using the xset command, see DPMS#Runtime settings.
Tips and tricks
Mounting support for Thunar and xfdesktop
If plugged external drives does not appear and installation partitions are shown as mounted devices, on the desktop and in Thunar, install gvfs. See Udisks#Hide selected partitions and Thunar#Automounting of large external drives for more advanced configuration options.
Screenshots
Xfce has its own screenshot tool, xfce4-screenshooter. It is part of the xfce4-goodies group.
Go to Applications > Settings > Keyboard, Application Shortcuts. Add the xfce4-screenshooter -f
(or -w
for the active window) command to use the Print
key in order to take fullscreen screenshots. See xfce4-screenshooter(1) for other optional arguments.
Alternatively, an independent screenshot program like scrot can be used.
Disable Terminal F1 and F11 shortcuts
The xfce terminal binds F1
and F11
to help and fullscreen, respectively, which can make using programs like htop difficult. To disable those shortcuts, create or edit its configuration file, then log out and log back in. F10
can disabled in the Preferences menu.
~/.config/xfce4/terminal/accels.scm
(gtk_accel_path "<Actions>/terminal-window/fullscreen" "") (gtk_accel_path "<Actions>/terminal-window/contents" "")
Terminal color themes or palettes
Terminal color themes or palettes can be changed in the GUI, under the Appearance tab in Preferences. These are the colors that are available to most console applications like Emacs, Vi and so on. The settings are stored individually for each user in their ~/.config/xfce4/terminal/terminalrc
file. There are many other themes to choose from. Check forum thread Terminal Colour Scheme Screenshots for hundreds of available choices and themes.
Changing default color theme
Xfce's xfce4-terminal package comes with a darker colour palette. To change this, append the following in your terminalrc file for a lighter color theme, that is always visible in darker Terminal backgrounds.
~/.config/xfce4/terminal/terminalrc
ColorPalette5=#38d0fcaaf3a9 ColorPalette4=#e013a0a1612f ColorPalette2=#d456a81b7b42 ColorPalette6=#ffff7062ffff ColorPalette3=#7ffff7bd7fff ColorPalette13=#82108210ffff
Terminal tango color theme
To switch to the tango color theme, edit:
~/.config/xfce4/terminal/terminalrc
ColorForeground=White ColorBackground=#323232323232 ColorPalette1=#2e2e34343636 ColorPalette2=#cccc00000000 ColorPalette3=#4e4e9a9a0606 ColorPalette4=#c4c4a0a00000 ColorPalette5=#34346565a4a4 ColorPalette6=#757550507b7b ColorPalette7=#060698989a9a ColorPalette8=#d3d3d7d7cfcf ColorPalette9=#555557575353 ColorPalette10=#efef29292929 ColorPalette11=#8a8ae2e23434 ColorPalette12=#fcfce9e94f4f ColorPalette13=#72729f9fcfcf ColorPalette14=#adad7f7fa8a8 ColorPalette15=#3434e2e2e2e2 ColorPalette16=#eeeeeeeeecec
Open URLs by middle mouse in terminal
On update to version 0.8 open URL with middle mouse turned off by default and just paste clip to cursor.
To enable old behavior fix next option in ${XDG_CONFIG_HOME}/xfce4/terminal/terminalrc
(XDG_CONFIG_HOME=${HOME}/.config
by default)
${XDG_CONFIG_HOME}/xfce4/terminal/terminalrc
[Configuration] MiscMiddleClickOpensUri=TRUE
env-modules autocompletion in Terminal
The env-modulesAUR package provides shell autocompletion for login shells. However, by default, sessions in xfce4-terminal
are not considered as login. To enable autocompletion for Environment Modules, tick the corresponding checkbox in Preferences or just change CommandLoginShell
to TRUE
in ~/.config/xfce4/terminal/terminalrc
.
Colour management
Xfce has no native support for colour management. [4] See ICC profiles for alternatives.
Multiple monitors
Xfce has support for multiple monitors, which can be configured in the Applications > Settings > Display dialog. In the Advanced tab, one can save profiles for different monitors and have them applied automatically as soon as the connected monitors change. For more information, see the display article from the Xfce documentation.
Alternatively, one can use arandr to manage display configurations in the form of xrandr commands which can be assigned to Xfce keyboard shortcuts.
SSH agents
By default, Xfce 4.10 will try to load gpg-agent or ssh-agent, in that order, during session initialization. To disable this, create an xfconf key using the following command:
$ xfconf-query -c xfce4-session -p /startup/ssh-agent/enabled -n -t bool -s false
To force using ssh-agent even if gpg-agent is installed, run the following instead:
$ xfconf-query -c xfce4-session -p /startup/ssh-agent/type -n -t string -s ssh-agent
To use GNOME Keyring, simply tick the checkbox Launch GNOME services on startup in the Advanced tab of Session and Startup in Xfce's settings. This will also disable gpg-agent and ssh-agent.
Source: https://docs.xfce.org/xfce/xfce4-session/advanced
Scroll a background window without shifting focus on it
Go to Main Menu > Settings > Window Manager Tweaks > Accessibility tab. Uncheck Raise windows when any mouse button is pressed.
$ xfconf-query --channel xfwm4 --property /general/raise_with_any_button --set false
Mouse button modifier
By default, the mouse button modifier in Xfce is set to Alt
. This can be changed with xfconf-query. For instance, the following command will set the Super
key as the mouse button modifier:
$ xfconf-query -c xfwm4 -p /general/easy_click -n -t string -s "Super"
Strictly speaking, using multiple modifiers is not supported. However, as a workaround, multiple modifiers can be specified if the key names are separated with ><
. For instance, to set Ctrl+Alt
as the mouse button modifier, you can use the following command:
$ xfconf-query -c xfwm4 -p /general/easy_click -n -t string -s "Ctrl><Alt"
Set the two fingers click to middle click for a touchpad
If you want the 2 finger click on the touchpad to do a middle click, create or edit the following file:
~/.config/xfce4/xfconf/xfce-perchannel-xml/pointers.xml
<channel name="pointers" version="1.0"> <property name="SynPS2_Synaptics_TouchPad" type="empty"> <property name="Properties" type="empty"> <property name="Synaptics_Tap_Action" type="array"> <value type="int" value="0"/> <value type="int" value="0"/> <value type="int" value="0"/> <value type="int" value="0"/> <value type="int" value="1"/> <value type="int" value="2"/> <value type="int" value="3"/> </property> </property> </property> </channel>
The 2 in the array is the middle click.
Limit the minimum brightness of the brightness-slider
Limiting the minimum brightness can be useful for displays which turn off backlight on a brightness level of 0. In xfce4-power-manager 1.3.2
a new hidden option had been introduced to set a minimum brightness value with a xfconf4-property. Add brightness-slider-min-level
as an int property in xfconf4. Adjust the int value to get a suitable minimum brightness level.
$ xfconf-query --channel xfce4-power-manager --property '/xfce4-power-manager/brightness-slider-min-level' --create --type int --set 0
Adding profile pictures
To add profile pictures for each user to be displayed in the whisker-menu, simply place a 96x96 PNG file in /home/user/.face
.
Image editing programs like GIMP can be used to scale your favourite images down to 96x96 and convert it.
Power manager plugin label
The xfconf option show-panel-label
of type int
controls the label of the power manager, it can be configured for different label formats: it can be set to 0 (no label), 1 (percentage), 2 (remaining time) or 3 (both).
It is also accessible through the power manager plugin GUI in Properties > Show label
Using the Windows (Super) key for shortcuts
The Super
key is treated as a modifier key, like Ctrl
and Alt
, instead of producing a keypress. Assigning an action to it will keep you from using it for other shortcuts, because it will trigger that action in addition to whatever else you assign to it.
To get around this, and make it more useful for shortcuts, install the application xcape. This lets you configure modifier keys to act as other keys when pressed and released on their own.
Next, go to Settings > Keyboard > Application Shortcuts and assign an unused key combination, say Alt+F1
, to the Application menu (or whatever action you want when you press the Super key by itself). Test that it works.
Next, use xcape to assign Alt+F1
to the Super
key:
$ xcape -e 'Super_L=Alt_L|F1'
Check that the Super key now performs the action you assigned to Alt+F1
.
If all is well, make this an autostart action; go to Settings > Session and Startup > Application Autostart tab, press the Add button and enter the command there to make it run every time you start Xfce (if xcape was already installed, also check that there is not already a similar entry registered).
Now, you can freely use the Super
key in shortcuts.
For example: In Window Manager > Keyboard, you can use Super
and Up
or Down
for Raise window or Lower window.
Add more volume steps in pulseaudio-plugin
For finer adjustments of audio volume first query the plugin number with
$ xfconf-query -c xfce4-panel -lv | grep pulseaudio
If the command returns plugin-18
then run the command
$ xfconf-query -c xfce4-panel -p /plugins/plugin-18/volume-step --create -t int -s 1
To reduce volume steps simple change the number after -s
to a higher value
Using the experimental Wayland support
Xfce supports both labwcAUR and wayfireAUR as it's Wayland compositor. However only labwc works out of the box; wayfire requires additional tweaking to the session file to make it work. For this purpose I decided to focus this section on getting Xfce working with labwc as it requires the least effort to get Xfce working in Wayland.
To use Xfce, you will need to install labwc from AUR. After doing so you should be able to switch to the Xfce Session (Wayland) option in your Desktop Manager of choice and log in as usual. Note that wayland support is marked as experimental for a good reason: things will not work like you expect it to. For example, the guake dropdown terminal cannot capture the key chord required to toggle it's visibility. Additionally desktop icons placed by xfdesktop may appear and disappear as the desktop gain and lose focus.
Troubleshooting
Desktop icons rearrange themselves
At certain events (such as opening the panel settings dialog) icons on the desktop rearrange themselves. This is because icon positions are determined by files in the ~/.config/xfce4/desktop/
directory. Each time a change is made to the desktop (icons are added or removed or change position) a new file is generated in this directory and these files can conflict.
To solve the problem, navigate to the directory and delete all the files other than the one which correctly defines the icon positions. You can determine which file defines the correct icon positions by opening it and examining the locations of the icons. The topmost row is defined as row 0
and the leftmost column is defined by col 0
. Therefore an entry of:
[Firefox] row=3 col=0
means that the Firefox icon will be located on the 4th row of the leftmost column.
GTK themes not working with multiple monitors
Some configuration tools may corrupt displays.xml, which results in GTK themes under Applications Menu > Settings > Appearance ceasing to work. To fix the issue, delete ~/.config/xfce4/xfconf/xfce-perchannel-xml/displays.xml
and reconfigure your screens.
Users may find that icons do not appear when right-clicking options within some applications, including those made with Qt. This problem only appears to happen within Xfce. Run these two commands:
$ gconftool-2 --type boolean --set /desktop/gnome/interface/buttons_have_icons true $ gconftool-2 --type boolean --set /desktop/gnome/interface/menus_have_icons true
Modifying setting does not take effect
If you are running a separate Xsettings daemon, it may make some configuration not taking effect. Disable it by removing or commenting the corresponding line and restart Xorg.
NVIDIA and xfce4-sensors-plugin
To detect and use the sensors of an NVIDIA GPU, install libxnvctrl and then rebuild xfce4-sensors-plugin with ABS. Another option is xfce4-sensors-plugin-nvidiaAUR which replaces xfce4-sensors-plugin.
Black screens at boot with NVIDIA and multiple monitors
Using NVIDIA, multiple monitors and NVIDIA/Troubleshooting#Avoid screen tearing may result as a black screen when booting Xfce. The screens' position conflict into the files /etc/X11/xorg.conf
and ~/.config/xfce4/xfconf/xfce-perchannel-xml/displays.xml
. Deleting the displays.xml
file fixes the behavior.
$ rm ~/.config/xfce4/xfconf/xfce-perchannel-xml/displays.xml
Panel applets keep being aligned on the left
Add a separator someplace before the right end and set its "expand" property. [5]
Preferred Applications preferences have no effect
Most applications rely on xdg-open for opening a preferred application for a given file or URL.
In order for xdg-open and xdg-settings to detect and integrate with the Xfce desktop environment correctly, you need to install the xorg-xprop package.
If you do not do that, your preferred applications preferences (set by exo-preferred-applications) will not be obeyed. Installing the package and allowing xdg-open to detect that you are running Xfce makes it forward all calls to exo-open instead, which correctly uses all your preferred applications preferences.
To make sure xdg-open integration is working correctly, ask xdg-settings for the default web browser and see what the result is:
# xdg-settings get default-web-browser
If it replies with:
xdg-settings: unknown desktop environment
it means that it has failed to detect Xfce as your desktop environment, which is likely due to a missing xorg-xprop package.
Restore default settings
If for any reason you need to revert back: to the default settings, rename ~/.config/xfce4-session/
and ~/.config/xfce4/
$ mv ~/.config/xfce4-session/ ~/.config/xfce4-session-bak $ mv ~/.config/xfce4/ ~/.config/xfce4-bak
Relogin for changes to take effect. If you get Unable to load a failsafe session
upon login, see the #Session failure section.
Session failure
Symptoms include:
- The mouse is an X and/or does not appear at all;
- Window decorations have disappeared and windows cannot be closed;
- (
xfwm4-settings
) will not start, reportingThese settings cannot work with your current window manager (unknown)
; - Errors reported by a display manager such as
No window manager registered on screen 0
. - Unable to load a failsafe session:
Unable to load a failsafe session. Unable to determine failsafe session name. Possible causes: xfconfd is not running (D-Bus setup problem); environment variable $XDG_CONFIG_DIRS is set incorrectly (must include "/etc"), or xfce4-session is installed incorrectly.
Restarting Xfce or rebooting your system may solve the problem, but a corrupt session could also be the cause. Delete the session folder:
$ rm -r ~/.cache/sessions/
Also make sure that the relevant folders in $HOME
are owned by the user starting xfce4
. See Chown.
Fonts in window title crashing xfce4-title
Install ttf-droid and ttf-dejavu. See also FS#44382.
Laptop lid settings ignored
You may find that the lid close settings in Xfce4 Power Manager are ignored, meaning that the laptop will always suspend on lid close, no matter what settings are chosen in the power manager. This is because the power manager is not set to handle lid close events by default. Instead, systemd-logind handles the lid close event. To change this behavior so that the power manager handles lid close events, execute the following command:
$ xfconf-query -c xfce4-power-manager -p /xfce4-power-manager/logind-handle-lid-switch -s false
logind-handle-lid-switch
setting will get set to true when changes are made to the laptop lid actions or the lock on suspend setting. See [6]. In this case, you will need to toggle logind-handle-lid-switch
to false again.User switching action button is greyed out
The Switch User action button assumes that the gdmflexiserver executable (provided by GDM) exists. Thus, if GDM is not being used, the button will be greyed out. See the upstream bug report.
A possible workaround is to create an executable script called gdmflexiserver in /usr/bin
or /usr/local/bin
which calls the greeter switch command provided by the display manager which is being used.
- For LXDM - LXDM#Simultaneous users and switching users.
- For LightDM - LightDM#User switching.
Macros in .Xresources not working
Xfce loads $HOME/.Xresources
file using xrdb
, but with -nocpp
option to skip preprocessing. For macros to work properly, copy /etc/xdg/xfce4/xinitrc
to $HOME/.config/xfce4
directory and remove -nocpp
option to xrdb
from the resulting file. See the related forum topic.
Cursor theme does not change on login
Ensure the system-wide XDG cursor is set to your desired cursor theme — see Cursor themes#The default cursor theme.
Run the following to make it visible:
$ gsettings set org.xfce.mousepad.preferences.window menubar-visible true
Trash icon not visible and trash applet does not work
Trash requires the optional dependency gvfs to work. Install gvfs and reboot the system.
Desktop turns grey and all desktop icons disappear
Delete ~/.cache/sessions
by running:
$ rm -rf ~/.cache/sessions
Restart Xfce afterwards.
Weather plugin forgets labels
This is a known bug. The workaround is to make a backup of config files and recover them when the problem occurs. You can use scripts from this bug report.
See also
- Xfce - Documentation
- Xfce - Wiki
- Xfce - About
- Xfce - Tour
- Wikipedia:Xfce
- Xfce-Look - Themes, wallpapers, and more.
- Xfce Wikia