XFCE on SDDM; menu defaults to none for DE and TWM
- XFCE module installs/enables sddm instead of lightdm; one greeter across every session choice, no lightdm left anywhere. - Interactive menus now default to 'none' for both DE and TWM (press Enter for no DE / no TWM). none+none is still refused by the existing guard. - README and session.sh comments updated to match.
This commit is contained in:
@@ -61,7 +61,7 @@ Each module pulls in `lib/` by relative path, so it works both ways.
|
||||
|---|---|---|
|
||||
| `gnome` | `gnome-desktop`, `gnome-desktop-environment`, `workstation-product-environment` | gdm |
|
||||
| `plasma` | `kde-desktop`, `kde-desktop-environment` | sddm |
|
||||
| `xfce` | `xfce-desktop`, `xfce-desktop-environment` | lightdm |
|
||||
| `xfce` | `xfce-desktop`, `xfce-desktop-environment` | sddm |
|
||||
|
||||
### Tiling window managers
|
||||
|
||||
@@ -78,7 +78,7 @@ compositors — do not expect the same config story from it.
|
||||
## Display manager policy
|
||||
|
||||
* A **DE module** leaves the DE's own greeter alone (GNOME→gdm, Plasma→sddm,
|
||||
XFCE→lightdm). It never fights a desktop over its own login screen.
|
||||
XFCE→sddm). It never fights a desktop over its own login screen.
|
||||
* A **TWM module** enforces **SDDM**, because it is the only greeter that lists
|
||||
Wayland compositors *and* X11 sessions in one menu.
|
||||
* Either way `graphical.target` becomes the default.
|
||||
|
||||
+1
-1
@@ -3,7 +3,7 @@
|
||||
# lib/session.sh — display manager and graphical session wiring
|
||||
#
|
||||
# DM policy:
|
||||
# * A DE module leaves its native DM alone (GNOME→gdm, Plasma→sddm, XFCE→lightdm).
|
||||
# * A DE module leaves its native DM alone (GNOME→gdm, Plasma→sddm, XFCE→sddm).
|
||||
# * A TWM module enforces SDDM, because SDDM is the only DM that presents both
|
||||
# Wayland compositors and X11 sessions in one menu. One greeter, no surprises.
|
||||
#------------------------------------------
|
||||
|
||||
+4
-4
@@ -24,11 +24,11 @@ fi
|
||||
# provider for chadwm.
|
||||
install_packages xorg-x11-server-Xorg xorg-x11-xinit
|
||||
|
||||
# XFCE's native greeter is lightdm
|
||||
if ! pkg_installed lightdm; then
|
||||
install_packages lightdm
|
||||
# XFCE runs fine under SDDM too — unify on SDDM so every session has one greeter
|
||||
if ! pkg_installed sddm; then
|
||||
install_packages sddm
|
||||
fi
|
||||
switch_display_manager lightdm
|
||||
switch_display_manager sddm
|
||||
|
||||
install_nerd_font JetBrainsMono
|
||||
install_packages alacritty dconf
|
||||
|
||||
@@ -210,10 +210,10 @@ if [[ -z "$DE" ]]; then
|
||||
printf "\n"
|
||||
echo " 1) GNOME (gdm)"
|
||||
echo " 2) Plasma (sddm)"
|
||||
echo " 3) XFCE (lightdm)"
|
||||
echo " 3) XFCE (sddm)"
|
||||
echo " 4) None (TWM only — SDDM will be installed by the TWM module)"
|
||||
printf "\n"
|
||||
choice=$(ask_choice "Select desktop environment [1/2/3/4]" "1" 1 2 3 4)
|
||||
choice=$(ask_choice "Select desktop environment [1/2/3/4]" "4" 1 2 3 4)
|
||||
case "$choice" in
|
||||
1) DE="gnome" ;;
|
||||
2) DE="plasma" ;;
|
||||
@@ -241,7 +241,7 @@ if [[ -z "$TWM" ]]; then
|
||||
echo " 4) chadwm (X11, dwm fork, built from source)"
|
||||
echo " 5) None"
|
||||
printf "\n"
|
||||
choice=$(ask_choice "Select tiling window manager [1/2/3/4/5]" "1" 1 2 3 4 5)
|
||||
choice=$(ask_choice "Select tiling window manager [1/2/3/4/5]" "5" 1 2 3 4 5)
|
||||
case "$choice" in
|
||||
1) TWM="niri" ;;
|
||||
2) TWM="hyprland" ;;
|
||||
|
||||
Reference in New Issue
Block a user