Switch the desktop from LXQt to KDE Plasma #4

Merged
sebastian merged 1 commit from kde-plasma into main 2026-08-23 23:38:48 +02:00
Owner

Replaces the lxqt metapackage with kde-standard — Plasma 6.3 plus Debian's standard KDE application set.

Why this tier

Debian offers the desktop at three sizes. Numbers are apt's own resolution of each desktop line against trixie, recommends on, since that is how this image installs:

Desktop line Packages Installed size
kde-plasma-desktop plus apps named by hand 1730 4482 MiB
kde-standard (this PR) 1903 4765 MiB
kde-full 2367 6744 MiB
the lxqt line this replaces 1894 5140 MiB

kde-standard is kde-plasma-desktop plus 283 MiB, most of it KDE PIM — kmail, korganizer, akregator, kaddressbook and the akonadi server behind them. Akonadi's first backend alternative is akonadi-backend-sqlite and that is what resolves, so none of it brings a database daemon along. kde-full is another 1979 MiB: the education suite, games, a full TeX Live, marble's map data and 126 MiB of wallpapers.

The chosen tier is 375 MiB smaller than the LXQt line it replaces. lxqt's own recommends pulled thunderbird, smplayer, hexchat, qmmp, qpdfview, xscreensaver and gucharmap; Plasma's pull a desktop.

Recommends do more work here

systemsettings, kscreen, kinfocenter, kde-spectacle, powerdevil, plasma-discover, kio-extras, breeze-gtk-theme and xdg-desktop-portal-kde are each a recommend rather than a depend. Without them kde-standard is a shell you cannot change the screen resolution from. Recommends have been on image-wide since 7ddc536, so they arrive; the ones that matter most are named in the line anyway.

Verified which of the named packages are actually load-bearing by resolving kde-standard alone:

Package Arrives via recommends?
plasma-nm yes
xdg-desktop-portal-kde yes
kinfocenter, plasma-discover yes
print-manager no — naming it is required

Sessions

Wayland is the default: plasma-workspace hard-depends on kwin-wayland, so that session is not optional. kwin-x11 is left in place as the fallback you can pick at the greeter — about 2 MiB. xwaylandvideobridge comes in with kwin-wayland, so X11 apps can still see Wayland windows when screen sharing.

The greeter itself stays on Xorg. sddm hard-depends on xserver-xorg | xserver whatever the session does, and sddm 0.21 still documents its own Wayland greeter as experimental. So xserver-xorg is no longer named in the desktop line — it is a dependency now, not a choice. Flipping the greeter too is one DisplayServer=wayland in /usr/lib/sddm/sddm.conf.d, whenever upstream drops the label.

Package swaps alongside the metapackage

Was Is Why
lxqt kde-standard The desktop.
network-manager-gnome plasma-nm The applet.
network-manager-openvpn-gnome (dropped) plasma-nm ships its own OpenVPN configuration UI; the NetworkManager-side network-manager-openvpn plugin stays.
system-config-printer print-manager The KDE printer KCM.
xserver-xorg (unnamed) Still installed, as an sddm dependency.
xdg-desktop-portal-kde Screen sharing and file dialogs. xdg-desktop-portal-gtk stays for GTK apps.

build/enable-units.sh needed no change: sddm.service is the greeter under both desktops, and power-profiles-daemon is what powerdevil talks to. Nothing else in the tree referenced LXQt.

How this was checked

No build has been run — the image needs the hetzner-host runner. What was verified locally: every package name resolved against the real trixie Packages index, and the exact desktop line from the Containerfile resolved by apt against a trixie-sourced apt root, exit 0, 1903 packages, with network-manager-gnome, system-config-printer and lxqt confirmed absent from the result. The PR build in publish.yml is the real test.

🤖 Generated with Claude Code

https://claude.ai/code/session_01K9ghs2FUtSYjX6c9qb9UiK

