0

I need to upgrade my Lite installation with a GUI/desktop. There are plenty guides online, e. g. Jeff Geerling's, but they all suggest installing Xserver:

sudo apt install xserver-xorg raspberrypi-ui-mods

It is my understanding that Bookworm is the first release to use Wayland. So how to install the official desktop onto the Bookworm Lite installation?

3 Answers 3

2

So how to install the official desktop onto the Bookworm Lite installation?

A major part of what the package management system (fronted by apt) manages is dependency resolution. What that adds up to is you do not have to think about dependencies very much.

You can see the list of immediate dependencies with apt show [package name], eg.:

> apt show raspberrypi-ui-mods
Package: raspberrypi-ui-mods
Version: 1.20230127
Priority: optional
Section: x11
Maintainer: Simon Long <[email protected]>
Installed-Size: 2,883 kB
Depends: dconf-gsettings-backend | gsettings-backend, lxpanel, pcmanfm, openbox, xserver-xorg, x11-xserver-utils, policykit-1, lightdm, raspberrypi-sys-mods (>= 20210706), zenity, libglib2.0-bin, desktop-file-utils, lxsession, adduser, mutter, xdg-user-dirs, raspi-config (>= 20220301)
Recommends: xserver-xorg-video-fbturbo, fonts-piboto (>= 1.1), pipanel, lxinput, pi-greeter, rpd-plym-splash, rpd-wallpaper, pishutdown, scrot, gtk2-engines-pixbuf, gtk2-engines-clearlookspix, gnome-icon-theme, pixflat-icons, lxplug-volumepulse, lxplug-network, lxplug-bluetooth, lxplug-ejecter, lxplug-ptbatt, rc-gui (>= 1.18), gtk2-engines-pixflat, lxplug-cputemp, lxplug-magnifier, rp-bookshelf, agnostics, gui-pkinst, cups, system-config-printer, pi-printer-support, lxplug-updater, lxplug-netman, lxplug-menu
Conflicts: raspberrypi-artwork
Replaces: raspberrypi-artwork
Download-Size: 1,264 kB
APT-Manual-Installed: yes
APT-Sources: http://archive.raspberrypi.org/debian bullseye/main arm64 Packages
Description: Config to customise the LXDE UI for the Raspberry Pi
 Customised theme and configuration for LXDE desktop on Raspberry Pi.

There are various bits of interesting and potentially useful information there, such as the implication that this package conflicts with raspberrypi-artwork because it replaces raspberrypi-artwork. Fortunately, package conflicts are not part of the problem here.

That's actually from a bullseye system since I have not upgraded anything yet, but it will probably be pretty similar except for the Wayland dependencies.

In any case, you do not have to go through the dependency list and install each one yourself, first installing its list of dependencies after you install the list of dependencies for all of those and so on. The installer already knows what they are.

So all you need to do is

> sudo apt install raspberrypi-ui-mods

And whatever isn't already installed from the dependency tree will be installed now.

I won't promise you'll now have a system identical to the full version, but you should have one you can start a GUI with. Since a display manager, lightdm, is in that list -- the display manager is the thing that does the graphical login, which is distinct from the GUI desktop proper because on a system with multiple desktops systems installed, you can choose which one to run from the GUI login page -- it probably will boot to a GUI login too.

6
  • That's a good point, thank you. So, listing xserver-xorg for manual installation is either a mistake by Jeff (and other guides, he's not the only one to give this exact command), or there was a dependency issue in earlier ROS releases that's now fixed. However, if the new OS uses Wayland, why does it event want to install xserver? Commented Oct 24, 2023 at 18:27
  • 1
    It's hard to see how that could be necessary -- even if the Rpi devs missed it off the dependency list for raspberrypi-ui-mods, something that was on that list would have had the same dependency (and the list couldn't have been empty, because just xserver-xorg would not be enough). A lot of Pi stuff online smells of cargo cult programming, perhaps because of the misconception that linux was invented for the raspberry pi (although to be fair, a lot of stuff online period is like that).
    – goldilocks
    Commented Oct 24, 2023 at 19:15
  • WRT a continued dependency on xserver-xorg, this may be because of other required things that still depend on it. A certain amount of commonly used software contains Xorg specific code, for which there is Xwayland; have a look at the little diagram here and notice there is an Xserver component: wayland.freedesktop.org/xserver.html If I was forced to place a bet though, I'd guess that's not why, it's just symptomatic of how deeply embedded X dependencies are in the fabric of the OS. Not a big deal: It is probably <= 100 mb install and won't impact anything if it isn't actually used.
    – goldilocks
    Commented Oct 24, 2023 at 19:15
  • I see! Great answer, thank you. Of course, it's not a big deal, although I do like my installs clutter-free. But even on a 16 GB SD card which I'm forced to use until a bigger one arrives, the desktop install is quite compact. It's one advantage to upgrading a Lite install rather than starting with the Full image - that one contains a lot of bloat (albeit one person's bloat is another's useful tools, I don't hate the maintainers' choice to provide a rich image out of the box). Commented Oct 24, 2023 at 19:20
  • 1
    I think all the big mainstream distros probably have that as an option now in the display manager login, eg. my preference is for Fedora, and currently running sddm (the default) you can choose between whatever DE's are installed on either Wayland or X11. The former is still a bit glitchy in my experience but that might be just some pecularities of my setup (and TBH the stack running X11 can be a bit glitchy in similar ways, so that might actually be KDE).
    – goldilocks
    Commented Oct 27, 2023 at 13:26
1

I just wanted to chime in and say that Goldilocks' answer to this question is excellent, and to echo the sentiment that Seamus' "answer" is not an answer at all (it's like responding to "I have a flat tyre. what should I do?" with "buy a new car!").

And also to point out that under bookworm, I wasn't able to get X to start due to an error like symbol lookup error: /usr/lib/xorg/modules/drivers/fbturbo_drv.so: undefined symbol: shadowUpdatePackedWeak (in /var/log/lightdm/x-0.log). I was able to fix this by ununstalling the fbturbo driver (which was obviously pulled in as a dependency somehow, even though it's not needed for rpi. I also had trouble configuring this package during install and had to use dpkg-reconfigure to get it to install)

To do this, I did apt-get purge xserver-xorg-video-fbturbo and rebooted, and it worked for me in X11 mode.

(I also installed the xinit package, which may or may not be necessary. I think probably not strictly required, but you'll need it if you want the startx command)

Also, wayland works without this fix: as indicated in Violet Giraffe's hidden answer, I was able to go into raspi-config -> Advanced -> Wayland and tell it to use wayland and after a reboot I was able to start a graphical wayland session :)

0
1

The answer on my RPi 5 was 'sudo apt install raspberrypi-ui-mods' and that did the trick. I too do not want all the extra adders that RPi adds to the Desktop and have been a firm user of the mods terminal command for getting the Desktop without all the additions. The change from X11 to Wayland (may have the naming out of wack) caused me a bit of confusion but am a happy camper now. Do not understand totally the underlying programming but I have a RPi 5 with the GeekWorm X1000 NVME m.2 PCIe being used as the BOOT drive. Such a shame but anything with a Phison controller as well as my WD NVME m.2 controller do not boot. Have a KingSpec NX and it boots fine, even without doing the adders to the boot configuration texts.....

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.