Quiet the DMS doctor warnings on the niri-dms editions #72
No reviewers
Labels
No labels
bug
dependencies
documentation
duplicate
enhancement
github_actions
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
monolith-os/monolith!72
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "dms-doctor-fixes"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Booted the niri-dms live ISO and DMS's System Check showed three warnings. Two of them were real wiring gaps in the image:
dms.service Disabled: we spawned the shell from the generated niri config, so the packaged user unit sat disabled and the shell ran outside it. The niri-dms recipes now enable dms.service globally (it binds to the graphical-session.target that niri-session brings up) and the generated config no longer spawns dms run, so it can't start twice. Niri only, on purpose: Hyprland has no systemd session, and an enabled-but-never-started unit would make the doctor report an error instead of today's warning.
Terminal: None found: worse than cosmetic. DMS launches terminal commands as
$TERMINAL -e sh -c ...and falls back to xterm when TERMINAL is unset, so the launcher's terminal apps and the updater's run-in-terminal feature were dead on an image that only ships ptyxis (no -e support, only -x and--). Added a monolith-terminal shim that translates the -e convention into ptyxis'--form, and TERMINAL=monolith-terminal in /etc/environment so pam_env reaches both the niri systemd session and Hyprland's exec-once session. The doctor line itself stays (it greps for ghostty/kitty/alacritty/foot/wezterm binaries) and is accepted as cosmetic now that the features work.The third warning, Operating System "(not supported by dms setup)", only gates danklinux's package installer, which has no job on an immutable image. dms matches os-release ID against an exact list with no ID_LIKE fallback, and ID=monolith stays (the anaconda profile keys off it), so this one is accepted as-is.
Tested the config generation script against upstream niri 26.04's default-config.kdl for both NIRI_SHELL values; the fail-loud anchor greps still pass and the dms variant keeps the Spotlight/lock binds while losing the spawn line.