Difference between revisions of "Xfce"

From ArchWiki
Jump to: navigation, search
m (Bluetooth functionality: apparently the gnome deps aren't enough to warrant mentioning)
(Rendering issues with Adwaita theme: remove section, bugs should be filed anyway)
 
(386 intermediate revisions by 72 users not shown)
Line 3: Line 3:
 
[[de:Xfce]]
 
[[de:Xfce]]
 
[[es:Xfce]]
 
[[es:Xfce]]
 +
[[fa:Xfce]]
 
[[fr:Xfce]]
 
[[fr:Xfce]]
 
[[it:Xfce]]
 
[[it:Xfce]]
Line 8: Line 9:
 
[[pl:Xfce]]
 
[[pl:Xfce]]
 
[[ru:Xfce]]
 
[[ru:Xfce]]
[[tr:Xfce_Masaüstü_Ortamı]]
+
[[tr:Xfce Masaüstü Ortamı]]
 
[[uk:Xfce]]
 
[[uk:Xfce]]
 
[[zh-CN:Xfce]]
 
[[zh-CN:Xfce]]
 +
[[ko:Xfce]]
 
{{Related articles start}}
 
{{Related articles start}}
{{Related|Desktop Environment}}
+
{{Related|Desktop environment}}
{{Related|Window Manager}}
+
{{Related|Window manager}}
 
{{Related|Xfwm}}
 
{{Related|Xfwm}}
 
{{Related|Thunar}}
 
{{Related|Thunar}}
Line 20: Line 22:
 
{{Related articles end}}
 
{{Related articles end}}
  
From [http://www.xfce.org/about/ Xfce - About]:
+
[http://www.xfce.org Xfce] is a lightweight and modular [[Desktop environment]] currently based on GTK+ 2. To provide a complete user experience, it includes a window manager, a file manager, desktop and panel.
  
:''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.''
+
== Installation ==
  
Xfce is a lightweight and modular [[Desktop Environment]] currently based upon GTK+ 2 though in the future it may be ported to GTK+ 3. Xfce contains a suite of applications such as a window manager, a file manager, and a panel to provide a complete user experience. Xfce is popular with many users, partly because it is lightweight but also because a large amount of settings are exposed in a GUI. This is in sharp contrast to desktops such as GNOME Shell which hide many settings from the user.
+
[[Install]] the {{Grp|xfce4}} group. You may also wish to install the {{Grp|xfce4-goodies}} group which includes extra plugins and a number of useful utilities such as the {{Pkg|mousepad}} editor. Xfce uses the [[Xfwm]] window manager by default.
 
+
==Installation==
+
Xfce can be installed from the {{Grp|xfce4}} group which is available in the official repositories. It is highly recommended that you install the {{Grp|xfce4-goodies}} group as well which includes extra plugins and a number of useful utilities such as the {{Pkg|mousepad}} editor.
+
  
 
== Starting Xfce ==
 
== Starting Xfce ==
=== Graphical login ===
 
Simply choose ''Xfce Session'' from the menu in you favourite [[display manager]].
 
 
=== Virtual console ===
 
 
There are two methods to start Xfce manually:
 
 
* Run {{ic|startxfce4}} directly from the console.
 
* Configure {{ic|~/.xinitrc}} to {{ic|exec startxfce4}} and then run {{ic|xinit}} or {{ic|startx}} from the console. See [[xinitrc]] for details.
 
  
{{Note|The proper command for launching Xfce is {{ic|startxfce4}}, do not start {{ic|xfce4-session}} directly.}}
+
Choose ''Xfce Session'' from the menu in a [[display manager]] of choice, or add {{ic|exec startxfce4}} to [[Xinitrc]].
  
{{Tip|You can have Xfce started automatically at login by following [[Start X at Login]].}}
+
{{Note|Do not call the {{ic|xfce4-session}} executable directly; {{ic|startxfce4}} is the correct command which, in turn, calls the former when appropriate.}}
  
 
== Configuration ==
 
== Configuration ==
===Xfconf settings===
 
Xfconf is XFCE's system for storing configuration options, and most XFCE configuration is done by editing settings in Xfconf (one way or another). There are several ways to modify these settings:
 
* The most obvious and easiest way is to go to "Settings" in the main menu and select the category you want to customize. However, not all customization options are available this way.
 
* A less user-friendly but more general way is to go to {{bc|Main menu -> Settings -> Settings Editor}} where you can see and modify all the customization options. Any settings modified here will take effect immediately. The Settings Editor can also be launched from the command line by invoking {{ic|xfce4-settings-editor}}.
 
* Customization can be done completely from the command line using the program {{ic|xfconf-query}}. See [http://docs.xfce.org/xfce/xfconf/xfconf-query the XFCE online documentation] for more information and examples and the rest of this wiki page for more examples. Settings changed here will take effect immediately.
 
* The settings are stored in XML files in {{ic|~/.config/xfce4/xfconf/xfce-perchannel-xml/}} which can be edited by hand. However, changes made here will not take effect immediately.
 
* For more information: [http://docs.xfce.org/xfce/xfconf/start Xfconf documentation]
 
  
==== Graphical Settings Manager Commands ====
+
Xfce stores configuration options in [http://docs.xfce.org/xfce/xfconf/start Xfconf]. There are several ways to modify these options:
There is no official documentation for the commands executed. One must look at {{ic|.desktop}} files {{ic|/usr/share/applications/}} folder. For the people who like to know exactly what is happening, here is a handy list to save the effort:
+
  
xfce4-accessibility-settings
+
* In the main menu, select [http://docs.xfce.org/xfce/xfce4-settings/start Settings] and the category you want to customize. Categories are programs usually located in {{ic|/usr/bin/xfce4-*}} and {{ic|/usr/bin/xfdesktop-settings}}.
xfce4-power-manager-settings
+
* {{ic|xfce4-settings-editor}} can see and modify all settings. Options modified here will take effect immediately. Use {{ic|xfconf-query}} to change settings from the commandline; see [http://docs.xfce.org/xfce/xfconf/xfconf-query the documentation] for details.
xfce4-settings-editor
+
* Settings are stored in XML files in {{ic|~/.config/xfce4/xfconf/xfce-perchannel-xml/}} which can be edited by hand. However, changes made here will ''not'' take effect immediately.
xfdesktop-settings
+
xfce4-display-settings
+
xfce4-keyboard-settings
+
xfce4-mouse-settings
+
xfce4-session-settings
+
xfce4-settings-manager
+
xfce4-appearance-settings
+
xfwm4-settings
+
xfwm4-tweaks-settings
+
xfwm4-workspace-settings
+
orage -p
+
  
To review all the available setting manager commands run the following in a terminal:
+
=== Menu ===
  
$ grep '^Exec=' /usr/share/applications/xfce*settings* | sed -e 's_^.*=_ _'
+
==== Whisker menu ====
  
===Menu===
+
{{Pkg|xfce4-whiskermenu-plugin}} is an alternate 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'...).
==== Menu applet replacement ====
+
[http://gottcode.org/xfce4-whiskermenu-plugin/ Whisker Menu] is a full-featured replacement for the default Xfce menu applet. Add it to your panel and optionally remove the built-in default menu.
+
  
It is available in the [[Arch User Repository|AUR]] as the {{AUR|xfce4-whiskermenu-plugin}} package.
+
==== Edit entries ====
  
==== Removing entries from the System menu====
+
A number of graphical tools are available for this task:
===== Method 1 =====
+
With the built-in menu editor, you cannot remove menu entries from the System menu. Here’s how to hide them:
+
# Open Terminal (Xfce menu > System > Terminal) and go to the {{ic|/usr/share/applications}} folder: {{bc|$ cd /usr/share/applications}}
+
# This folder should be full of {{ic|.desktop}} files. To see a list type: {{bc|$ ls}}
+
# Add {{ic|1=NoDisplay=true}} to the {{ic|.desktop}} file. For example, if you want to hide Firefox, type in the terminal: {{bc|1=# echo "NoDisplay=true" >> firefox.desktop}} This command appends the text {{ic|1=NoDisplay=true}} to the end of the {{ic|.desktop}} file.
+
  
===== Method 2 =====
+
* {{App|XAME|GUI tool written in Gambas designed specifically for editing menu entries in Xfce, it will not work in other environments. (Discontinued)|http://www.redsquirrel87.com/XAME.php|{{AUR|xame}}}}
Another method is to copy the entire contents of the global applications directory over to your local applications directory, and then proceed to modify and/or disable unwanted .desktop entries. This will survive application updates that overwrite changes under {{ic|/usr/share/applications/}}.
+
* {{App|MenuLibre|An advanced menu editor that provides modern features in a clean, easy-to-use interface.|https://launchpad.net/menulibre|{{AUR|menulibre}}}}.
# In a terminal, copy everything from {{ic|/usr/share/applications}} to {{ic|~/.local/share/applications/}}: {{bc|$ cp /usr/share/applications/* ~/.local/share/applications/}}
+
* {{App|Alacarte|Menu editor for GNOME|http://www.gnome.org/|{{Pkg|alacarte}}}}
# For any entry you wish to hide from the menu, add the {{ic|1=NoDisplay=true}} option: {{bc|1=$ echo "NoDisplay=true" >> ~/.local/share/applications/foo.desktop}}
+
  
You can also edit the application's category by editing the {{ic|.desktop}} file with a text editor and modifying the {{ic|1=Categories=}} line.
+
Alternatively, create the file {{ic|~/.config/menus/xfce-applications.menu}} manually. See the example configuration below:
  
===== Method 3 =====
 
The third method is the '''cleanest''' and recommended in the [http://wiki.xfce.org/howto/customize-menu Xfce wiki].
 
 
Create the file {{ic|~/.config/menus/xfce-applications.menu}} and copy the following in it:
 
 
  <!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
 
  <!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
 
   "http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd">
 
   "http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd">
Line 108: Line 67:
 
     <Exclude>
 
     <Exclude>
 
         <Filename>xfce4-run.desktop</Filename>
 
         <Filename>xfce4-run.desktop</Filename>
 
 
         <Filename>exo-terminal-emulator.desktop</Filename>
 
         <Filename>exo-terminal-emulator.desktop</Filename>
 
         <Filename>exo-file-manager.desktop</Filename>
 
         <Filename>exo-file-manager.desktop</Filename>
 
         <Filename>exo-mail-reader.desktop</Filename>
 
         <Filename>exo-mail-reader.desktop</Filename>
 
         <Filename>exo-web-browser.desktop</Filename>
 
         <Filename>exo-web-browser.desktop</Filename>
 
 
         <Filename>xfce4-about.desktop</Filename>
 
         <Filename>xfce4-about.desktop</Filename>
 
         <Filename>xfhelp4.desktop</Filename>
 
         <Filename>xfhelp4.desktop</Filename>
Line 121: Line 78:
 
         <Merge type="all"/>
 
         <Merge type="all"/>
 
         <Separator/>
 
         <Separator/>
 
 
         <Menuname>Settings</Menuname>
 
         <Menuname>Settings</Menuname>
 
         <Separator/>
 
         <Separator/>
 
 
         <Filename>xfce4-session-logout.desktop</Filename>
 
         <Filename>xfce4-session-logout.desktop</Filename>
 
     </Layout>
 
     </Layout>
 
 
  </Menu>
 
  </Menu>
  
The {{ic|<MergeFile>}} tag includes the default Xfce menu in our file. This is important.
+
The {{ic|<MergeFile>}} tag includes the default Xfce menu.
  
 
The {{ic|<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 {{ic|firefox.desktop}} or any other application.
 
The {{ic|<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 {{ic|firefox.desktop}} or any other application.
  
The {{ic|<Layout>}} tag defines the layout of the menu. The applications can be organized in folders or however we wish. For more details see the aforementioned Xfce wiki page.
+
The {{ic|<Layout>}} tag defines the layout of the menu. The applications can be organized in folders or however we wish. For more details see the [http://wiki.xfce.org/howto/customize-menu  Xfce wiki].
  
===== Method 4 =====
+
You can also make changes to the Xfce menu by editing the {{ic|.desktop}} files themselves. To hide entries, see [[Desktop entries#Hide desktop entries]]. You can edit the application's category by modifying the {{ic|1=Categories=}} line of the desktop entry, see [[Desktop entries#File example]].
Alternatively a tool called [http://www.redsquirrel87.com/XAME.html xame] can be used. XAME is a GUI tool written in Gambas designed specifically for editing menu entires in Xfce, it will NOT work in other DEs. XAME is available in the {{AUR|xame}} package from the [[AUR]]. An alternative to XAME that works quite well with Xfce is {{AUR|menulibre}}.
+
 
+
==== Missing applications ====
+
When some applications are installed (for example via [[WINE]]), they may not be listed in {{ic|/usr/share/applications}}. Shortcuts ''might'' be found in the category “Other” in this directory:
+
{{ic|~/.local/share/applications/wine/}}.
+
  
 
=== Desktop ===
 
=== Desktop ===
  
==== Transparent Background for Icon Titles ====
+
==== Transparent background for icon titles ====
To change the default white background of desktop icon titles to something more suitable, create or edit the GTK config file:
+
  
{{hc|~/.gtkrc-2.0|<nowiki>
+
To change the default white background of desktop icon titles to something more suitable, create or edit {{ic|~/.gtkrc-2.0}}:
 +
 
 +
{{bc|<nowiki>
 
style "xfdesktop-icon-view" {
 
style "xfdesktop-icon-view" {
 
     XfdesktopIconView::label-alpha = 10
 
     XfdesktopIconView::label-alpha = 10
Line 161: Line 111:
 
</nowiki>}}
 
</nowiki>}}
  
==== Hide Selected Partitions ====
+
==== Remove Thunar options from right-click menu ====
If you wish to prevent certain partitions or drives appearing on the desktop, you can create a udev rule, for example {{ic|/etc/udev/rules.d/10-local.rules}}:
+
  
KERNEL=="sda1", ENV{UDISKS_PRESENTATION_HIDE}="1"
+
Issue the following command:
KERNEL=="sda2", ENV{UDISKS_PRESENTATION_HIDE}="1"
+
  
Would show all partitions with the exception of sda1 and sda2 on your desktop. Notice, if you are using udisk2 the above will not work, due to the UDISKS_PRESENTATION_HIDE no longer being supported, instead you must use UDISKS_IGNORE as follows
+
$ xfconf-query -c xfce4-desktop -v --create -p /desktop-icons/style -t int -s 0
  
KERNEL=="sda1", ENV{UDISKS_IGNORE}="1"
+
==== One wallpaper across multihead ====
KERNEL=="sda2", ENV{UDISKS_IGNORE}="1"
+
  
==== Remove Thunar Options from Right-click ====
+
Open {{ic|xfce4-settings-editor}} and create a new property with the  following settings:
xfconf-query -c xfce4-desktop -v --create -p /desktop-icons/style -t int -s 0
+
  
==== Kill Window Shortcut ====
+
Property: /backdrop/screen0/xinerama-stretch
Xfce does not support the ''kill window'' shortcut directly, but you can add one with a simple script. Ensure you have the '''xorg-xkill''' package installed.
+
Type: Boolean
 +
Value: TRUE|1|Enabled
  
Create a script in {{ic|~/.config/xfce4/killwindow.sh}} with this content and make it executable (you can use {{ic|chmod 755 killwindow.sh}}).
+
==== Kill window shortcut ====
  
xkill -id "`xprop -root -notype | sed -n '/^_NET_ACTIVE_WINDOW/ s/^.*# *\|\,.*$//g p'`"
+
Xfce does not have a shortcut to kill a window, for example when a program freezes.
  
Now associate a shortcut using {{ic|Settings -> Keyboard}} to that script.
+
With {{Pkg|xorg-xkill}}, use {{ic|xkill}} to interactively kill a window. For the currently active window, use {{Pkg|xdotool}}:
  
==== Manage Keyboard Shortcuts ====
+
$ xdotool getwindowfocus windowkill
  
Keyboard shortcuts can be managed with the Xfce Settings Manager application, which is available through the {{Pkg|xfce4-settings}} [[Pacman#Installing_specific_packages|package]] and the {{Grp|xfce4}} [[Pacman#Installing_package_groups|group]]. The Settings Manager can be started from the application menu (click Settings -> Keyboard) or command line (run {{ic|xfce4-keyboard-settings}}). The Xfce Docs include [http://docs.xfce.org/xfce/xfce4-settings/keyboard#application_shortcuts detailed instructions] for using the Settings Manager.
+
Alternatively:
  
=== Window Manager ===
+
$ xkill -id "$(xprop -root -notype | sed -n '/^_NET_ACTIVE_WINDOW/ s/^.*# *\|\,.*$//g p')"
The default window manager for Xfce is [[Xfwm]].
+
  
==== Enabling the Compositor ====
+
To add the shortcut, use ''Settings > Keyboard'' or an application like {{pkg|xbindkeys}}.
Xfwm has a builtin compositor adding the option for fancy window effects, shadows and transparency and so on. It can be enabled in the Window Manager Tweaks and works on the fly. No additional settings are needed in your {{ic|/etc/xorg.conf}}. To enable and adjust settings, go to:
+
  
Menu  -->  Settings  -->  Window Manager Tweaks
+
=== Session ===
  
{{Tip|The built-in compositor for Xfwm (the Xfce window manager) often causes video tearing in applications. If you wish for a lightweight compositor with some minimal effects, consider using [[Compton]].}}
+
==== Startup applications ====
  
==== Window roll-up ====
+
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''.
Double clicking on the titlebar or clicking on the window menu and choosing 'role window up' will cause the window's contents to disappear leaving only the titlebar. If you would like to disable this functionality you can do so graphically using the xconf editor or through the command line, as shown below, which achieves the same result.
+
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.
  
{{ic|xfconf-query -c xfwm4 -p /general/mousewheel_rollup -s false}}
+
Alternatively, add the commands you wish to run (including setting environment variables) to [[xinitrc]] (or [[xprofile]] when a [[display manager]] is being used).
  
==== Toggle Automatic Tiling of Windows at Edge of Screen ====
+
===== Delay application startup =====
XFWM4 has the ability to "tile" a window automatically when it is moved to the edge of the screen by resizing it to fill the top half of the screen. (The official XFCE website says this feature is disabled by default in XFCE 4.10, but it seems to be enabled by default on Arch Linux.) This behavior can be enabled or disabled in {{ic|Window Manager Tweaks --> Accessibility --> Automatically tile windows when moving toward the screen edge}}, or:
+
  
xfconf-query -c xfwm4 -p /general/tile_on_move -s false  # To disable
+
Sometimes it might be useful to delay the startup of an application. Specifying a command such as {{ic|sleep 3 && command}} under ''Application Autostart'' does not work. As a workaround, one can use the following syntax instead:
xfconf-query -c xfwm4 -p /general/tile_on_move -s true  # To enable
+
  
==== Replacing the native window manager ====
+
sh -c "sleep 3 && command"
To replace xfwm4 with another [[Window Manager]] you can use the syntax 'name of window manager' '--replace' in a terminal.
+
  
For example:
+
==== Lock the screen ====
*For {{Pkg|Openbox}} the command is: {{ic|openbox --replace}}
+
*For {{Pkg|Metacity}} the command is: {{ic|metacity --replace}}
+
  
To restore the native window manager again , first cancel the command by pressing {{ic|CTRL}} and {{ic|c}}, and then enter the following command:
+
To lock an Xfce4 session through the ''xflock4'' script one of {{Pkg|xscreensaver}}, {{Pkg|gnome-screensaver}}, {{Pkg|slock}} or {{Pkg|xlockmore}} packages needs to be installed.
 +
Alternatively you can set a lock command with
  
  $ xfwm4 --replace
+
  $ xfconf-query -c xfce4-session -p /general/LockCommand -s "light-locker-command -l" --create -t string''
  
Once the other window manager has taken over you can simply '''save the session'''. The {{ic|Save session for future logins}} option is available in the {{ic|logout...}} dialog box. It is also important to note that where restoring {{ic|xfwm4}} during a session, the {{ic|Save session for future logins}} option will have to be enabled on that occasion to make this change permanent. Not doing so may result in Openbox being restored again, as the previous saved session may be loaded instead. However, once {{ic|xfwm4}} has been restored, from the next session onwards there will no longer be any need to save future sessions.
+
If you want to update the command, you can use
  
As an alternative you can add the window manager to the autostart list in Xfce. To do this, from the main menu, first select {{ic|Settings Manager}}, and then {{ic|session and startup}}. Once the application window opens, select the {{ic|Application Autostart}} tab to show all autostarted applications and programs, and click the {{ic|Add}} button to bring up the {{ic|Add Application}} window.
+
$ xfconf-query -c xfce4-session -p /general/LockCommand -s "light-locker-command -l"
  
The following details can be entered for each field:
+
See [[List of applications/Security#Screen lockers]] for a comprehensive list of screen lockers.
  
* '''Name''': openbox-wm
+
{{Tip|The {{Pkg|light-locker}} session locker integrates with {{Pkg|xfce4-power-manager}}. If light-locker is installed, a ''Security'' tab is added to the power manager settings and the existing ''Lock screen when system is going for sleep'' setting is relocated under the ''Security'' tab.}}
* '''Description''': openbox-wm
+
* '''Command''': openbox --replace
+
  
{{Tip|
+
==== User switching ====
*The name and description fields are unimportant and are just there to indicate what the entry does. The command section has the same syntax as earlier e.g. 'Name of window manager' '--replace' as shown in the entries above.
+
*Compiz may require commands different from the ones shown as there are several different ways to start it. For more information please consult the [[Compiz]] article.
+
}}
+
  
Once complete, click {{ic|OK}}, ensure that the checkbox next to the {{ic|openbox-wm}} entry is ticked, and then restart the session for the change to take place. The benefit of this method is that autostarted applications can be easily enabled and disabled at will via their autostart checkboxes. Consequently, to allow the native window manager - {{ic|xfwm4}} - to take back over, just clear the {{ic|openbox-wm}} tickbox and restart the session.
+
Xfce4 has support for user switching when used with a [[Display manager]] that has this functionality - examples being [[LightDM]] and [[GDM]]. Please consult your display manager's wiki page for more information. When you have a display manager installed and configured correctly you can switch users from the 'action buttons' menu item in the panel.
  
===== Re-enabling Compositing effects =====
+
For the User Switch action button to work without GDM, a workaround is required:
If you replace xfwm4 with a window manager that does not have a composite manager then you can use a standalone composite manager such as [[Xcompmgr]] or [[Compton]].
+
* For LXDM - [[LXDM#Simultaneous users and switching users]].
 +
* For LightDM - [[LightDM#User switching under Xfce4]].
  
===Session===
+
==== Disable saved sessions ====
====Custom Startup Applications====
+
  
=====Via the Settings Menu=====
+
Per user, saved sessions can be disabled by executing the following:
 +
$ xfconf-query -t bool -c xfce4-session -p /general/SaveOnExit -s false
 +
Then navigate to ''Applications'' -> ''Settings'' -> ''Session and Startup'' -> ''Sessions'' and click the ''Clear saved sessions'' button.
  
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".
+
{{Tip|If the command above does not change the setting persistently, use the following command instead: {{ic|xfconf-query -c xfce4-session -p /general/SaveOnExit -n -t bool -s false}}}}
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.
+
  
=====Startup Script=====
+
Alternatively, Xfce [https://wiki.xfce.org/howto/kiosk_mode kiosk mode] can be used to disable the saving of sessions systemwide. To disable sessions, create or edit the file {{ic|/etc/xdg/xfce4/kiosk/kioskrc}} and add the following:
  
Alternatively you can use this method, to run a command line script to launch your applications. This includes getting necessary environment variables into the GUI runtime.
+
[xfce4-session]
 +
SaveSession=NONE
  
* Copy the file {{ic|/etc/xdg/xfce4/xinitrc}} to {{ic|~/.config/xfce4/}}
+
If kiosk mode is not working, the user can set read only permissions for the sessions directory:
* Edit this file. For example, you can add something like this somehwere in the middle:
+
source $HOME/.bashrc
+
# start rxvt-unicode server
+
urxvtd -q -o -f
+
  
====Lock the screen====
+
$ rm ~/.cache/sessions/* && chmod 500 ~/.cache/sessions
To lock an Xfce4 session (through {{ic|xflock4}}) one of {{Pkg|xscreensaver}}, {{Pkg|gnome-screensaver}}, {{Pkg|slock}} or {{Pkg|xlockmore}} packages needs to be installed. [[Xscreensaver]] is the recommended option. Please consult its wiki page for more information.
+
  
====User switching====
+
This will prevent Xfce from saving any sessions despite any configuration that specifies otherwise.
Xfce4 has support for user switching when used with a [[Display manager]] that has this functionality - examples being [[lightdm]] and [[gdm]]. Please consult your display manager's wiki page for more information. When you have a display manager installed and configured correctly you can switch users from the 'action buttons' menu item in the panel.
+
 
+
==== Manually Modifying XML settings ====
+
It may be useful, especially when upgrading, to manually edit .xml files in the {{ic|~/.config/xfce4/xfconf/}} folder. For application keyboard shortcuts for example, the file is {{ic|~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml}}.
+
 
+
===Look and Feel===
+
====Add themes to XFCE====
+
1. Go to [http://www.xfce-look.org www.xfce-look.org] and click "Themes" in the left navbar. Look around for a theme you want and click "Download".
+
 
+
2. Go to the directory where you downloaded the tarball/file and extract it using an archive manager such as {{Pkg|file-roller}}
+
 
+
3. Move the extracted folder to {{ic|/usr/share/themes}} (for all users) or {{ic|~/.themes}} (for just you). Inside {{ic|/usr/share/themes/abc}}, there is a folder that you create called xfwm4 that will contain whatever files that is included with that theme.
+
 
+
4. Selecting the theme.
+
 
+
*The GTK+ theme can be changed from:
+
Menu --> Settings --> Appearance
+
+
*The xfwm4 theme can be changed from:
+
Menu --> Settings --> Window Manager
+
  
====Application theme consistency====
+
==== Default window manager ====
Applications do not always have a consistent look. There are two possible reasons for this:
+
  
1. The application is based upon a toolkit that the current theme does not support. Applications based upon the GTK+ 2 toolkit will need a GTK+ 2 theme whilst applications based upon the GTK+ 3 toolkit will need a GTK+ 3 theme.
+
{{Note|For the changes to take effect, you will need to clear the saved sessions and ensure that session saving is disabled when logging out for the first time. Once the window manager of choice is running, session saving can be enabled again.}}
  
2. The theme is out of date.
+
The files specifying the default window manager are found in the following locations:
 +
*{{ic|~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml}} - per user
 +
*{{ic|/etc/xdg/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml}} - systemwide
  
To achieve a uniform look for all applications it is advisable to use an up to date GTK+ 3 theme such as Adwaita as GTK+ 3 themes have inbuilt support for GKT+ 2 applications. Adwaita can be installed from the {{Pkg|gnome-themes-standard}} package. Applications based upon the Qt toolkit can mimic the current GTK+ theme using the {{ic|qtconfig-qt4}} dialogue.
+
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 '''wm_name'''
  
For information please consult these wiki pages: [[GTK+#GTK+ 3.x]] for gtk3 and [[Uniform Look for Qt and GTK Applications]] for qt.
+
If you want to start the window manager with command line options, see the command below:
 +
$ xfconf-query -c xfce4-session -p /sessions/Failsafe/Client0_Command -t string -t string -s '''wm_name''' -s '''--wm-option'''
 +
If you need more command line options, simply add more {{ic|-t string}} and {{ic|-s '''--wm-option'''}} arguments to the command.
  
==== Cursors ====
+
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 {{ic|1=<value type="string" value="'''--wm-option'''"/>}} lines for extra command line options if needed.
Main article: [[X11 Cursors]]
+
  
If you have alternative X cursor themes installed, Xfce can find them with:
+
You can also change the window manager by autostarting {{ic|'''wm_name''' --replace}} using the autostart facility or by running {{ic|'''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.
Menu --> Settings --> Mouse --> Theme
+
  
==== Icons ====
+
=== Theming ===
# First find and download your desired icon pack. Recommended places to download icons from are [http://www.customize.org Customize.org], [http://opendesktop.org Opendesktop.org] and [http://xfce-look.org/ Xfce-look.org]; the [[AUR]] provides several PKGBUILDs for icon packs.
+
# Go to the directory where you downloaded the icon pack and extract it. Example {{ic|tar -xzf /home/user/downloads/icon-pack.tar.gz}}.
+
# Move the extracted folder containing the icons to {{ic|~/.icons}} (if only you want to use the icons) or to {{ic|/usr/share/icons}} (if you want all users on the system to make use of the icons), and in the lattter case consider creating a [[PKGBUILD]] for that.
+
# Optional: run {{ic|gtk-update-icon-cache -f -t ~/.icons/<theme_name>}} to update icon cache
+
# Switch your icons by going to:
+
Menu --> Settings --> Appearance --> Icons
+
  
When you have icon theme problems, it is also recommended to install the {{Pkg|hicolor-icon-theme}} package if it was not already installed.
+
XFCE themes are available at [http://www.xfce-look.org xfce-look.org]. ''Xfwm'' themes are stored in {{ic|/usr/share/themes/xfce4}}, and set in ''Settings > Window Manager''. [[GTK+]] themes are set in ''Settings > Appearance''.
  
==== Fonts ====
+
To achieve a uniform look for all applications, see [[Uniform look for Qt and GTK applications]].
If you find the standard fonts rather thick and or slightly out of focus open Settings>Appearance click on the Fonts tab and under Hinting: change to Full
+
  
You could also try using a custom DPI setting.
+
See also [[Cursor themes]], [[Icons]], and [[Font configuration]].
  
 
=== Sound ===
 
=== Sound ===
  
==== Configuring xfce4-mixer ====
+
==== Xfce4 mixer ====
  
{{Pkg|xfce4-mixer}} is the GUI mixer app / panel plugin made by the Xfce team. It is part of the xfce4 group, so you probably already have it installed. Xfce 4.6 uses {{Pkg|gstreamer}} as the backend to control volume, so first you have to make gstreamer cooperate with xfce4-mixer. One or more of the gstreamer plugin packages listed as optional dependencies to xfce4-mixer must be installed. Without one of these required plugins packages, the following error arises when clicking on the mixer panel item.
+
{{Note|Xfce4 mixer and Xfce4 volumed are no longer being maintained upstream as they cannot be ported to GStreamer 1.0. For more information, see the 4.12 [http://www.xfce.org/about/news/?post&#61;1425081600 news post].}}
  
  GStreamer was unable to detect any sound devices. Some sound system specific GStreamer packages may be missing.  
+
Xfce4 mixer, provided by {{Pkg|xfce4-mixer}}, is the GUI mixer app and panel plugin from the Xfce team. It is part of the xfce4 group. For [[PulseAudio]] and [[OSS]] support, you will need to install {{Pkg|gstreamer0.10-good-plugins}} if it is not installed already.
  
Which plugins are needed depends on the hardware. Most people should be fine with {{Pkg|gstreamer0.10-base-plugins}} which can be [[pacman|installed]] from  [[Official Repositories]].  
+
You might need to change the default sound card for Xfce4 mixer to function correctly. For further details, such as how to set the default sound card, see [[Advanced Linux Sound Architecture#Set the default sound card]]. Alternatively you can use [[PulseAudio]] together with {{Pkg|pavucontrol}} or [[OSS]]. For OSS, see [[OSS#Applications that use GStreamer]].
  
If the xfce4-mixer panel item was already running before one of the plugins packages was installed, logout and login to see if it worked, or just remove the mixer plugin from the panel and add it again. If that does not work, you might need more or different gstreamer plugins. Try to [[pacman|install]] package  {{pkg|gstreamer0.10-good-plugins}} or {{pkg|gstreamer0.10-bad-plugins}}.
+
If you did need to change the default soundcard, logout to ensure that the changes take effect.
  
If you had to change the soundcard in the audio mixer, then you should log out and back in to hear sound.
+
===== Change default sound card in Xfce4 mixer =====
  
For further details, for example how to set the default sound card, see [[Advanced Linux Sound Architecture]]. Alternatively you can use [[PulseAudio]] together with {{Pkg|pavucontrol}}.
+
In some cases (when using [[PulseAudio]] or {{AUR|xfce4-volumed}} for instance) it might be necessary to change the default sound card in Xfce4 Mixer in order for volume control to work as expected. [http://grumbel.blogspot.co.uk/2011/10/fixing-volume-control-in-xfce4.html]
  
==== Xfce4-mixer and OSS4 ====
+
To change the default sound card, open ''xfce4-settings-editor'' and navigate to '''xfce4-mixer''' and check the entries under '''sound-cards'''. Locate the correct entry for the card you are using and then replace the values of '''sound-card''' and '''active-card''' with the entry. If you are using PulseAudio then the entry will likely be similar to the following: '''PlaybackInternalAudioAnalogStereoPulseAudioMixer'''. Then logout for the changes to take effect.
  
If you tried the above section to get {{Pkg|xfce4-mixer}} to work and it does not work at all, then you may have to compile {{pkg|gstreamer0.10-good-plugins}} yourself. Download the PKGBUILD and other files needed from ABS or [https://projects.archlinux.org/svntogit/packages.git/tree/gstreamer0.10-good/repos here], edit the PKGBUILD, add --enable-oss.
+
==== xfce4-alsa-plugin ====
  
  ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
+
If you do not use PulseAudio, you can install {{AUR|xfce4-alsa-plugin}}. It provides a simple panel plugin with the ability to control ALSA volume, though it does not support keyboard volume buttons.
    '''--enable-oss \'''
+
    --disable-static --enable-experimental \
+
    --disable-schemas-install \
+
    --disable-hal \
+
    --with-package-name="GStreamer Good Plugins (Archlinux)" \
+
    --with-package-origin="https://www.archlinux.org/"
+
  
and then run makepkg -i.
+
==== Keyboard volume buttons ====
  
  makepkg -i
+
If the {{Pkg|xfce4-mixer}} package is version {{ic|4.10.0-3}} or greater, then the mixer panel applet provides the ability to control the volume using the keyboard. However, volume notifications will not be shown. Alternatively, {{AUR|xfce4-volumed}} maps volume keys to Xfce4 mixer, and displays notifications through Xfce4-notifyd.
 +
If you are using PulseAudio and you do not wish to use Xfce4 Mixer at all, install {{AUR|xfce4-pulseaudio-plugin}}. This provides a panel applet which has support for keyboard volume control and volume notifications.
  
Other LINKS: [http://www.4front-tech.com/forum/ OSS forum]
+
For non desktop environment specific alternatives, see [[List of applications#Volume managers]].
  
==== Keyboard Volume Buttons  ====
+
===== Shortcuts =====
  
Go to
+
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.
Settings --> Keyboard
+
*ALSA: see [[Advanced Linux Sound Architecture#Keyboard volume control]].
Click the "Application Shortcuts" tab and add click the "Add" button. Add the following by entering the command, then pressing the corresponding button at the next window:
+
*PulseAudio: see [[PulseAudio#Keyboard volume control]]
 +
*OSS: see [[OSS#Using multimedia keys with OSS]].
  
===== ALSA =====
+
=== Keyboard Shortcuts ===
For the raise volume button:
+
amixer set Master 5%+
+
For the lower volume button:
+
amixer set Master 5%-
+
For the mute button:
+
amixer set Master toggle
+
  
You can also run these commands to set the above commands to the standard XF86Audio keys:
+
Keyboard shortcuts are defined in two places: ''Settings > Window Manager > Keyboard'', and ''Settings > Keyboard > Shortcuts''.
xfconf-query -c xfce4-keyboard-shortcuts -p /commands/custom/XF86AudioRaiseVolume -n -t string -s "amixer set Master 5%+ unmute"
+
xfconf-query -c xfce4-keyboard-shortcuts -p /commands/custom/XF86AudioLowerVolume -n -t string -s "amixer set Master 5%- unmute"
+
xfconf-query -c xfce4-keyboard-shortcuts -p /commands/custom/XF86AudioMute -n -t string -s "amixer set Master toggle"
+
  
If {{ic|amixer set Master toggle}} does not work, try the PCM channel ({{ic|amixer set PCM toggle}}) instead.
+
=== Polkit Authentication Agent ===
  
The channel must have a "mute" option for the toggle command to work. To check whether or not your Master channel supports toggling mute, run {{ic|alsamixer}} in a terminal and look for the double M's (MM) under the Master channel. If they are not present, then it does not support the mute option. If, for example, you had to change the toggle button to use the PCM channel, make sure to also set the PCM channel as the Mixer Track under Xfce Mixer properties.
+
The {{Pkg|polkit-gnome}} agent will be installed along with {{Pkg|xfce4-session}} and autostarted automatically; no user intervention is required. For more information, see [[Polkit#Authentication agents]].
  
===== OSS =====
+
A third party polkit authentication agent for Xfce is also available, see {{AUR|xfce-polkit-git}}.
Use one of these scripts: http://www.opensound.com/wiki/index.php/Tips_And_Tricks#Using_multimedia_keys_with_OSS
+
  
If using ossvol (recommended), add:
+
=== Display blanking ===
ossvol -i 1
+
for the volume up button
+
ossvol -d 1
+
for the volume down button
+
ossvol -t
+
for the mute/unmute button
+
  
===== PulseAudio =====
+
{{Note|1=There are some issues associated with blanking and resuming from blanking in some configurations. See [https://bbs.archlinux.org/viewtopic.php?id=194313&p=2][https://bugzilla.xfce.org/show_bug.cgi?id=11107].}}
For the raise volume button:
+
sh -c "pactl set-sink-mute 0 false ; pactl set-sink-volume 0 +1%"
+
For the lower volume button:
+
sh -c "pactl set-sink-mute 0 false ; pactl -- set-sink-volume 0 -1%"
+
For the mute button:
+
pactl set-sink-mute 0 toggle
+
  
These settings assume the device you want to control has index 0.
+
Some programs that are commonly used with Xfce will control monitor blanking and [[DPMS]] (monitor powersaving) settings. They are discussed below.
Use {{ic|pactl list sinks short}} to list sinks.
+
  
===== Xfce4-volumed =====
+
;Xfce Power Manager
 +
Xfce Power Manager will control blanking and DPMS settings. These settings can be configured by running ''xfce4-power-manager-settings'' and clicking the ''Display'' tab. Note that unticking the ''Handle display power management'' option means that the Power Manager will disable DPMS - it does not mean that the Power Manager will relinquish control of DPMS. Also note that it will not disable screen blanking. 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.
  
{{AUR|xfce4-volumed}} daemon from the [[AUR]] automatically maps volume keys of your keyboard to Xfce-mixer. Additionally you get OSD through Xfce4-notifyd when changing volume. Xfce4-volumed does not need any configuration and is started automatically with Xfce.
+
;XScreenSaver
 +
{{Out of date|With xfce4-power-manager>1.5.1 the issue described below should in theory no longer apply. [http://git.xfce.org/xfce/xfce4-power-manager/commit/?id&#61;a805071464ecf0fee27d59de15620b035d855eb0]}}
 +
See [[XScreenSaver#DPMS and blanking settings]]. Note that if XScreenSaver is running alongside Xfce Power Manager, it may not be entirely clear which application is in control of blanking and DPMS as both applications 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 film for instance), it is advisable to disable blanking and DPMS through both applications.
  
If you use pulseaudio and xfce4-volumed unmute does not work then change the keyboard commands to the pactl commands for pulseaudio as shown above in the pulseaudio section.
+
;xset
 +
If neither of the above applications are running, then blanking and DPMS settings can be controlled using the ''xset'' command, see [[DPMS#Modifying DPMS and screensaver settings using xset]].
  
===== Volumeicon =====
+
== Tips and tricks ==
  
{{pkg|volumeicon}} is an alternative to xfce4-volumed in the community repo also handling keybindings and notifications through {{pkg|xfce4-notifyd}}.
+
=== Hide partitions from thunar and xfdesktop ===
  
===== Extra keyboard keys =====
+
See [[Udisks#Hide selected partitions]].
If you are coming from another distro, you may be interested in enabling extra keys on your keyboard, see [[Extra Keyboard Keys]].
+
 
+
==== Adding startup/boot sound ====
+
 
+
Arch does not have a built-in startup sound configuration tool, but there is a workaround by adding the following command to your Application Autostart settings:
+
 
+
aplay /boot/startupsound.wav
+
 
+
The file location and filename can be whatever you want, but naming it descriptively and putting it in /boot keeps things tidy.
+
 
+
==Tips & Tricks==
+
=== xdg-open integration (Preferred Applications) ===
+
 
+
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 [[pacman|install]] the {{Pkg|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 {{Pkg|xorg-xprop}} package.
+
  
 
=== Screenshots ===
 
=== Screenshots ===
  
XFCE has its own screenshot tool, {{pkg|xfce4-screenshooter}}. It is part of the {{grp|xfce4-goodies}} group.
+
Xfce has its own screenshot tool, {{pkg|xfce4-screenshooter}}. It is part of the {{grp|xfce4-goodies}} group.
 
+
==== Print Screen key ====
+
 
+
Go to:
+
  
XFCE Menu  --> Settings --> Keyboard >>>  Application Shortcuts.
+
Go to ''Applications > Settings > Keyboard'', ''Application Shortcuts''. Add the {{ic|xfce4-screenshooter -f}} (or {{ic|-w}} for the active window) command to use the {{ic|Print}} key in order to take fullscreen screenshots. See screenshooter's man page for other optional arguments.
  
Add the "xfce4-screenshooter -f" command to use the "PrintScreen" key in order to take fullscreen screenshots. See screenshooter's man page for other optional arguments.
+
Alternatively, an independent screenshot program like [[Taking a screenshot#scrot|scrot]] can be used.
  
Alternatively, an independent screenshot program like [[Taking a Screenshot#scrot|scrot]] can be used.
+
=== Disable Terminal F1 and F11 shortcuts ===
  
===Disable Terminal F1 and F11 shortcut===
 
 
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.
 
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.
  
Line 457: Line 308:
 
}}
 
}}
  
===Terminal color themes or pallets===
+
=== Terminal color themes or palettes ===
Terminal color themes or pallets can be changed in GUI under Appearance tab in Preferences. These are the colors that are available to most console applications like [[Emacs]], [[Vi]] and so on. Their settings are stored individually for each system user in {{ic|~/.config/xfce4/terminal/terminalrc}} file. There are also so many other themes to choose from. Check forums post [[https://bbs.archlinux.org/viewtopic.php?pid=1194644|Terminal Colour Scheme Screenshots]] for hundreds of available choices and themes.
+
 
 +
Terminal color themes or palettes can be changed in GUI under Appearance tab in Preferences. These are the colors that are available to most console applications like [[Emacs]], [[Vi]] and so on. Their settings are stored individually for each system user in {{ic|~/.config/xfce4/terminal/terminalrc}} file. There are also so many other themes to choose from. Check forum thread [https://bbs.archlinux.org/viewtopic.php?id=51818 Terminal Colour Scheme Screenshots] for hundreds of available choices and themes.
 +
 
 +
==== Changing default color theme ====
  
====Changing default color theme====
 
 
XFCE's {{ic|extra/terminal}} package comes with a darker color palette. To change this, append the following in your terminalrc file for a lighter color theme, that is always visible in darker Terminal backgrounds.
 
XFCE's {{ic|extra/terminal}} package comes with a darker color palette. To change this, append the following in your terminalrc file for a lighter color theme, that is always visible in darker Terminal backgrounds.
  
Line 472: Line 325:
 
  ColorPalette13=#82108210ffff
 
  ColorPalette13=#82108210ffff
  
====Terminal tango color theme====
+
==== Terminal tango color theme ====
 +
 
 
To switch to tango color theme, open with your favorite editor
 
To switch to tango color theme, open with your favorite editor
  
Line 497: Line 351:
 
  ColorPalette15=#3434e2e2e2e2
 
  ColorPalette15=#3434e2e2e2e2
 
  ColorPalette16=#eeeeeeeeecec
 
  ColorPalette16=#eeeeeeeeecec
 +
 +
=== Open URL's 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 {{ic|${XDG_CONFIG_HOME}/xfce4/terminal/terminalrc}} ({{ic|<nowiki>XDG_CONFIG_HOME=${HOME}/.config</nowiki>}} by default)
 +
{{hc|${XDG_CONFIG_HOME}/xfce4/terminal/terminalrc|<nowiki>[Configuration]
 +
MiscMiddleClickOpensUri=TRUE</nowiki>}}
  
 
=== Colour management ===
 
=== Colour management ===
xfce4-settings-manager does not yet have any colour management / calibration settings, nor is there any specific XFCE program to characterise your monitor.
 
  
==== Loading a profile ====
+
Xfce has no native support for colour management. [https://bugzilla.xfce.org/show_bug.cgi?id=8559] See [[ICC profiles]] for alternatives.
If you wish to '''load an icc profile''' (that you have previously created or downloaded) to calibrate your display on startup, you can download {{AUR|xcalib}} from [[AUR]], then open the XFCE4 Settings Manager, click Session and Startup icon, the Autostart tab, and add a new entry where the command is {{ic|/usr/bin/xcalib /path/to/your/profile.icc}}. You still need to tell your applications, which display profile should be used to have the displayed images colour managed.
+
  
Another option is dispwin. Dispwin not only calibrates the display, but also sets the _ICC_PROFILE atom in X so that some applications can use a "system" display profile instead of requiring the user to set the display profile manually (GIMP, Inkscape, darktable, UFRaw, etc.).
+
=== Multiple monitors ===
  
See [[ICC Profiles#Loading ICC Profiles]] for more information.
+
As of {{Pkg|xfce4-settings}} version 4.11.4, Xfce has support for multiple monitors. Settings can be configured in the ''Applications'' -> ''Settings'' -> ''Display'' dialog. For more information, see the [http://docs.xfce.org/xfce/xfce4-settings/display display] article from the Xfce documentation.
  
==== Creating a profile ====
+
=== SSH agents ===
  
If you wish to '''create an icc profile''' for your display (ie. characterising/profiling, e.g. with the ColorHug, or some other colorimeter, or a spectrophotometer, or "by eye"), the simplest option may be to install {{Pkg|dispcalgui}} from [[AUR]].
+
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:
  
Another option is to install {{pkg|gnome-settings-daemon}} and {{pkg|gnome-color-manager}} (available in extra). In order to start the calibration from the command line, first do  {{ic|/usr/lib/gnome-settings-daemon/gnome-settings-daemon &}} (note: this might change your keyboard layout and who knows what else, so probably good to do it on a throwaway account), then {{ic|colormgr get-devices}} and look for the "Device ID" line of your monitor. If this is e.g. "xrandr-Lenovo Group Limited", you start calibration with the command {{ic|gcm-calibrate --device "xrandr-Lenovo Group Limited"}}.
+
xfconf-query -c xfce4-session -p /startup/ssh-agent/enabled -n -t bool -s false
{{Note|1=The reason you need gnome-settings-daemon running is because XFCE does not yet have a session component for colord: https://bugzilla.xfce.org/show_bug.cgi?id=8559 . A lightweight daemon, [https://github.com/agalakhov/xiccd xiccd], may (and probably should) be used instead.}}
+
  
See [[ICC Profiles]] for more information.
+
To force using ssh-agent even if gpg-agent is installed, run the following instead:
  
=== Multiple Monitors ===
+
xfconf-query -c xfce4-session -p /startup/ssh-agent/type -n -t string -s ssh-agent
If you have configured X.org so that your display spans multiple monitors, usually when you login to an '''XFCE''' session, it will appear as if your monitors are simple clones of one another. You can use an '''xrandr''' tool to tweak your setup but if this is not called at an appropriate time in the startup sequence, some functionality may be lost with parts of your display being inaccessible to the mouse pointer.
+
  
A better way is to configure XFCE to match your desired display arrangement. However, at present (xfce-settings 4.10), there is no tool available to assist with configuring multiple monitors directly.  
+
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.
  
* The ''Settings -> Display'' tool does allow configuration of screen resolution, rotation and enabling individual monitors; '''warning''': ''using this tool to adjust display settings will reset or lose settings made manually for properties not explicitly offered as buttons in the tool (see below)''.
+
Source: http://docs.xfce.org/xfce/xfce4-session/advanced
* The ''Settings -> Settings Editor'' allows manipulation of all configuration items in particular the ''displays'' settings which are saved in the file '''displays.xml''' below
+
~/.config/xfce4/xfconf/xfce-perchannel-xml
+
* Alternatively, the ''displays.xml'' can be edited using your favourite editor.
+
  
The main requirement for multiple monitors is their arrangement relative to one another. This can be controlled by setting the '''Position''' properties ('''X''' and '''Y''') to suit; an ''(x,y)'' position of ''0,0'' corresponds to the ''top, left'' position of the monitor array. This is the default position for all monitors and if several monitors are enabled they will appear as a cloned display area extending from this point.
+
=== Scroll a background window without shifting focus on it ===
  
To extend the display area correctly across both monitors:
+
Go to ''Main Menu > Settings > Window Manager Tweaks > Accessibility'' tab.
 +
Uncheck ''Raise windows when any mouse button is pressed''.
  
* for side-by-side monitors, set the '''X''' property of the rightmost monitor to equal the width of the left-most monitor
+
=== Mouse button modifier ===
* for above-and-below monitors, set the '''Y''' property of the bottom monitor to equal the height of the upper monitor
+
* for other arrangements, set the '''X''' and '''Y''' properties of each monitor to correspond to your layout
+
  
Measurements are in ''pixels''. As an example, a pair of monitors with nominal dimensions of ''1920x1080'' which are rotated by 90 and placed side-by-side can be configured with a ''displays.xml'' like this:
+
By default, the mouse button modifier in Xfce is set to {{ic|Alt}}. This can be changed with ''xfconf-query''. For instance, the following command will set the {{ic|Super}} key as the mouse button modifier:
  
  <channel name="displays" version="1.0">
+
  $ xfconf-query -c xfwm4 -p /general/easy_click -n -t string -s "Super"
  <property name="Default" type="empty">
+
 
    <property name="VGA-1" type="string" value="Idek Iiyama 23&quot;">
+
Strictly speaking, using multiple modifiers is not supported. However, as a workaround, multiple modifiers can be specified if the key names are separated with {{ic|><}}. For instance, to set {{ic|Ctrl+Alt}} as the mouse button modifier, you can use the following command:
      <property name="Active" type="bool" value="true"/>
+
 
      <property name="Resolution" type="string" value="1920x1080"/>
+
$ xfconf-query -c xfwm4 -p /general/easy_click -n -t string -s "Ctrl><Alt"
      <property name="RefreshRate" type="double" value="60.000000"/>
+
 
      <property name="Rotation" type="int" value="90"/>
+
=== Set the two fingers click to middle click for a touchpad ===
      <property name="Reflection" type="string" value="0"/>
+
 
      <property name="Primary" type="bool" value="false"/>
+
{{Style|Convoluted way of simply configuring [[Touchpad Synaptics]]}}
       <property name="Position" type="empty">
+
 
         <property name="X" type="int" value="0"/>
+
If you want the 2 finger click on the touchpad to do a middle click, create or edit the following file:
         <property name="Y" type="int" value="0"/>
+
 
      </property>
+
{{hc|~/.config/xfce4/xfconf/xfce-perchannel-xml/pointers.xml|<nowiki>
    </property>
+
<channel name="pointers" version="1.0">
    <property name="DVI-0" type="string" value="Digital display">
+
  <property name="SynPS2_Synaptics_TouchPad" type="empty">
      <property name="Active" type="bool" value="true"/>
+
    <property name="Properties" type="empty">
      <property name="Resolution" type="string" value="1920x1080"/>
+
       <property name="Synaptics_Tap_Action" type="array">
      <property name="RefreshRate" type="double" value="60.000000"/>
+
         <value type="int" value="0"/>
      <property name="Rotation" type="int" value="90"/>
+
         <value type="int" value="0"/>
      <property name="Reflection" type="string" value="0"/>
+
        <value type="int" value="0"/>
      <property name="Primary" type="bool" value="false"/>
+
        <value type="int" value="0"/>
      <property name="Position" type="empty">
+
        <value type="int" value="1"/>
         <property name="X" type="int" value="1080"/>
+
         <value type="int" value="2"/>
         <property name="Y" type="int" value="0"/>
+
         <value type="int" value="3"/>
 
       </property>
 
       </property>
 
     </property>
 
     </property>
 
   </property>
 
   </property>
</channel>
+
</channel>
 +
</nowiki>}}
  
Usually, editing settings in this way requires a logout/login to action them.
+
The 2 in the array is the middle click.
  
A new method for configuring multiple monitors will be available in the forthcoming xfce-settings 4.12 release.
+
=== 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 {{ic|xfce4-power-manager 1.3.2}} a new hidden option had been introduced to set a minimum brightness value with a xfconf4-property. Add {{ic|brightness-slider-min-level}} as an int property in xfconf4. Adjust the int value to get a suitable minimum brightness level.
  
=== XDG User Directories ===
+
== Troubleshooting ==
freedesktop.org specifies the "well known" user directories like the desktop folder and the music folder.  See [[Xdg user directories]] for detailed info.
+
  
=== SSH Agents ===
+
=== Action buttons are missing icons ===
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
+
This happens if icons for some actions (Suspend, Hibernate) are missing from the icon theme, or do not have the expected names. To fix this, install an icon theme which has the necessary icons already added; see [[Icons#Xfce icons]].
  
To force using ssh-agent even if gpg-agent is installed, run the following instead:
+
Then, you can switch to that icon theme using Applications -> Settings -> Appearance -> Icons.
  
xfconf-query -c xfce4-session -p /startup/ssh-agent/type -n -t string -s ssh-agent
+
Alternatively you can use the required icons provided by the icon theme you installed in your current icon theme. To do so, you first need to find out what the currently used icon theme is called. You can do so by using the command below:
  
To use [[GNOME Keyring]], simply tick the checkbox ''Launch GNOME services on startup'' in the ''Advanced'' tab of ''Session Manager'' in Xfce's settings. This will also disable gpg-agent and ssh-agent.
+
$ xfconf-query -c xsettings -p /Net/IconThemeName
  
Source: http://docs.xfce.org/xfce/xfce4-session/advanced
+
Then set the following variable:
  
=== Bluetooth functionality ===
+
$ icontheme=/usr/share/icons/''theme-name''
Currently there is no bluetooth applet for Xfce that is compatible with {{pkg|bluez}} version 5. Users have 3 options for using bluetooth in Xfce:
+
  
* You can install {{AUR|bluez4}} and {{AUR|blueman-bzr}} from the [[AUR]]. The [[Blueman]] applet integrates well with the Xfce desktop but '''it should be remembered that [[Bluez4]] (the stack that [[Blueman]] relies upon) has been abandoned upstream and is no longer supported'''.
+
where ''theme-name'' is the name of the current icon theme.
  
* You can install {{pkg|gnome-bluetooth}} and {{AUR|gnome-bluetooth-applet-git}}. The latter package provides the applet for non GNOME Shell desktops as the applet code was dropped in GNOME 3.8. See [[Bluetooth#GNOME_Bluetooth]] for more information.
+
Then create symbolic links from the current icon theme into the icon theme providing the icons (this example assumes the icons are being provided by the {{AUR|elementary-xfce-icons}} theme.)
  
* You can access bluetooth functionality using command line tools. Please see the [[Bluetooth]] article for more information.
+
ln -s /usr/share/icons/elementary-xfce/apps/16/system-suspend.svg          ${icontheme}/16x16/actions/system-suspend.svg
 +
ln -s /usr/share/icons/elementary-xfce/apps/16/system-suspend-hibernate.svg ${icontheme}/16x16/actions/system-hibernate.svg
 +
ln -s /usr/share/icons/elementary-xfce/apps/22/system-suspend.svg          ${icontheme}/22x22/actions/system-suspend.svg
 +
ln -s /usr/share/icons/elementary-xfce/apps/22/system-suspend-hibernate.svg ${icontheme}/22x22/actions/system-hibernate.svg
 +
ln -s /usr/share/icons/elementary-xfce/apps/24/system-suspend.svg          ${icontheme}/24x24/actions/system-suspend.svg
 +
ln -s /usr/share/icons/elementary-xfce/apps/24/system-suspend-hibernate.svg ${icontheme}/24x24/actions/system-hibernate.svg
 +
ln -s /usr/share/icons/elementary-xfce/apps/48/system-suspend.svg          ${icontheme}/48x48/actions/system-suspend.svg
 +
ln -s /usr/share/icons/elementary-xfce/apps/48/system-suspend-hibernate.svg ${icontheme}/48x48/actions/system-hibernate.svg
  
== Troubleshooting ==
+
Log out and in again, and you should see icons for all actions.
=== xfce4-power-manager ===
+
Power-related [[Wikipedia:Advanced Configuration and Power Interface|ACPI]] events can be configured using [[systemd]] via options from {{ic|/etc/systemd/logind.conf}} to give control to xfce4-power-manager.
+
  
{{hc|/etc/systemd/logind.conf|2=
+
=== Desktop icons rearrange themselves ===
HandlePowerKey=ignore
+
HandleSuspendKey=ignore
+
HandleHibernateKey=ignore
+
HandleLidSwitch=ignore}}
+
  
This also solves the problem when the computer registers multiple suspend events.
+
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 {{ic|~/.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.
  
=== xfce4 keeps blanking display===
+
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 {{ic|row 0}} and the leftmost column is defined by {{ic|col 0}}. Therefore an entry of:
Xfce4 (as of 4.12) does not seem to respect monitor power settings in {{ic|xfce4-power-manager}}. It attempts to run the screensaver every 10 minutes. You can check this by reading out the output of {{ic|$ xset q}}. Run {{ic|$ xset s noblank}} to stop it. Alternatively add the following configuration file to {{ic|/etc/X11/xorg.conf.d/}} ( I would save it as {{ic|20-noblank.conf}}).
+
{{bc|<nowiki>
+
Section "ServerFlags"
+
Option "BlankTime" "0"
+
EndSection
+
</nowiki>|bc}}
+
  
=== xfce4-xkb-plugin ===
+
[Firefox]
There is a bug in version {{Pkg|xfce4-xkb-plugin}} ''0.5.4.1-1'' which causes xfce4-xkb-plugin to ''lose keyboard, layout switching and compose key'' settings. As a workaround you may enable ''Use system defaults'' option in keyboard settings. To do so run
+
row=3
xfce4-keyboard-settings
+
col=0
Go to ''Layout'' tab and set the ''Use system defaults'' flag, then reconfigure xfce4-xkb-plugin.
+
  
=== Locales ignored with GDM ===
+
means that the Firefox icon will be located on the 4th row of the leftmost column.
Add your locale to {{ic|/var/lib/AccountsService/users/$USER}} (replace {{ic|hu_HU.UTF-8}} with your own locale):
+
[User]
+
Language=hu_HU.UTF-8
+
XSession=xfce
+
You may also do it with sed. Note the backslash before .UTF-8:
+
# sed -i 's/Language=.*/Language=hu_HU\.UTF-8/' /var/lib/AccountsService/users/$USER
+
Restart GDM to take effect.
+
  
=== Restore default settings ===
+
=== GTK themes not working with multiple monitors ===
If for any reason you need to revert back to the default settings, try renaming {{ic|~/.config/xfce4-session/}} and {{ic|~/.config/xfce4/}}
+
  
$ mv ~/.config/xfce4-session/ ~/.config/xfce4-session-bak
+
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 {{ic|~/.config/xfce4/xfconf/xfce-perchannel-xml/displays.xml}} and reconfigure your screens.
$ mv ~/.config/xfce4/ ~/.config/xfce4-bak
+
 
 +
=== Icons do not appear in right-click menus ===
  
Logout and login for changes to take effectIf upon logging in you get an error window with the heading "Unable to load a failsafe session," see the [[#Session failure|Session Failure]] section on this page.
+
{{Note|Despite the deprecation of GConf, this method does still work.}}
 +
 
 +
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
 +
 
 +
=== Keyboard settings are not saved in xkb-plugin ===
 +
 
 +
There is a bug in {{Pkg|xfce4-xkb-plugin}} ''0.5.4.1-1'' which causes it to lose keyboard, layout switching and compose key settings. [https://bugzilla.xfce.org/show_bug.cgi?id=10226] As a workaround, enable ''Use system defaults'' in {{ic|xfce4-keyboard-settings}}, then reconfigure ''xfce4-xkb-plugin''.
  
 
=== NVIDIA and xfce4-sensors-plugin ===
 
=== NVIDIA and xfce4-sensors-plugin ===
To detect and use sensors of nvidia gpu you need to install {{AUR|libxnvctrl}} and then recompile {{Pkg|xfce4-sensors-plugin}} package.
 
  
=== Session failure ===
+
To detect and use sensors of nvidia gpu you need to install {{Pkg|libxnvctrl}} and then rebuild {{Pkg|xfce4-sensors-plugin}} with [[ABS]]. You also have the option of using {{AUR|xfce4-sensors-plugin-nvidia}} which replaces {{Pkg|xfce4-sensors-plugin}}.
If the window manager does not load correctly, you maybe got a session error. Typical symptoms of this can include:
+
  
* the mouse is an X and/or does not appear at all
+
=== Panel applets keep being aligned on the left ===
* window decorations have disappeared and windows cannot be closed
+
* "Window Manager" settings tool ({{ic|xfwm4-settings}}) will not start, reporting
+
These settings cannot work with your current window manager (unknown)
+
* errors being reported by {{ic|slim}} or your login manager like
+
No window manager registered on screen 0
+
  
Restarting xfce or rebooting your system may resolve the problem but more likely the problem is a corrupt session. Delete the session folder below the {{ic|.cache}} folder:
+
Add a separator someplace before the right end and set its "expand" property. [https://forums.linuxmint.com/viewtopic.php?f=110&t=155602}]
$ rm -r ~/.cache/sessions/
+
  
 
=== Preferred Applications preferences have no effect ===
 
=== Preferred Applications preferences have no effect ===
If you have set your preferred applications with ''exo-preferred-applications'', but they do not seem to be taken into consideration, see [[#xdg-open integration (Preferred Applications)]]
 
  
=== Action Buttons/Missing Icons ===
+
Most applications rely on [[xdg-open]] for opening a preferred application for a given file or URL.
This happens if icons for some actions (Suspend, Hibernate) are missing from the icon theme, or at least do not have the expected names. First, find out the currently used icon theme in the Settings Manager (→Appearance→Icons). Match this with a subdirectory of {{ic|/usr/share/icons}}. For example, if the icon theme is GNOME, make a note of the directory name {{ic|/usr/share/icons/gnome}}.
+
  
icontheme=/usr/share/icons/gnome
+
In order for xdg-open and xdg-settings to detect and integrate with the Xfce desktop environment correctly, you need to [[install]] the {{Pkg|xorg-xprop}} package.
  
Make sure that the {{Pkg|xfce4-power-manager}} is installed as this contains the needed icons. Now create symbolic links from the current icon theme into the {{ic|hicolor}} icon theme.
+
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.
  
ln -s /usr/share/icons/hicolor/16x16/actions/xfpm-suspend.png  ${icontheme}/16x16/actions/system-suspend.png
+
To make sure xdg-open integration is working correctly, ask ''xdg-settings'' for the default web browser and see what the result is:
ln -s /usr/share/icons/hicolor/16x16/actions/xfpm-hibernate.png ${icontheme}/16x16/actions/system-hibernate.png
+
ln -s /usr/share/icons/hicolor/22x22/actions/xfpm-suspend.png  ${icontheme}/22x22/actions/system-suspend.png
+
ln -s /usr/share/icons/hicolor/22x22/actions/xfpm-hibernate.png ${icontheme}/22x22/actions/system-hibernate.png
+
ln -s /usr/share/icons/hicolor/24x24/actions/xfpm-suspend.png  ${icontheme}/24x24/actions/system-suspend.png
+
ln -s /usr/share/icons/hicolor/24x24/actions/xfpm-hibernate.png ${icontheme}/24x24/actions/system-hibernate.png
+
ln -s /usr/share/icons/hicolor/48x48/actions/xfpm-suspend.png  ${icontheme}/48x48/actions/system-suspend.png
+
ln -s /usr/share/icons/hicolor/48x48/actions/xfpm-hibernate.png ${icontheme}/48x48/actions/system-hibernate.png
+
  
Log out and in again, and you should see icons for all actions.
+
# xdg-settings get default-web-browser
  
=== Enable cedilla ç/Ç instead of ć/Ć ===
+
If it replies with:
When you select the keyboard layout "U.S., alternative international" in Settings --> Keyboard --> Layout to enable accents, the typical combination for the cedilla ' + c results in ć instead of ç.To change this suffice edit files gtk.immodules for gtk-2.0  and immodules.cache for gtk-3.0 in line that contains "cedilla" adding both "en" in the list "az:ca:co:fr:gv:oc:pt:sq:tr:wa" but in alphabetical order, staying that way in /etc/gtk-2.0/gtk.immodules
+
  
  "/usr/lib/gtk-2.0/2.10.0/immodules/im-cedilla.so"
+
  xdg-settings: unknown desktop environment
"cedilla" "Cedilla" "gtk20" "/usr/share/locale" "az:ca:co:en:fr:gv:oc:pt:sq:tr:wa"
+
  
and this in /usr/lib/gtk-3.0/3.0.0/immodules.cache
+
it means that it has failed to detect Xfce as your desktop environment, which is likely due to a missing {{Pkg|xorg-xprop}} package.
  
"/usr/lib/gtk-3.0/3.0.0/immodules/im-cedilla.so"
+
=== Restore default settings ===
"cedilla" "Cedilla" "gtk30" "/usr/share/locale" "az:ca:co:en:fr:gv:oc:pt:sq:tr:wa"
+
  
Then, do
+
If for any reason you need to revert back: to the default settings, rename {{ic|~/.config/xfce4-session/}} and {{ic|~/.config/xfce4/}}
# echo "export GTK_IM_MODULE=cedilla" >> /etc/environment
+
  
Done. Simply just close and reopen the gtk programs like gedit.
+
$ mv ~/.config/xfce4-session/ ~/.config/xfce4-session-bak
 +
$ mv ~/.config/xfce4/ ~/.config/xfce4-bak
  
=== Non ASCII characters when mounting USB sticks ===
+
Relogin for changes to take effect. If you get {{ic|Unable to load a failsafe session}} upon login, see the [[#Session failure]] section.
A common problem when automounting USB sticks formatted with fat filesystem is the inability to properly show characters as umlauts, ñ, ß, etc. This may be solved by changing the default iocharset to UTF-8, which is easily done adding a line to {{ic|/etc/xdg/xfce4/mount.rc}}:
+
  
[vfat]
+
=== Session failure ===
uid=<auto>
+
shortname=winnt
+
'''utf8=true'''
+
# FreeBSD specific option
+
longnames=true
+
flush=true
+
  
Note that when using utf-8, the system will distinct between upper- and lowercases, potentially corrupting your files, so be careful.
+
Symptoms include:
  
It is possible to mount vfat devices with ''flush'' option, so that when copying to USB sticks data flushes more often, thus making thunar's progress bar to stays up until finished. Adding ''async'' instead will speed up write ops, but make sure to use ''Eject'' option in Thunar to unmount the stick. Globally, mount options for storage devices present at boot can be set in [[fstab]], and for other devices in [[udev]] rules.
+
* The mouse is an X and/or does not appear at all;
 +
* Window decorations have disappeared and windows cannot be closed;
 +
* ({{ic|xfwm4-settings}}) will not start, reporting {{ic|These settings cannot work with your current window manager (unknown)}};
 +
* Errors reported by a [[display manager]] such as {{ic|No window manager registered on screen 0}}.
 +
* Unable to load a failsafe session:
  
=== Video tearing when Xfwm compositing is enabled ===
+
Unable to load a failsafe session.
This is a known problem. Consider using a standalone compositor like [[Compton]] or [[Xcompmgr]]. Alternatively, you could replace your window manager with something like [[Compiz]] or Kwin ({{aur|kwin-standalone-git}}) which provide their own compositors.
+
Unable to determine failsafe session name. Possible causes: xfconfd isn't running (D-Bus setup problem); environment variable $XDG_CONFIG_DIRS is set incorrectly (must include "/etc"), or xfce4-session is installed incorrectly.  
  
=== GTK themes not working with multiple monitors ===
+
Restarting xfce or rebooting your system may solve the problem, but a corrupt session is the likely cause. Delete the session folder:
Some configuration tools might corrupt displays.xml, which results in GTK themes under Applications Menu -> Settings -> Appearance ceasing to work. To fix the issue, delete {{ic|~/.config/xfce4/xfconf/xfce-perchannel-xml/displays.xml}} and reconfigure your screens.
+
 
 +
$ rm -r ~/.cache/sessions/
 +
 
 +
Also make sure that the relevant folders in {{ic|$HOME}} are owned by the user starting {{ic|xfce4}}. See [[Chown]].
 +
 
 +
=== Fonts in window title crashing xfce4-title ===
 +
 
 +
[[Install]] {{Pkg|ttf-droid}} and {{Pkg|ttf-dejavu}}. See also {{Bug|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, logind handles the lid close event. To change this behavior so that the 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
 +
Note that each time the laptop lid settings are changed in the power manager, this setting will be reset.
 +
 
 +
===  Power Manager Plugin shows battery time and remaining percentage ===
 +
 
 +
Since 1.5.1 an hidden option has been introduced to configure a label on the statusbar. The new xfconf4 option {{ic|show-panel-label}} of type {{ic|int}} can be configured for different label formats. {{ic|show-panel-label}} can be set to 0 (no label), 1 (percentage), 2 (remaining time) or 3 (both).
 +
 
 +
Source: [https://mail.xfce.org/pipermail/xfce-announce/2015-June/000424.html 1.5.1 release notes]
 +
 
 +
== See also ==
  
==See also==
+
* [http://www.xfce.org/about/ Xfce - About]
 
* http://docs.xfce.org/ - The complete documentation.
 
* http://docs.xfce.org/ - The complete documentation.
 
* [http://www.xfce-look.org/ Xfce-Look] - Themes, wallpapers, and more.
 
* [http://www.xfce-look.org/ Xfce-Look] - Themes, wallpapers, and more.
 
* [http://xfce.wikia.com/wiki/Frequently_Asked_Questions Xfce Wikia] -  How to edit the auto generated menu with the menu editor
 
* [http://xfce.wikia.com/wiki/Frequently_Asked_Questions Xfce Wikia] -  How to edit the auto generated menu with the menu editor
 
* [http://wiki.xfce.org Xfce Wiki]
 
* [http://wiki.xfce.org Xfce Wiki]

Latest revision as of 15:16, 30 November 2016

Xfce is a lightweight and modular Desktop environment currently based on GTK+ 2. To provide a complete user experience, it includes a window manager, a file manager, desktop and panel.

Contents

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 Xfce

Choose Xfce Session from the menu in a display manager of choice, or add exec startxfce4 to Xinitrc.

Note: Do not call the 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. Use xfconf-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

Whisker menu

xfce4-whiskermenu-plugin is an alternate 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'...).

Edit entries

A number of graphical tools are available for this task:

  • XAME — GUI tool written in Gambas designed specifically for editing menu entries in Xfce, it will not work in other environments. (Discontinued)
http://www.redsquirrel87.com/XAME.php || xameAUR
  • MenuLibre — An advanced menu editor that provides modern features in a clean, easy-to-use interface.
https://launchpad.net/menulibre || menulibreAUR.
  • Alacarte — Menu editor for GNOME
http://www.gnome.org/ || alacarte

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.

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 Thunar options from right-click menu

Issue the following command:

$ xfconf-query -c xfce4-desktop -v --create -p /desktop-icons/style -t int -s 0

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:

$ 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

Startup applications

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.

Alternatively, add the commands you wish to run (including setting environment variables) to xinitrc (or xprofile when a display manager is being used).

Delay application startup

Sometimes it might be useful to delay the startup of an application. Specifying a command such as sleep 3 && command under Application Autostart does not work. As a workaround, one can use the following syntax instead:

sh -c "sleep 3 && command"

Lock the screen

To lock an Xfce4 session through the xflock4 script one of xscreensaver, gnome-screensaver, slock or xlockmore packages needs to be installed. Alternatively you can set a lock command with

$ xfconf-query -c xfce4-session -p /general/LockCommand -s "light-locker-command -l" --create -t string

If you want to update the command, you can use

$ xfconf-query -c xfce4-session -p /general/LockCommand -s "light-locker-command -l"

See List of applications/Security#Screen lockers for a comprehensive list of screen lockers.

Tip: The light-locker session locker integrates with xfce4-power-manager. If light-locker is installed, a Security tab is added to the power manager settings and the existing Lock screen when system is going for sleep setting is relocated under the Security tab.

User switching

Xfce4 has support for user switching when used with a Display manager that has this functionality - examples being LightDM and GDM. Please consult your display manager's wiki page for more information. When you have a display manager installed and configured correctly you can switch users from the 'action buttons' menu item in the panel.

For the User Switch action button to work without GDM, a workaround is required:

Disable saved sessions

Per user, saved sessions can be disabled by executing the following:

$ xfconf-query -t bool -c xfce4-session -p /general/SaveOnExit -s false

Then navigate to Applications -> Settings -> Session and Startup -> Sessions and click the Clear saved sessions button.

Tip: If the command above does not change the setting persistently, use the following command instead: 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.

Default window manager

Note: For the changes to take effect, you will need to clear the saved sessions and ensure that session saving is disabled when logging out for the first time. Once the window manager of choice is running, session saving can be enabled again.

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 wm_name

If you want to start the window manager with command line options, see the command below:

$ xfconf-query -c xfce4-session -p /sessions/Failsafe/Client0_Command -t string -t string -s wm_name -s --wm-option

If you need more command line options, simply add more -t string and -s --wm-option arguments to the command.

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/xfce4, and set in Settings > Window Manager. GTK+ themes 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.

Sound

Xfce4 mixer

Note: Xfce4 mixer and Xfce4 volumed are no longer being maintained upstream as they cannot be ported to GStreamer 1.0. For more information, see the 4.12 news post.

Xfce4 mixer, provided by xfce4-mixer, is the GUI mixer app and panel plugin from the Xfce team. It is part of the xfce4 group. For PulseAudio and OSS support, you will need to install gstreamer0.10-good-plugins if it is not installed already.

You might need to change the default sound card for Xfce4 mixer to function correctly. For further details, such as how to set the default sound card, see Advanced Linux Sound Architecture#Set the default sound card. Alternatively you can use PulseAudio together with pavucontrol or OSS. For OSS, see OSS#Applications that use GStreamer.

If you did need to change the default soundcard, logout to ensure that the changes take effect.

Change default sound card in Xfce4 mixer

In some cases (when using PulseAudio or xfce4-volumedAUR for instance) it might be necessary to change the default sound card in Xfce4 Mixer in order for volume control to work as expected. [1]

To change the default sound card, open xfce4-settings-editor and navigate to xfce4-mixer and check the entries under sound-cards. Locate the correct entry for the card you are using and then replace the values of sound-card and active-card with the entry. If you are using PulseAudio then the entry will likely be similar to the following: PlaybackInternalAudioAnalogStereoPulseAudioMixer. Then logout for the changes to take effect.

xfce4-alsa-plugin

If you do not use PulseAudio, you can install xfce4-alsa-pluginAUR. It provides a simple panel plugin with the ability to control ALSA volume, though it does not support keyboard volume buttons.

Keyboard volume buttons

If the xfce4-mixer package is version 4.10.0-3 or greater, then the mixer panel applet provides the ability to control the volume using the keyboard. However, volume notifications will not be shown. Alternatively, xfce4-volumedAUR maps volume keys to Xfce4 mixer, and displays notifications through Xfce4-notifyd. If you are using PulseAudio and you do not wish to use Xfce4 Mixer at all, install xfce4-pulseaudio-pluginAUR. This provides a panel applet which has support for keyboard volume control and volume notifications.

For non desktop environment specific alternatives, see List of applications#Volume managers.

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.

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-polkit-gitAUR.

Display blanking

Note: There are some issues associated with blanking and resuming from blanking in some configurations. See [2][3].

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 will control blanking and DPMS settings. These settings can be configured by running xfce4-power-manager-settings and clicking the Display tab. Note that unticking the Handle display power management option means that the Power Manager will disable DPMS - it does not mean that the Power Manager will relinquish control of DPMS. Also note that it will not disable screen blanking. 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

Tango-view-refresh-red.pngThis article or section is out of date.Tango-view-refresh-red.png

Reason: With xfce4-power-manager>1.5.1 the issue described below should in theory no longer apply. [4] (Discuss in Talk:Xfce#)

See XScreenSaver#DPMS and blanking settings. Note that if XScreenSaver is running alongside Xfce Power Manager, it may not be entirely clear which application is in control of blanking and DPMS as both applications 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 film for instance), it is advisable to disable blanking and DPMS through both applications.

xset

If neither of the above applications are running, then blanking and DPMS settings can be controlled using the xset command, see DPMS#Modifying DPMS and screensaver settings using xset.

Tips and tricks

Hide partitions from thunar and xfdesktop

See Udisks#Hide selected partitions.

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 screenshooter's man page 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 GUI under Appearance tab in Preferences. These are the colors that are available to most console applications like Emacs, Vi and so on. Their settings are stored individually for each system user in ~/.config/xfce4/terminal/terminalrc file. There are also so 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 extra/terminal package comes with a darker color 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 tango color theme, open with your favorite editor

~/.config/xfce4/terminal/terminalrc

And add(replace) these lines:

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 URL's 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

Colour management

Xfce has no native support for colour management. [5] See ICC profiles for alternatives.

Multiple monitors

As of xfce4-settings version 4.11.4, Xfce has support for multiple monitors. Settings can be configured in the Applications -> Settings -> Display dialog. For more information, see the display article from the Xfce documentation.

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: http://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.

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

Tango-edit-clear.pngThis article or section needs language, wiki syntax or style improvements.Tango-edit-clear.png

Reason: Convoluted way of simply configuring Touchpad Synaptics (Discuss in Talk:Xfce#)

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.

Troubleshooting

Action buttons are missing icons

This happens if icons for some actions (Suspend, Hibernate) are missing from the icon theme, or do not have the expected names. To fix this, install an icon theme which has the necessary icons already added; see Icons#Xfce icons.

Then, you can switch to that icon theme using Applications -> Settings -> Appearance -> Icons.

Alternatively you can use the required icons provided by the icon theme you installed in your current icon theme. To do so, you first need to find out what the currently used icon theme is called. You can do so by using the command below:

$ xfconf-query -c xsettings -p /Net/IconThemeName

Then set the following variable:

$ icontheme=/usr/share/icons/theme-name

where theme-name is the name of the current icon theme.

Then create symbolic links from the current icon theme into the icon theme providing the icons (this example assumes the icons are being provided by the elementary-xfce-iconsAUR theme.)

ln -s /usr/share/icons/elementary-xfce/apps/16/system-suspend.svg           ${icontheme}/16x16/actions/system-suspend.svg
ln -s /usr/share/icons/elementary-xfce/apps/16/system-suspend-hibernate.svg ${icontheme}/16x16/actions/system-hibernate.svg
ln -s /usr/share/icons/elementary-xfce/apps/22/system-suspend.svg           ${icontheme}/22x22/actions/system-suspend.svg
ln -s /usr/share/icons/elementary-xfce/apps/22/system-suspend-hibernate.svg ${icontheme}/22x22/actions/system-hibernate.svg
ln -s /usr/share/icons/elementary-xfce/apps/24/system-suspend.svg           ${icontheme}/24x24/actions/system-suspend.svg
ln -s /usr/share/icons/elementary-xfce/apps/24/system-suspend-hibernate.svg ${icontheme}/24x24/actions/system-hibernate.svg
ln -s /usr/share/icons/elementary-xfce/apps/48/system-suspend.svg           ${icontheme}/48x48/actions/system-suspend.svg
ln -s /usr/share/icons/elementary-xfce/apps/48/system-suspend-hibernate.svg ${icontheme}/48x48/actions/system-hibernate.svg

Log out and in again, and you should see icons for all actions.

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.

Icons do not appear in right-click menus

Note: Despite the deprecation of GConf, this method does still work.

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

Keyboard settings are not saved in xkb-plugin

There is a bug in xfce4-xkb-plugin 0.5.4.1-1 which causes it to lose keyboard, layout switching and compose key settings. [6] As a workaround, enable Use system defaults in xfce4-keyboard-settings, then reconfigure xfce4-xkb-plugin.

NVIDIA and xfce4-sensors-plugin

To detect and use sensors of nvidia gpu you need to install libxnvctrl and then rebuild xfce4-sensors-plugin with ABS. You also have the option of using xfce4-sensors-plugin-nvidiaAUR which replaces xfce4-sensors-plugin.

Panel applets keep being aligned on the left

Add a separator someplace before the right end and set its "expand" property. [7]

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, reporting These 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 isn't 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 is the likely 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, logind handles the lid close event. To change this behavior so that the 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

Note that each time the laptop lid settings are changed in the power manager, this setting will be reset.

Power Manager Plugin shows battery time and remaining percentage

Since 1.5.1 an hidden option has been introduced to configure a label on the statusbar. The new xfconf4 option show-panel-label of type int can be configured for different label formats. show-panel-label can be set to 0 (no label), 1 (percentage), 2 (remaining time) or 3 (both).

Source: 1.5.1 release notes

See also