diff --git a/Makefile.am b/Makefile.am
index 751511bc468..4de639dcee4 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -491,7 +491,8 @@ MANPAGES = \
man/systemd-remount-fs.service.8 \
man/systemd-update-utmp-runlevel.service.8 \
man/systemd-initctl.service.8 \
- man/systemd-shutdownd.service.8
+ man/systemd-shutdownd.service.8 \
+ man/systemd-suspend.service.8
MANPAGES_ALIAS = \
man/reboot.8 \
@@ -504,7 +505,9 @@ MANPAGES_ALIAS = \
man/systemd-update-utmp-shutdown.service.8 \
man/systemd-update-utmp.8 \
man/systemd-initctl.8 \
- man/systemd-shutdownd.8
+ man/systemd-shutdownd.8 \
+ man/systemd-hibernate.service.8 \
+ man/systemd-sleep.8
man/reboot.8: man/halt.8
man/poweroff.8: man/halt.8
@@ -517,6 +520,8 @@ man/systemd-update-utmp-shutdown.service.8: man/systemd-update-utmp-runlevel.ser
man/systemd-update-utmp.8: man/systemd-update-utmp-runlevel.service.8
man/systemd-initctl.8: man/systemd-initctl.service.8
man/systemd-shutdownd.8: man/systemd-shutdownd.service.8
+man/systemd-hibernate.service.8: man/systemd-suspend.service.8
+man/systemd-sleep.8: man/systemd-suspend.service.8
XML_FILES = \
${patsubst %.1,%.xml,${patsubst %.3,%.xml,${patsubst %.5,%.xml,${patsubst %.7,%.xml,${patsubst %.8,%.xml,$(MANPAGES)}}}}}
diff --git a/man/systemd-hostnamed.service.xml b/man/systemd-hostnamed.service.xml
index 94ae062ba74..f98663fea57 100644
--- a/man/systemd-hostnamed.service.xml
+++ b/man/systemd-hostnamed.service.xml
@@ -75,7 +75,7 @@
systemd1,
hostname5,
sethostname2,
- machine-info5,
+ machine-info5
diff --git a/man/systemd-suspend.service.xml b/man/systemd-suspend.service.xml
new file mode 100644
index 00000000000..dea778fbec6
--- /dev/null
+++ b/man/systemd-suspend.service.xml
@@ -0,0 +1,103 @@
+
+
+
+
+
+
+
+
+ systemd-suspend.service
+ systemd
+
+
+
+ Developer
+ Lennart
+ Poettering
+ lennart@poettering.net
+
+
+
+
+
+ systemd-suspend.service
+ 8
+
+
+
+ systemd-suspend.service
+ systemd-hibernate.service
+ systemd-sleep
+ systemd System Suspend/Hibernate Logic
+
+
+
+ systemd-suspend.service
+ systemd-hibernate.service
+ /usr/lib/systemd/systemd-sleep
+
+
+
+ Description
+
+ systemd-suspend.service is
+ a system service that is pulled in by
+ suspend.target and is responsible
+ for the actual system suspend. Similar,
+ systemd-hibernate.service is
+ pulled in by hibernate.target to
+ executed the actual hibernation.
+
+ Immediately before entering system suspend and
+ hibernation
+ systemd-suspend.service will run
+ all executables in
+ /usr/lib/systemd/system-sleep/
+ and pass two arguments to them. The first argument
+ will be "pre", the second either
+ "suspend" or
+ "hibernate", depending on the chosen
+ action. Immediately after leaving system suspend and
+ hibernation the same executables are run, but the
+ first argument is now "post". All
+ executables in this directory are executed in
+ parallel, and execution of the action is not continued
+ before all executables finished.
+
+ Note that scripts or binaries dropped in
+ /usr/lib/systemd/system-sleep/
+ are intended for local use only and should be
+ considered hacks. If applications want to be notified
+ of system suspend and resume there are much nicer
+ interfaces available.
+
+
+
+
+ See Also
+
+ systemd1,
+ systemd.special7
+ systemd-halt.service8
+
+
+
+
diff --git a/units/systemd-hibernate.service.in b/units/systemd-hibernate.service.in
index 6dba653d37b..29d9b696a85 100644
--- a/units/systemd-hibernate.service.in
+++ b/units/systemd-hibernate.service.in
@@ -7,6 +7,7 @@
[Unit]
Description=Hibernate
+Documentation=man:systemd-suspend.service(8)
DefaultDependencies=no
Requires=sleep.target
After=sleep.target
diff --git a/units/systemd-suspend.service.in b/units/systemd-suspend.service.in
index 3cf819e4764..3a702d2e22b 100644
--- a/units/systemd-suspend.service.in
+++ b/units/systemd-suspend.service.in
@@ -7,6 +7,7 @@
[Unit]
Description=Suspend
+Documentation=man:systemd-suspend.service(8)
DefaultDependencies=no
Requires=sleep.target
After=sleep.target