I’m a great fan of lightweight desktop environments. Xfce is definitely one of my favourites, and it is in heavy use on my older hardware. My older desktop machines and laptops typically don’t require Enterprise Linux distributions, but if they did, they would run Oracle Linux :)
This post explains how to install Xfce on Oracle Linux 9.4 to 9.6 x86-64 using the EPEL (Extra Packages for Enterprise Linux) repository. I’m fairly sure the same applies to ARM64 as well, but I didn’t have time to test. The article is based on the latest ISO image from https://yum.oracle.com/oracle-linux-isos.html. I installed a minimum system, and applied all the patches I could get my hands on until September 14th 2025.

BaseOS installation
The installation is pretty much the same as usual, be sure to perform a minimal install, otherwise there are too many components pre-installed, including a GUI. To save space on my VMs I only ever want one GUI installed at a time (if ever). The RPMs required for Xfce are part of the Extra Packages for Enterprise Linux (EPEL) repository
Be advised that enabling Extra Packages for Enterprise (EPEL) come with a warning:
Note: The contents in the following repositories are for development purposes only. Oracle suggests these not be used in production.
Don’t install packages from that repository unless you are ok with the message. You can use GNOME instead of Xfce for a Server-with-GUI experience.
Enabling EPEL
You were ok with the above warning, weren’t you? If so, read on, if not, please use GNOME instead of Xfce.
Start by installing the EPEL repository configuration files (link to documentation), then enable the repository. yum-config-manager is part of the yum-utils package.
sudo dnf install oracle-epel-release-el9
sudo yum-config-manager --enable ol9_developer_EPEL
If you prefer, you can also manually switch the enabled flag in the config file from 0 to 1.
Installing X11
The second step is to install the basic xorg-x11 packages. Which really is a one-liner:
sudo dnf groupinstall "base-x"
It’s only a small list of packages:
[martin@localhost ~]$ sudo dnf groupinfo "base-x"
Last metadata expiration check: 1:15:35 ago on Mon 24 Jun 2024 16:40:33 CEST.
Group: base-x
Description: Local X.org display server
Mandatory Packages:
glx-utils
mesa-dri-drivers
plymouth-system-theme
xorg-x11-drv-evdev
xorg-x11-drv-fbdev
xorg-x11-drv-libinput
xorg-x11-drv-vmware
xorg-x11-drv-wacom
xorg-x11-server-Xorg
xorg-x11-utils
xorg-x11-xauth
xorg-x11-xinit
xorg-x11-xinit-session
Installing Xfce
It’s finally time to install Xfce. Since June 25th you can use a one-liner:
[martin@localhost ~]$ sudo dnf groupinfo "Xfce"
Last metadata expiration check: 0:19:33 ago on Tue 25 Jun 2024 15:41:15 CEST.
Group: Xfce
Description: A lightweight desktop environment that works well on low end machines.
Mandatory Packages:
Thunar
xfce4-panel
xfce4-session
xfce4-settings
xfconf
xfdesktop
xfwm4
Default Packages:
gdm
network-manager-applet
openssh-askpass
thunar-archive-plugin
thunar-volman
tumbler
xfce-polkit
xfce4-appfinder
xfce4-power-manager
xfce4-pulseaudio-plugin
xfce4-screensaver
xfce4-terminal
Conditional Packages:
pinentry-gnome3
[martin@localhost ~]$ sudo dnf groupinstall "Xfce"
Have a look at the other xfce* packages to see if you have a need for them. I typically add mousepad and firefox and voila – I have a working Xfce4 environment :) I prefer to keep the VMs in command-line-mode, but when I need a GUI I start it using startxfce4.
You must be logged in to post a comment.