Replaces the `lxqt` metapackage with `kde-standard` — Plasma 6.3 plus Debian's standard KDE application set. ## Why this tier Debian offers the desktop at three sizes. Numbers are apt's own resolution of each desktop line against trixie, recommends on, since that is how this image installs: | Desktop line | Packages | Installed size | | --- | --- | --- | | `kde-plasma-desktop` plus apps named by hand | 1730 | 4482 MiB | | **`kde-standard`** (this PR) | **1903** | **4765 MiB** | | `kde-full` | 2367 | 6744 MiB | | the `lxqt` line this replaces | 1894 | 5140 MiB | `kde-standard` is `kde-plasma-desktop` plus 283 MiB, most of it KDE PIM — kmail, korganizer, akregator, kaddressbook and the akonadi server behind them. Akonadi's first backend alternative is `akonadi-backend-sqlite` and that is what resolves, so none of it brings a database daemon along. `kde-full` is another 1979 MiB: the education suite, games, a full TeX Live, marble's map data and 126 MiB of wallpapers. The chosen tier is **375 MiB smaller** than the LXQt line it replaces. `lxqt`'s own recommends pulled thunderbird, smplayer, hexchat, qmmp, qpdfview, xscreensaver and gucharmap; Plasma's pull a desktop. ## Recommends do more work here `systemsettings`, `kscreen`, `kinfocenter`, `kde-spectacle`, `powerdevil`, `plasma-discover`, `kio-extras`, `breeze-gtk-theme` and `xdg-desktop-portal-kde` are each a recommend rather than a depend. Without them `kde-standard` is a shell you cannot change the screen resolution from. Recommends have been on image-wide since 7ddc536, so they arrive; the ones that matter most are named in the line anyway. Verified which of the named packages are actually load-bearing by resolving `kde-standard` alone: | Package | Arrives via recommends? | | --- | --- | | `plasma-nm` | yes | | `xdg-desktop-portal-kde` | yes | | `kinfocenter`, `plasma-discover` | yes | | `print-manager` | **no — naming it is required** | ## Sessions Wayland is the default: `plasma-workspace` hard-depends on `kwin-wayland`, so that session is not optional. `kwin-x11` is left in place as the fallback you can pick at the greeter — about 2 MiB. `xwaylandvideobridge` comes in with `kwin-wayland`, so X11 apps can still see Wayland windows when screen sharing. The greeter itself stays on Xorg. `sddm` hard-depends on `xserver-xorg | xserver` whatever the session does, and sddm 0.21 still documents its own Wayland greeter as experimental. So `xserver-xorg` is no longer named in the desktop line — it is a dependency now, not a choice. Flipping the greeter too is one `DisplayServer=wayland` in `/usr/lib/sddm/sddm.conf.d`, whenever upstream drops the label. ## Package swaps alongside the metapackage | Was | Is | Why | | --- | --- | --- | | `lxqt` | `kde-standard` | The desktop. | | `network-manager-gnome` | `plasma-nm` | The applet. | | `network-manager-openvpn-gnome` | *(dropped)* | plasma-nm ships its own OpenVPN configuration UI; the NetworkManager-side `network-manager-openvpn` plugin stays. | | `system-config-printer` | `print-manager` | The KDE printer KCM. | | `xserver-xorg` | *(unnamed)* | Still installed, as an sddm dependency. | | — | `xdg-desktop-portal-kde` | Screen sharing and file dialogs. `xdg-desktop-portal-gtk` stays for GTK apps. | `build/enable-units.sh` needed no change: `sddm.service` is the greeter under both desktops, and `power-profiles-daemon` is what powerdevil talks to. Nothing else in the tree referenced LXQt. ## How this was checked No build has been run — the image needs the `hetzner-host` runner. What was verified locally: every package name resolved against the real trixie `Packages` index, and the exact desktop line from the Containerfile resolved by apt against a trixie-sourced apt root, exit 0, 1903 packages, with `network-manager-gnome`, `system-config-printer` and `lxqt` confirmed absent from the result. The PR build in `publish.yml` is the real test. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01K9ghs2FUtSYjX6c9qb9UiK
Switch the desktop from LXQt to KDE Plasma
Some checks failed
Publish / build (pull_request) Has been cancelled
Publish / build (push) Successful in 25m18s
7f6d8acc20
`kde-standard` replaces the `lxqt` metapackage: Plasma 6.3 plus Debian's
standard KDE application set. One tier above `kde-plasma-desktop`, well
short of `kde-full`, and the closest analogue in shape to what `lxqt`
gave. Resolved against trixie with recommends on, it is 1903 packages and
4765 MiB -- 375 MiB *less* than the LXQt line, whose own recommends pulled
thunderbird, smplayer, hexchat, qmmp, qpdfview, xscreensaver and gucharmap.

Recommends carry more weight here than they did under LXQt: systemsettings,
kscreen, kinfocenter, spectacle, powerdevil, discover, kio-extras,
breeze-gtk-theme and xdg-desktop-portal-kde are each a recommend rather than
a depend, and without them kde-standard is a shell you cannot change the
screen resolution from. This image has installed with recommends on since
7ddc536, so they arrive; the ones that matter most are named anyway.

Wayland is the default session -- plasma-workspace hard-depends on
kwin-wayland -- and kwin-x11 is left in place as the fallback at the greeter,
about 2 MiB. The greeter itself stays on Xorg: sddm hard-depends on
`xserver-xorg | xserver` regardless, and sddm 0.21 still documents its own
Wayland greeter as experimental. xserver-xorg is therefore no longer named
in the desktop line -- it is a dependency now, not a choice.

Alongside the metapackage:

  network-manager-gnome        -> plasma-nm
  network-manager-openvpn-gnome -> dropped; plasma-nm ships the OpenVPN UI
                                   and the NM-side plugin stays
  system-config-printer        -> print-manager
  xserver-xorg                 -> unnamed, still installed via sddm
                                  (new) xdg-desktop-portal-kde

print-manager is the one of these that nothing in the image recommends, so
naming it is load-bearing rather than defensive. Akonadi arrives with kmail
and resolves to akonadi-backend-sqlite, so no database daemon comes with it.

enable-units.sh needs no change: sddm.service is the greeter under both
desktops, and power-profiles-daemon is what powerdevil talks to.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01K9ghs2FUtSYjX6c9qb9UiK
sebastian deleted branch kde-plasma 2026-08-23 23:38:48 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
sebastian/os4!4
No description provided.