refactor(foxtrot): drop the Plasma desktop, keep Dolphin #672

Open
lytedev wants to merge 1 commit from foxtrot-drop-plasma into foxtrot-couch-gaming
Owner

Stacked on #666 (couch-gaming/greetd). foxtrot runs niri, not Plasma, so tear out
the Plasma desktop while keeping the one KDE app in use (Dolphin).

Removed (via lyte.desktop.plasma.enable = false)

Plasma 6 desktop, its apps (kate/konsole/systemsettings-as-a-session/…),
plasma-login-manager + sddm, kwallet, kdeconnect, KDE xdg portal.

Kept / made safe

  • DolphinkdePackages.dolphin + kio-extras (extra kioworkers) + breeze-icons (so its icons render without Plasma).
  • gnome-keyring pinned explicitly as the Secret Service. It was only enabled via the GNOME desktop path in this repo; with Plasma removed, pin it so the login keyring survives. (Verified live: gnome-keyring-daemon is what's actually running — kwalletd6 was in the closure but not even running. Wifi PSKs are plaintext in system-connections, so they don't depend on any keyring.)
  • niri already provides dconf, xdg portals, and the polkit agent, and the greeter is greetd/ReGreet, so nothing there regresses.

Deliberately left

systemsettings + plasma-integration remain, but they come from niri.nix's shared qt.platformTheme = "kde" (Qt/KDE theming for GUI apps like Dolphin), not the Plasma desktop. Reworking that is a separate, fleet-wide change.

Status

Builds clean; plasma binaries confirmed gone from the closure, Dolphin/gnome-keyring/niri/greetd confirmed present. Not yet deployed — this drops the desktop, so it wants a deploy + reboot (will do when you're ready, since it interrupts your session).

🤖 Generated with Claude Code

https://claude.ai/code/session_01XX14i2xvfiY2TrYzm3A64c

Stacked on #666 (couch-gaming/greetd). foxtrot runs niri, not Plasma, so tear out the Plasma desktop while keeping the one KDE app in use (Dolphin). ### Removed (via `lyte.desktop.plasma.enable = false`) Plasma 6 desktop, its apps (kate/konsole/systemsettings-as-a-session/…), plasma-login-manager + sddm, kwallet, kdeconnect, KDE xdg portal. ### Kept / made safe - **Dolphin** — `kdePackages.dolphin` + `kio-extras` (extra kioworkers) + `breeze-icons` (so its icons render without Plasma). - **gnome-keyring** pinned explicitly as the Secret Service. It was only enabled via the GNOME desktop path in this repo; with Plasma removed, pin it so the login keyring survives. (Verified live: gnome-keyring-daemon is what's actually running — kwalletd6 was in the closure but not even running. Wifi PSKs are plaintext in `system-connections`, so they don't depend on any keyring.) - niri already provides **dconf, xdg portals, and the polkit agent**, and the greeter is **greetd/ReGreet**, so nothing there regresses. ### Deliberately left `systemsettings` + `plasma-integration` remain, but they come from niri.nix's shared `qt.platformTheme = "kde"` (Qt/KDE theming for GUI apps like Dolphin), **not** the Plasma desktop. Reworking that is a separate, fleet-wide change. ### Status Builds clean; plasma binaries confirmed gone from the closure, Dolphin/gnome-keyring/niri/greetd confirmed present. **Not yet deployed** — this drops the desktop, so it wants a deploy + reboot (will do when you're ready, since it interrupts your session). 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01XX14i2xvfiY2TrYzm3A64c
refactor(foxtrot): drop the Plasma desktop, keep Dolphin
All checks were successful
/ check-format (push) Successful in 17s
/ build (push) Successful in 17m43s
babd7bf428
foxtrot runs niri, not Plasma. Set lyte.desktop.plasma.enable = false, which drops
the Plasma 6 desktop, its apps (kate/konsole/systemsettings-as-a-session/etc.), the
plasma-login-manager + sddm display managers, kwallet, kdeconnect, and the KDE xdg
portal. niri already provides dconf, xdg portals, and the polkit agent, and the
greeter is greetd/ReGreet (couch-gaming PR).

Kept:
- Dolphin (kdePackages.dolphin + kio-extras + breeze-icons) — the one KDE app in use.
- gnome-keyring pinned explicitly as the Secret Service. It was only enabled via the
  GNOME desktop path in this repo; with Plasma gone, pin it so the login keyring
  survives. (NetworkManager wifi PSKs are plaintext in system-connections, so they
  don't depend on any keyring.)

Not touched: systemsettings + plasma-integration remain, but via niri.nix's shared
qt.platformTheme = "kde" (Qt/KDE theming for GUI apps like Dolphin), NOT the Plasma
desktop — reworking that is a separate, fleet-wide change.
lytedev force-pushed foxtrot-drop-plasma from babd7bf428
All checks were successful
/ check-format (push) Successful in 17s
/ build (push) Successful in 17m43s
to 6e4d25a8f3
All checks were successful
/ check-format (push) Successful in 11s
/ build (push) Successful in 10m21s
2026-07-01 09:53:38 -05:00
Compare
lytedev force-pushed foxtrot-drop-plasma from 6e4d25a8f3
All checks were successful
/ check-format (push) Successful in 11s
/ build (push) Successful in 10m21s
to 28714ff532
Some checks failed
/ check-format (push) Has been cancelled
/ build (push) Has been cancelled
2026-07-01 11:28:50 -05:00
Compare
lytedev force-pushed foxtrot-drop-plasma from 28714ff532
Some checks failed
/ check-format (push) Has been cancelled
/ build (push) Has been cancelled
to 62fcf96bad
Some checks failed
/ check-format (push) Has been cancelled
/ build (push) Has been cancelled
2026-07-01 11:37:33 -05:00
Compare
lytedev force-pushed foxtrot-drop-plasma from 62fcf96bad
Some checks failed
/ check-format (push) Has been cancelled
/ build (push) Has been cancelled
to c732f270e4
All checks were successful
/ check-format (push) Successful in 7s
/ build (push) Successful in 6m18s
2026-07-01 11:57:40 -05:00
Compare
lytedev force-pushed foxtrot-drop-plasma from c732f270e4
All checks were successful
/ check-format (push) Successful in 7s
/ build (push) Successful in 6m18s
to 482d9ef9b3
Some checks are pending
/ check-format (push) Successful in 7s
/ build (push) Has started running
2026-07-01 15:12:33 -05:00
Compare
Some checks are pending
/ check-format (push) Successful in 7s
/ build (push) Has started running
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin foxtrot-drop-plasma:foxtrot-drop-plasma
git switch foxtrot-drop-plasma

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch foxtrot-couch-gaming
git merge --no-ff foxtrot-drop-plasma
git switch foxtrot-drop-plasma
git rebase foxtrot-couch-gaming
git switch foxtrot-couch-gaming
git merge --ff-only foxtrot-drop-plasma
git switch foxtrot-drop-plasma
git rebase foxtrot-couch-gaming
git switch foxtrot-couch-gaming
git merge --no-ff foxtrot-drop-plasma
git switch foxtrot-couch-gaming
git merge --squash foxtrot-drop-plasma
git switch foxtrot-couch-gaming
git merge --ff-only foxtrot-drop-plasma
git switch foxtrot-couch-gaming
git merge foxtrot-drop-plasma
git push origin foxtrot-couch-gaming
Sign in to join this conversation.
No reviewers
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
lytedev/nix!672
No description provided.