What would you like to be added?
issue is that the sddm tty handover fails when asked nicely resulting in a black screen with blinking cursor
loginctl terminate-session $XDG_SESSION_ID
loginctl terminate-user $(whoami)
loginctl terminate-user ""
uwsm stop
and (for some users) even hyprctl dispatch exit doesn't work
only the sledgehammer pkill -KILL -u $(whoami) works because it forces the session to terminate from the outside
but there's now
https://github.com/hyprwm/hyprshutdown
a new graceful execution orchestrator for the Hyprland exit process, might finally ensure a clean logout with sddm
interesting forkoff() function in case any remaining stubborn processes still not gracefully shutting down politely we can add a "--post-cmd" flag so the detached hyprshutdown process still brings out the hammer and executes the final bash -c 'pkill -KILL -u $(whoami)'
hyprshutdown isn't available in the AUR yet but you can try it by installing manually and assuming that you have a working hyprland installation with all dependencies (hyprlang, hyprutils, etc.)
now in the AUR, so just
or manual install if you prefer
sudo pacman -S --needed git base-devel
git clone https://github.com/hyprwm/hyprshutdown.git
cd hyprshutdown
cmake --no-warn-deprecated ..
make
sudo cp hyprshutdown /usr/local/bin/
then edit ~/.config/caelestia/shell.json
"logout": ["hyprshutdown", "--post-cmd", "bash -c 'pkill -KILL -u $(whoami)'"],
How will it help?
should fix the persistent logout issue with sddm where you logout to a black screen with blinking cursor
this two stage approach, a graceful app termination followed by a guaranteed, hard session kill from a detached process is the most reliable way to force a clean tty handover
if you've tried it and it solves your logout issue please comment
hopefully it works for everyone and when hyprshutdown is finalized and available I'll open a PR to add a dependency and update the example config.json
#936
#816
#711
#303
#250
What would you like to be added?
issue is that the sddm tty handover fails when asked nicely resulting in a black screen with blinking cursor
and (for some users) even
hyprctl dispatch exitdoesn't workonly the sledgehammer
pkill -KILL -u $(whoami)works because it forces the session to terminate from the outsidebut there's now
https://github.com/hyprwm/hyprshutdown
a new graceful execution orchestrator for the Hyprland exit process, might finally ensure a clean logout with sddm
interesting
forkoff()function in case any remaining stubborn processes still not gracefully shutting down politely we can add a "--post-cmd" flag so the detached hyprshutdown process still brings out the hammer and executes the finalbash -c 'pkill -KILL -u $(whoami)'hyprshutdown isn't available in the AUR yet but you can try it by installing manually and assuming that you have a working hyprland installation with all dependencies (hyprlang, hyprutils, etc.)now in the AUR, so just
or manual install if you prefer
then edit
~/.config/caelestia/shell.jsonHow will it help?
should fix the persistent logout issue with sddm where you logout to a black screen with blinking cursor
this two stage approach, a graceful app termination followed by a guaranteed, hard session kill from a detached process is the most reliable way to force a clean tty handover
if you've tried it and it solves your logout issue please comment
hopefully it works for everyone and when hyprshutdown is finalized and available I'll open a PR to add a dependency and update the example config.json
#936
#816
#711
#303
#250