[systemd-devel] [PATCH 2/2] units/: use @SYSTEMCTL@ instead of hardcoded paths
Dave Reisner
dreisner at archlinux.org
Tue Apr 3 21:22:21 PDT 2012
Especially in the case of --enable-split-usr, several units will point
to the wrong location for systemctl. Use @SYSTEMCTL@ which will always
contain the proper path.
---
Makefile.am | 6 ++++--
units/.gitignore | 1 +
...hell.service.m4 => console-shell.service.m4.in} | 2 +-
units/{emergency.service => emergency.service.in} | 2 +-
units/{rescue.service.m4 => rescue.service.m4.in} | 2 +-
units/systemd-ask-password-wall.service.in | 4 ++--
6 files changed, 10 insertions(+), 7 deletions(-)
rename units/{console-shell.service.m4 => console-shell.service.m4.in} (96%)
rename units/{emergency.service => emergency.service.in} (94%)
rename units/{rescue.service.m4 => rescue.service.m4.in} (95%)
diff --git a/Makefile.am b/Makefile.am
index 2b04142..3cb50d8 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -338,6 +338,7 @@ nodist_systemunit_DATA = \
units/systemd-ask-password-console.service \
units/systemd-sysctl.service \
units/halt.service \
+ units/emergency.service \
units/poweroff.service \
units/reboot.service \
units/kexec.service \
@@ -359,8 +360,8 @@ nodist_userunit_DATA = \
EXTRA_DIST += \
units/getty at .service.m4 \
units/serial-getty at .service.m4 \
- units/console-shell.service.m4 \
- units/rescue.service.m4 \
+ units/console-shell.service.m4.in \
+ units/rescue.service.m4.in \
units/systemd-initctl.service.in \
units/systemd-shutdownd.service.in \
units/systemd-modules-load.service.in \
@@ -372,6 +373,7 @@ EXTRA_DIST += \
units/systemd-ask-password-wall.service.in \
units/systemd-ask-password-console.service.in \
units/systemd-sysctl.service.in \
+ units/emergency.service.in \
units/halt.service.in \
units/poweroff.service.in \
units/reboot.service.in \
diff --git a/units/.gitignore b/units/.gitignore
index f3b3cef..3cf6423 100644
--- a/units/.gitignore
+++ b/units/.gitignore
@@ -40,6 +40,7 @@ systemd-update-utmp-runlevel.service
systemd-update-utmp-shutdown.service
test-env-replace
systemd-binfmt.service
+emergency.service
/udev-settle.service
/udev-trigger.service
/udev.service
diff --git a/units/console-shell.service.m4 b/units/console-shell.service.m4.in
similarity index 96%
rename from units/console-shell.service.m4
rename to units/console-shell.service.m4.in
index fef9e1b..b0ced10 100644
--- a/units/console-shell.service.m4
+++ b/units/console-shell.service.m4.in
@@ -32,7 +32,7 @@ Before=getty.target
Environment=HOME=/root
WorkingDirectory=/root
ExecStart=-/sbin/sulogin
-ExecStopPost=-/bin/systemctl poweroff
+ExecStopPost=- at SYSTEMCTL@ poweroff
StandardInput=tty-force
StandardOutput=inherit
StandardError=inherit
diff --git a/units/emergency.service b/units/emergency.service.in
similarity index 94%
rename from units/emergency.service
rename to units/emergency.service.in
index 43a74d7..11ff472 100644
--- a/units/emergency.service
+++ b/units/emergency.service.in
@@ -19,7 +19,7 @@ WorkingDirectory=/root
ExecStartPre=-/bin/plymouth quit
ExecStartPre=-/bin/echo 'Welcome to emergency mode. Use "systemctl default" or ^D to enter default mode.'
ExecStart=-/sbin/sulogin
-ExecStopPost=/bin/systemctl --fail --no-block default
+ExecStopPost=@SYSTEMCTL@ --fail --no-block default
StandardInput=tty-force
StandardOutput=inherit
StandardError=inherit
diff --git a/units/rescue.service.m4 b/units/rescue.service.m4.in
similarity index 95%
rename from units/rescue.service.m4
rename to units/rescue.service.m4.in
index 310bbce..df0b54f 100644
--- a/units/rescue.service.m4
+++ b/units/rescue.service.m4.in
@@ -32,7 +32,7 @@ m4_ifdef(`TARGET_MEEGO',
`EnvironmentFile=/etc/sysconfig/init
ExecStart=-/bin/bash -c "exec ${SINGLE}"',
`ExecStart=-/sbin/sulogin'))))
-ExecStopPost=-/bin/systemctl --fail --no-block default
+ExecStopPost=- at SYSTEMCTL@ --fail --no-block default
StandardInput=tty-force
StandardOutput=inherit
StandardError=inherit
diff --git a/units/systemd-ask-password-wall.service.in b/units/systemd-ask-password-wall.service.in
index 71ec1d6..d8e27bf 100644
--- a/units/systemd-ask-password-wall.service.in
+++ b/units/systemd-ask-password-wall.service.in
@@ -10,6 +10,6 @@ Description=Forward Password Requests to Wall
After=systemd-user-sessions.service
[Service]
-ExecStartPre=- at rootbindir@/systemctl stop systemd-ask-password-console.path systemd-ask-password-console.service
-ExecStartPre=- at rootbindir@/systemctl stop systemd-ask-password-plymouth.path systemd-ask-password-plymouth.service
+ExecStartPre=- at SYSTEMCTL@ stop systemd-ask-password-console.path systemd-ask-password-console.service
+ExecStartPre=- at SYSTEMCTL@ stop systemd-ask-password-plymouth.path systemd-ask-password-plymouth.service
ExecStart=@rootbindir@/systemd-tty-ask-password-agent --wall
--
1.7.9.6
More information about the systemd-devel
mailing list