Can I remove some of these packages if only using GNOME on Wayland?

Hi,

I almost exclusively use GNOME on Wayland. Can I remove some of the xorg-* packages that was installed by default?


$ dnf list installed | grep xorg
xorg-x11-drv-amdgpu.x86_64                       23.0.0-2.fc39                     @anaconda             
xorg-x11-drv-ati.x86_64                          19.1.0-10.fc39                    @anaconda             
xorg-x11-drv-evdev.x86_64                        2.10.6-14.fc39                    @anaconda             
xorg-x11-drv-fbdev.x86_64                        0.5.0-13.fc39                     @anaconda             
xorg-x11-drv-intel.x86_64                        2.99.917-56.20210115.fc39         @anaconda             
xorg-x11-drv-libinput.x86_64                     1.4.0-1.fc39                      @anaconda             
xorg-x11-drv-nouveau.x86_64                      1:1.0.17-6.fc39                   @anaconda             
xorg-x11-drv-openchrome.x86_64                   0.6.400-6.20210215git5dbad06.fc39 @anaconda             
xorg-x11-drv-qxl.x86_64                          0.1.6-2.fc39                      @anaconda             
xorg-x11-drv-vesa.x86_64                         2.5.0-6.fc39                      @anaconda             
xorg-x11-drv-vmware.x86_64                       13.4.0-2.fc39                     @anaconda             
xorg-x11-drv-wacom.x86_64                        1.2.0-2.fc39                      @anaconda             
xorg-x11-drv-wacom-serial-support.x86_64         1.2.0-2.fc39                      @anaconda             
xorg-x11-server-Xorg.x86_64                      1.20.14-28.fc39                   @updates              
xorg-x11-server-Xwayland.x86_64                  23.2.3-1.fc39                     @updates              
xorg-x11-server-common.x86_64                    1.20.14-28.fc39                   @updates              
xorg-x11-xauth.x86_64                            1:1.1.2-4.fc39                    @anaconda             
xorg-x11-xinit.x86_64                            1.4.2-1.fc39                      @updates

My CPU-iGPU:

CPU:
  Info: 8-core model: AMD Ryzen 7 4800U with Radeon Graphics bits: 64
    type: MT MCP cache: L2: 4 MiB
  Speed (MHz): avg: 1450 min/max: 1400/1800 cores: 1: 1400 2: 1800 3: 1400
    4: 1400 5: 1424 6: 1397 7: 1397 8: 1400 9: 1397 10: 1400 11: 1800 12: 1400
    13: 1397 14: 1400 15: 1400 16: 1400
Graphics:
  Device-1: AMD Renoir [Radeon RX Vega 6 ] driver: amdgpu v: kernel
  Display: wayland server: X.Org v: 23.2.3 with: Xwayland v: 23.2.3
    compositor: gnome-shell v: 45.3 driver: dri: radeonsi gpu: amdgpu
    resolution: 1920x1080~60Hz
  API: OpenGL v: 4.6 vendor: amd mesa v: 23.3.3 renderer: AMD Radeon
    Graphics (radeonsi renoir LLVM 17.0.6 DRM 3.54 6.6.9-200.fc39.x86_64)
  API: EGL Message: EGL data requires eglinfo. Check --recommends.
1 Like

Here are some commands that could be of use to you :

dnf deplist xorg-* This will give you a comprehensive list of things to look over as you make your decision.

You can check the repolist for some more stuff, but this might be too much IMO
dnf repoquery --whatrequires xorg*

2 Likes

Thanks @hamrheadcorvette for the swift reply!

Do I understand this correctly that dnf deplist xorg-* will give a list of what xorg-* depends on and dnf repoquery --whatrequires xorg* a list of what depends on xorg-* ?

I don’t really recommend doing this (what’s the point?), but you can uninstall xorg-x11-server-Xorg, which will take most of those packages.

You must keep Xwayland; it lets you run X11 apps inside a Wayland session, and it’s a hard depedency of GNOME.

1 Like

dnf deplist xorg-*
This command will list the dependencies and also show if other packages depend on it.

And : dnf repoquery --whatrequires xorg* This command will list the packages that depend on it.

From the Docs :

Searches available DNF repositories for selected packages 
and displays the requested information about them.
 It is an equivalent of rpm -q for remote repositories.
1 Like

Thank you both @hamrheadcorvette and @chrisawi for your replies!

I could remove all but two xorg-* packages, xorg-x11-xauth.x86_64 and xorg-x11-xinit.x86_64. The first is required by the second which is apparently required by gdm and will break gnome-shell if removed :grimacing:

1 Like

I install fedora using a kickstart method. I test the kickstart in a vm always looking for ways to reduce package count. My desktop is gnome using wayland and the only xorg-x11 packages install are:

rpm -qa | grep xorg-x11
xorg-x11-xauth-1.1.2-3.fc38.x86_64
xorg-x11-xinit-1.4.0-17.fc38.x86_64
xorg-x11-server-Xwayland-22.1.9-4.fc38.x86_64
xorg-x11-server-common-1.20.14-28.fc38.x86_64

xauth and xinit seem like they would never be used but they are pulled in by gdm which is used

dnf -C rq --whatrequires xorg-x11-xauth --installed
xorg-x11-xinit-0:1.4.0-17.fc38.x86_64
dnf -C rq --whatrequires xorg-x11-xinit --installed
gdm-1:44.1-1.fc38.x86_64
ibus-0:1.5.28-6.fc38.x86_64

There are altogether too many packages installed using any of the workstation variants and no motivation in the fedora community to address this issue, in fact it seems to be considered a feature. The response usually is along the lines of space is cheap and least common denominator user is more easily supported if even the kitchen sink is automatically installed. Part of the problem is in the large set of packages used to define workstation. Another is that many packages have not been built with minimal dependency in mind.

Cloud, iot, automotive use cases do address minimization to a much greater degree but I do not recognize the presence of these communities on this forum. Recommendations on other forums welcome.