summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorP. J. McDermott <pj@pehjota.net>2016-03-06 23:26:26 (EST)
committer P. J. McDermott <pj@pehjota.net>2016-03-06 23:26:26 (EST)
commitb993c98519acae4bdf3467039f8d9bb3f9d4518b (patch)
tree716d92b007288979eaa52552daf4a4e2fdc7a67b
parent71c8446a8e1c5c82cd9f2776f9092a2a30edae85 (diff)
downloadfluxbox-b993c98519acae4bdf3467039f8d9bb3f9d4518b.zip
fluxbox-b993c98519acae4bdf3467039f8d9bb3f9d4518b.tar.gz
fluxbox-b993c98519acae4bdf3467039f8d9bb3f9d4518b.tar.bz2
Implement session management (log out)
-rw-r--r--.fluxbox/keys1
-rw-r--r--.xinitrc12
2 files changed, 11 insertions, 2 deletions
diff --git a/.fluxbox/keys b/.fluxbox/keys
index bb0c93b..5ead746 100644
--- a/.fluxbox/keys
+++ b/.fluxbox/keys
@@ -80,6 +80,7 @@ Control Shift F12 :TakeToWorkspace 12
Mod4 F1 :Delay {Exec xset dpms force off} 1000000
Pause :Delay {Exec xset dpms force off} 1000000
Control Mod1 Delete l :Exec xscreensaver-command -lock
+Control Mod1 Delete q :Exec printf 'quit\n' >~/.xsessionmanage
Control Mod1 Delete s :Exec sudo shutdown -hP now
Control Mod1 Delete r :Exec sudo reboot
diff --git a/.xinitrc b/.xinitrc
index 7dbe5da..e616e8e 100644
--- a/.xinitrc
+++ b/.xinitrc
@@ -2,5 +2,13 @@
startfluxbox
-# Keep the X server running forever
-exec tail -f /dev/null
+rm -f ~/.xsessionmanage
+mkfifo -m 0600 ~/.xsessionmanage
+while read action; do
+ case "${action}" in
+ 'quit')
+ break
+ ;;
+ esac
+done <~/.xsessionmanage
+rm -f ~/.xsessionmanage