From 1063dc3a525a87c0285e071794317f71724492fe Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Mon, 14 Mar 2011 21:00:53 +0100 Subject: [PATCH] units: add console-shell.service which can be used insted of the gettys to get a shell on /dev/console --- Makefile.am | 2 ++ TODO | 2 ++ units/.gitignore | 1 + units/console-shell.service.m4 | 41 ++++++++++++++++++++++++++++++++++ 4 files changed, 46 insertions(+) create mode 100644 units/console-shell.service.m4 diff --git a/Makefile.am b/Makefile.am index a2e40c3fd..97c8be35e 100644 --- a/Makefile.am +++ b/Makefile.am @@ -260,6 +260,7 @@ dist_systemunit_DATA = \ nodist_systemunit_DATA = \ units/getty@.service \ units/serial-getty@.service \ + units/console-shell.service \ units/graphical.target \ units/remote-fs.target \ units/multi-user.target \ @@ -304,6 +305,7 @@ nodist_userunit_DATA = \ EXTRA_DIST = \ units/getty@.service.m4 \ units/serial-getty@.service.m4 \ + units/console-shell.service.m4 \ units/graphical.target.m4 \ units/multi-user.target.m4 \ units/remote-fs.target.m4 \ diff --git a/TODO b/TODO index 986e06a60..4fc728ffc 100644 --- a/TODO +++ b/TODO @@ -24,6 +24,8 @@ F15: * capability_bounding_set_drop not used. +* remove getty magic, move it into a generator + Features: * optionally create watched directories in .path units diff --git a/units/.gitignore b/units/.gitignore index 008446d4b..a64cac13e 100644 --- a/units/.gitignore +++ b/units/.gitignore @@ -1,3 +1,4 @@ +console-shell.service systemd-sysctl.service systemd-ask-password-console.service rescue.service diff --git a/units/console-shell.service.m4 b/units/console-shell.service.m4 new file mode 100644 index 000000000..c98a08fcc --- /dev/null +++ b/units/console-shell.service.m4 @@ -0,0 +1,41 @@ +# 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=Console Shell +After=systemd-user-sessions.service plymouth-quit-wait.service +m4_ifdef(`TARGET_FEDORA', +After=rc-local.service +)m4_dnl +m4_ifdef(`TARGET_ARCH', +After=rc-local.service +)m4_dnl +m4_ifdef(`TARGET_FRUGALWARE', +After=local.service +)m4_dnl +m4_ifdef(`TARGET_ALTLINUX', +After=rc-local.service +)m4_dnl +m4_ifdef(`TARGET_MANDRIVA', +After=rc-local.service +)m4_dnl +Before=getty.target + +[Service] +Environment=HOME=/root +WorkingDirectory=/root +ExecStart=-/sbin/sulogin +ExecStopPost=-/bin/systemctl poweroff +StandardInput=tty-force +KillMode=process-group + +# Bash ignores SIGTERM, so we send SIGHUP instead, to ensure that bash +# terminates cleanly. +KillSignal=SIGHUP + +[Install] +WantedBy=getty.target -- 2.30.2