summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.am9
-rw-r--r--units/gentoo/halt.service19
-rw-r--r--units/gentoo/killall.service15
-rw-r--r--units/gentoo/poweroff.service18
-rw-r--r--units/gentoo/reboot.service18
-rw-r--r--units/gentoo/xdm.service16
6 files changed, 95 insertions, 0 deletions
diff --git a/Makefile.am b/Makefile.am
index 6d860ec95c..8313e57ff7 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -132,6 +132,15 @@ dist_systemunit_DATA += \
units/fedora/sysinit.service
endif
+if TARGET_GENTOO
+dist_systemunit_DATA += \
+ units/gentoo/halt.service \
+ units/gentoo/killall.service \
+ units/gentoo/poweroff.service \
+ units/gentoo/reboot.service \
+ units/gentoo/xdm.service
+endif
+
# This is needed because automake is buggy in how it generates the
# rules for C programs, but not Vala programs. We therefore can't
# list the .h files as dependencies if we want make dist to work.
diff --git a/units/gentoo/halt.service b/units/gentoo/halt.service
new file mode 100644
index 0000000000..8762a7827b
--- /dev/null
+++ b/units/gentoo/halt.service
@@ -0,0 +1,19 @@
+# This file is part of systemd.
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+
+[Unit]
+Description=Halt
+Requires=shutdown.target killall.service
+After=shutdown.target killall.service
+Conflicts=dev-hugepages.automount dev-mqueue.automount proc-sys-fs-binfmt_misc.automount sys-kernel-debug.automount
+
+[Service]
+Type=finish
+ValidNoProcess=yes
+Environment=INIT_HALT=HALT
+Environment=RC_DOWN_HARDDISK=yes
+ExecStart=/etc/init.d/shutdown.sh
diff --git a/units/gentoo/killall.service b/units/gentoo/killall.service
new file mode 100644
index 0000000000..a02062f815
--- /dev/null
+++ b/units/gentoo/killall.service
@@ -0,0 +1,15 @@
+# This file is part of systemd.
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+
+[Unit]
+Description=Kill All Processes
+After=shutdown.target
+
+[Service]
+Type=finish
+ValidNoProcess=yes
+ExecStart=/etc/init.d/killprocs start
diff --git a/units/gentoo/poweroff.service b/units/gentoo/poweroff.service
new file mode 100644
index 0000000000..1a0a6a44f8
--- /dev/null
+++ b/units/gentoo/poweroff.service
@@ -0,0 +1,18 @@
+# This file is part of systemd.
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+
+[Unit]
+Description=Power-Off
+Requires=shutdown.target killall.service
+After=shutdown.target killall.service
+Conflicts=dev-hugepages.automount dev-mqueue.automount proc-sys-fs-binfmt_misc.automount sys-kernel-debug.automount
+
+[Service]
+Type=finish
+ValidNoProcess=yes
+Environment=RC_DOWN_HARDDISK=yes
+ExecStart=/etc/init.d/shutdown.sh
diff --git a/units/gentoo/reboot.service b/units/gentoo/reboot.service
new file mode 100644
index 0000000000..92c4962a60
--- /dev/null
+++ b/units/gentoo/reboot.service
@@ -0,0 +1,18 @@
+# This file is part of systemd.
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+
+[Unit]
+Description=Reboot
+Requires=shutdown.target killall.service
+After=shutdown.target killall.service
+Conflicts=dev-hugepages.automount dev-mqueue.automount proc-sys-fs-binfmt_misc.automount sys-kernel-debug.automount
+
+[Service]
+Type=finish
+ValidNoProcess=yes
+Environment=RUNLEVEL=6
+ExecStart=/etc/init.d/reboot.sh
diff --git a/units/gentoo/xdm.service b/units/gentoo/xdm.service
new file mode 100644
index 0000000000..83949919d3
--- /dev/null
+++ b/units/gentoo/xdm.service
@@ -0,0 +1,16 @@
+# This file is part of systemd.
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+
+[Unit]
+Description=Display Manager
+Before=graphical.target
+After=basic.target syslog.target messagebus.service haldaemon.service
+Conflicts=shutdown.target
+
+[Service]
+ExecStart=/etc/init.d/xdm start
+Type=simple