forked from enlightenment/enlightenment
systemd: fix + complete power mgmt method support
- fix typo in configure.ac for suspend/hibernate method selection - add systemd support of halt and reboot actions
This commit is contained in:
parent
cbd395a719
commit
e234e74ee7
|
@ -1,3 +1,7 @@
|
|||
2013-04-05 Jérémy Zurcher
|
||||
|
||||
* added support for systemd halt and poweroff
|
||||
|
||||
2013-03-28 Cedric Bail
|
||||
|
||||
* added support for systemd user session.
|
||||
|
|
21
configure.ac
21
configure.ac
|
@ -893,36 +893,43 @@ AC_E_OPTIONAL_MODULE([access], true)
|
|||
AC_E_OPTIONAL_MODULE([music_control], true, [CHECK_MODULE_MUSIC_CONTROL])
|
||||
AC_E_OPTIONAL_MODULE([contact], true)
|
||||
|
||||
HALT="/sbin/shutdown -h now"
|
||||
REBOOT="/sbin/shutdown -r now"
|
||||
SUSPEND=""
|
||||
HIBERNATE=""
|
||||
case "$host_os" in
|
||||
freebsd*|pcbsd*)
|
||||
SUSPEND="acpiconf -s3"
|
||||
AC_MSG_NOTICE([use suspend method: $SUSPEND])
|
||||
AC_SUBST(SUSPEND)
|
||||
HIBERNATE="acpiconf -s4"
|
||||
AC_MSG_NOTICE([use hibernate method: $HIBERNATE])
|
||||
AC_SUBST(HIBERNATE)
|
||||
;;
|
||||
*)
|
||||
if test "x{have_systemd_user_session}" = "xyes"; then
|
||||
if test "x${have_systemd_user_session}" = "xyes"; then
|
||||
HALT="/usr/bin/systemctl poweroff"
|
||||
REBOOT="/usr/bin/systemctl reboot"
|
||||
SUSPEND="/usr/bin/systemctl suspend"
|
||||
HIBERNATE="/usr/bin/systemctl hibernate"
|
||||
HIBERNATE="/usr/bin/systemctl hibernate"
|
||||
AC_MSG_NOTICE([use systemctl for halt, reboot, suspend and hibernate])
|
||||
else
|
||||
AC_PATH_PROGS([SUSPEND], [sleep.sh pm-suspend],[/etc/acpi/sleep.sh], [/etc/acpi:/sbin:/usr/sbin:$PATH])
|
||||
if test "$SUSPEND" = "/etc/acpi/sleep.sh" ; then
|
||||
if test "$SUSPEND" = "/etc/acpi/sleep.sh" ; then
|
||||
SUSPEND="/etc/acpi/sleep.sh force"
|
||||
AC_MSG_NOTICE([use suspend method: $SUSPEND])
|
||||
fi
|
||||
|
||||
AC_PATH_PROGS([HIBERNATE], [hibernate.sh pm-hibernate],[/etc/acpi/hibernate.sh], [/etc/acpi:/sbin:/usr/sbin:$PATH])
|
||||
if test "$HIBERNATE" = "/etc/acpi/hibernate.sh" ; then
|
||||
if test "$HIBERNATE" = "/etc/acpi/hibernate.sh" ; then
|
||||
HIBERNATE="/etc/acpi/hibernate.sh force"
|
||||
AC_MSG_NOTICE([use hibernate method: $HIBERNATE])
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
AC_SUBST(HALT)
|
||||
AC_SUBST(REBOOT)
|
||||
AC_SUBST(SUSPEND)
|
||||
AC_SUBST(HIBERNATE)
|
||||
|
||||
m4_ifdef([v_mic],
|
||||
[
|
||||
|
|
|
@ -43,8 +43,8 @@
|
|||
# user and group name can use glob matches (* == all for example) like the
|
||||
# shell. as can action names allowed or denied.
|
||||
|
||||
action: halt /sbin/shutdown -h now
|
||||
action: reboot /sbin/shutdown -r now
|
||||
action: halt @HALT@
|
||||
action: reboot @REBOOT@
|
||||
action: suspend @SUSPEND@
|
||||
action: hibernate @HIBERNATE@
|
||||
action: /bin/mount /bin/mount
|
||||
|
|
Loading…
Reference in New Issue