Skip to content

Instantly share code, notes, and snippets.

@ZhiguoLong
Created February 14, 2016 06:55
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ZhiguoLong/a7e3bb9b2431665bc4e7 to your computer and use it in GitHub Desktop.
Save ZhiguoLong/a7e3bb9b2431665bc4e7 to your computer and use it in GitHub Desktop.
i3 helper shell command for exiting
#!/bin/sh
lock() {
exec sh ~/.i3/i3lock.sh
}
case "$1" in
lock)
lock
;;
logout)
i3-msg exit
;;
suspend)
lock && dbus-send --system --print-reply --dest=org.freedesktop.login1 /org/freedesktop/login1 "org.freedesktop.login1.Manager.Suspend" boolean:true
;;
hibernate)
lock && dbus-send --system --print-reply --dest=org.freedesktop.login1 /org/freedesktop/login1 "org.freedesktop.login1.Manager.Hibernate" boolean:true
;;
reboot)
dbus-send --system --print-reply --dest=org.freedesktop.login1 /org/freedesktop/login1 "org.freedesktop.login1.Manager.Reboot" boolean:true
;;
shutdown)
dbus-send --system --print-reply --dest=org.freedesktop.login1 /org/freedesktop/login1 "org.freedesktop.login1.Manager.PowerOff" boolean:true
;;
*)
echo "Usage: $0 {lock|logout|suspend|hibernate|reboot|shutdown}"
exit 2
esac
exit 0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment