Metis is a headless server (desktop environment removed)
Last updated 05/11/2026 · metis, desktop, gnome, headless, kiosk, snapd, ubuntu
Current state (verified 2026-10-20)
Metis no longer has any desktop environment - it runs only the docker services, like the other servers. Rebooted afterwards: multi-user.target, systemctl --failed empty, HA :8123 200, llama :8000 200, backrest + tailscale containers up.
- Boot:
sudo systemctl set-default multi-user.target; dangling/etc/systemd/system/display-manager.servicesymlink deleted;/etc/gdm3deleted. - Removed (apt):
ubuntu-desktop-minimal,gdm3,gnome-shell+ gnome-settings-daemon/control-center/nautilus/papers/yelp/gnome-keyring, all ofxfce4,lxqt*,labwc,xorg/xserver-xorg*/xwayland/xinit/x11-common/x11-utils,pipewire/wireplumber/pavucontrol+ pulseaudio libs,xdg-desktop-portal*,rygel,thunar, icon themes, plus orphaned media cruft (mpv, audacious, smplayer, yt-dlp, screengrab, quassel, meteo-qt, qpdfview, kdump-tools, printer drivers, cups/gvfs/udisks2). ~1400 -> 1303 packages. - Snaps removed: firefox, thunderbird, snap-store, snapd-desktop-integration, desktop-security-center, gnome-46-2404, gtk-common-themes, hwctl, mesa-2404, prompting-client, firmware-updater. Remaining: bare/core22/core24 + canonical-livepatch, so snapd must stay (it is the only thing still needing it; ~45 MiB RSS, 1.7 GiB of
/var/lib/snapdof which 1.3 GiB is snapd’s metadata cache and 212 MiB snapshots of the removed snaps).apt-get remove snapdwould also kill Ubuntu Pro kernel livepatch, which issupportedfor metis’s bleeding-edge 7.0.0-38 kernel - Niklas decides whether that is worth losing. - Deliberately kept:
mesa-vulkan-drivers,libdrm-amdgpu1(llama.cpp Vulkan),unattended-upgrades,cloud-init,initramfs-tools-core/initramfs-tools-bin/busybox-initramfs/klibc-utils(markedapt-mark manualso autoremove would not eat them),libxml2-dev, sanoid/dracut. - The kiosk (Home Assistant fullscreen) is gone by design; Niklas will rebuild it on iris after the servers swap positions. Install scripts and the labwc/GNOME notes are preserved in
/data/maintenance/kiosk-session/and memoryiris-ha-kiosk. - Full pre-removal package list for reference/restore:
/data/maintenance/desktop-removal/packages-before-2026-10-20.txt.
How it was done (for a repeat on another box)
sudo apt-mark manual unattended-upgrades cloud-init \
initramfs-tools-core initramfs-tools-bin busybox-initramfs klibc-utils libklibc
sudo apt-get remove -y ubuntu-desktop-minimal xfce4 xfce4-power-manager xfce4-terminal labwc lxqt
sudo apt-get autoremove -y
# then purge the remaining gnome/xfce/lxqt/kde/xorg/pipewire/portal packages (rc leftovers):
sudo dpkg --purge <packages shown as "rc" by dpkg -l>
sudo systemctl set-default multi-user.target
Gotcha: after apt remove the packages still show in dpkg -l with status rc (config files left); use dpkg -l | awk '/^rc/ {print $2}' to spot them and dpkg --purge to clean.
Login-shell error bash: /usr/share/im-config/initializer: Datei oder Verzeichnis nicht gefunden (seen 2026-10-21): im-config was removed but not purged, so its /etc/profile.d/im-config_wayland.sh still sourced a deleted file. Fixed with sudo apt-get purge -y im-config. Same class of leftovers: on 2026-10-21 all 134 desktop-related rc packages (ibus, cups, bluez, xscreensaver, gtk/kf5 libs, icon themes …) were purged with dpkg --purge; health afterwards fine (no failed units, docker/HA/llama up). Deliberately kept as rc: old kernels/modules, grub-pc, memtest86+, kdump/kexec, ssl-cert, openvpn, sssd/libnss-*, avahi, systemd-oomd, acl, yt-dlp and a few doc packages.
Source: Wiki.js