Xfce In Fedora
Xfce is a lightweight desktop environment available in Fedora. It aims to be fast and lightweight, while remaining visually appealing and easy to use.
Getting Xfce
Installation Medium
There is an official Fedora-Spin dedicated to the Xfce desktop. A Live CD is available for x86_64 architectures, and a raw image file for aarch64 architectures. The installers come pre-configured to make “your desktop...speedier!”
More details on the Live CD can be found here: https://fedoraproject.org/wiki/SIGs/Xfce/XfceLive
Standard installation using dnf
If you have an existing system and would like to install xfce, you can use dnf to install the desktop.
To install Xfce using dnf, execute the following as root:
dnf install @xfce-desktop-environment
After installing Xfce you can use the "Session" menu to choose an Xfce login instead of a GNOME or KDE login. Sometimes you need to reboot the system.
Testing Wayland
As of Xfce 4.20, Wayland support is still in development but able to be tested.
The roadmap can be found here: https://wiki.xfce.org/releng/wayland_roadmap
To test Wayland on Fedora 42 with Xfce 4.20 you can use the following steps:
Package Requirements
From the Roadmap page:
"A wlroots compositor is almost a prerequisite for most core components (as well as panel plugins and some apps), at least to ensure that all features ported to Wayland are available. The default compositor is labwc, but wayfire is another wlroots compositor on which tests have generally been carried out."
Install the Wayland compositors:
dnf install labwc wlroots
Switching to/Starting Xfce on Wayland
If you are currently running Xfce in X11, switch to the multi-user.target:
systemctl isolate multi-user.target
Now start Xfce in Wayland with:
startxfce4 --wayland
Tips and Tricks
Disable always-on-top behaviour of XFCE panel
The alway-on-top property is call struts in XFCE and there is a hidden property name disable-struts
to disable this property. Hence, you just need to use xfconf-query
as below:
xfconf-query -c xfce4-panel -p /panels/panel-<number>/disable-struts -t bool -n -s true
Make sure to replace <number>
with the zero-based number of your panel. Note that this option only allow other windows to maximize over the panel, it doesn't keep the panel below the window. To achieve the latter, see the next tip.
Make the panel stay "below" all other windows
Apparently there is no automated way to do this. One solution is to use wmctrl to change the property of the panel. More details:
- Make sure you have
wmctrl
installed:
su -c 'yum install -y wmctrl'
or from Fedora 22 with dnf:
su -c 'dnf install -y wmctrl'
- Now, check for the ID(s) of
xfce4-panel
on the first column:
wmctrl -l | grep "xfce4-panel$"
The -l
option lists running windows in a EWMH/NetWM-compatible window manager.
If you have multiple panels running, usually the order of xfce4-panel
processes follow the order of your panel. I.e. if you have 3 panels, the ID of panel0 appears first (with lesser hex value), then panel1, and lastly panel2.
- After determining the ID(s) of your panel(s), use
wmctl
to activate thebelow
properties:
wmctrl -i -r <id> -b add,below
Options explanation:
-i
indicates you are identifying a window using ID instead of string name.
-r
specifies the target (the ID followed).
-b add,below
add the "below" property to the specified window. Note that your panel is also a window.
Links
- The Xfce SIG (Special Interest Group) is a group of Fedora contributors that help improve the Xfce experience in Fedora
- http://www.xfce.org/ - Home of the Xfce Desktop Environment