48 lines
1.5 KiB
Bash
Executable File
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 |