2025-04-05 18:09:36 +02:00

48 lines
1.5 KiB
Bash
Executable File

#!/bin/bash
## REMARK:
# - above shebang is required for scripting file
# - 1st arg passed to executable file is either "pre" (mean that the entry of a power operation) or "post" (mean that the exit of a power operation)
# - 2nd arg passed to executable file is either "suspend", "hibernate", "hybrid-sleep", or "suspend-then-hibernate", depends on what power operation is operating
# - SYSTEMD_SLEEP_ACTION environment variable is helpful for "suspend-then-hibernate", it has value of either "suspend", "hibernate", or "suspend-after-failed-hibernate"
case $1 in
pre)
case $2 in
hibernate)
;;
hybrid-sleep)
;;
suspend)
;;
suspend-then-hibernate)
case $SYSTEMD_SLEEP_ACTION in
suspend)
;;
hibernate)
;;
suspend-after-failed-hibernate)
;;
esac
;;
esac
;;
post)
case $2 in
hibernate)
;;
hybrid-sleep)
;;
suspend)
;;
suspend-then-hibernate)
case $SYSTEMD_SLEEP_ACTION in
suspend)
;;
hibernate)
;;
suspend-after-failed-hibernate)
;;
esac
;;
esac
;;
esac