Signed-off-by: Stefan Schantl stefan.schantl@ipfire.org --- Makefile.am | 1 + 1 file changed, 1 insertion(+)
diff --git a/Makefile.am b/Makefile.am index a5ff9e0..5afdb7a 100644 --- a/Makefile.am +++ b/Makefile.am @@ -10,6 +10,7 @@ SED_PROCESS = \ $(AM_V_GEN)$(MKDIR_P) $(dir $@) && $(SED) \ -e 's,@PACKAGE@,$(PACKAGE),g' \ -e 's,@VERSION@,$(VERSION),g' \ + -e 's,@BINDIR@,$(bindir),g' \ < $< > $@ || rm $@
# Overwrite Python path
This service file will launch bricklayer in first-install mode in case the firstinstall flag on the filesystem is set.
Signed-off-by: Stefan Schantl stefan.schantl@ipfire.org --- .../bricklayer-first-install.service.in | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+)
diff --git a/src/systemd/bricklayer-first-install.service.in b/src/systemd/bricklayer-first-install.service.in index e69de29..2ba2dd5 100644 --- a/src/systemd/bricklayer-first-install.service.in +++ b/src/systemd/bricklayer-first-install.service.in @@ -0,0 +1,30 @@ +[Unit] +Description=Launch bricklayer to configure pre-generated images +After=plymouth-quit-wait.service +After=systemd-vconsole-setup.service systemd-user-sessions.service +# getty-pre.target is a pasive target, we need to request it before we can use it +Wants=getty-pre.target +# Prevent getty from running on any consoles before we are done +Before=getty-pre.target +Conflicts=plymouth-quit-wait.service bricklayer-first-install.service +ConditionPathExists=/.firstinstall + +[Service] +Type=oneshot +TimeoutSec=0 +RemainAfterExit=yes +# Tell systemd to stop logging to the console, to prevent it's messages +# with interfering with the TUI of bricklayer potentially running there +ExecStartPre=/bin/kill -SIGRTMIN+21 1 +ExecStartPre=-/bin/plymouth quit +ExecStart=@BINDIR@/bricklayer --first-install +# Re-enable systemd console logging once bricklayer is done +ExecStartPost=/bin/kill -SIGRTMIN+20 1 +TimeoutSec=0 +RemainAfterExit=no +StandardInput=tty +StandardOutput=tty +StandardError=tty + +[Install] +WantedBy=multi-user.target
This service file will launch bricklayer in install mode in case "install" has been given on the kernel command line.
Signed-off-by: Stefan Schantl stefan.schantl@ipfire.org --- src/systemd/bricklayer.service.in | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+)
diff --git a/src/systemd/bricklayer.service.in b/src/systemd/bricklayer.service.in index e69de29..852fff1 100644 --- a/src/systemd/bricklayer.service.in +++ b/src/systemd/bricklayer.service.in @@ -0,0 +1,30 @@ +[Unit] +Description=Launch bricklayer to install a new system +After=plymouth-quit-wait.service +After=systemd-vconsole-setup.service systemd-user-sessions.service +# getty-pre.target is a pasive target, we need to request it before we can use it +Wants=getty-pre.target +# prevent getty from running on any consoles before we are done +Before=getty-pre.target +Conflicts=plymouth-quit-wait.service bricklayer.service +ConditionKernelCommandLine=install + +[Service] +Type=oneshot +TimeoutSec=0 +RemainAfterExit=yes +# tell systemd to stop logging to the console, to prevent it's messages +# with interfering with the Initial Setup TUI potentially running there +ExecStartPre=/bin/kill -SIGRTMIN+21 1 +ExecStartPre=-/bin/plymouth quit +ExecStart=@BINDIR@/bricklayer +# re-enable systemd console logging once Initial Setup is done +ExecStartPost=/bin/kill -SIGRTMIN+20 1 +TimeoutSec=0 +RemainAfterExit=no +StandardInput=tty +StandardOutput=tty +StandardError=tty + +[Install] +WantedBy=multi-user.target