From 1310609b0507c9d4562d091e3c9eda94b07773cd Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Tue, 10 Aug 2010 03:44:02 +0200 Subject: unit: hook plymouth into the boot https://bugzilla.redhat.com/show_bug.cgi?id=619922 --- Makefile.am | 15 +++++++++++---- units/fedora/plymouth-quit.service | 17 +++++++++++++++++ units/fedora/plymouth-shutdown.service | 21 +++++++++++++++++++++ units/fedora/prefdm.service | 2 +- 4 files changed, 50 insertions(+), 5 deletions(-) create mode 100644 units/fedora/plymouth-quit.service create mode 100644 units/fedora/plymouth-shutdown.service diff --git a/Makefile.am b/Makefile.am index 00765a7c3e..b6041b5d1c 100644 --- a/Makefile.am +++ b/Makefile.am @@ -188,7 +188,9 @@ dist_systemunit_DATA += \ units/fedora/rc-local.service \ units/fedora/reboot.service \ units/fedora/sysinit.service \ - units/fedora/single.service + units/fedora/single.service \ + units/fedora/plymouth-quit.service \ + units/fedora/plymouth-shutdown.service endif if TARGET_SUSE @@ -762,7 +764,8 @@ install-data-hook: if TARGET_FEDORA $(MKDIR_P) -m 0755 \ $(DESTDIR)$(SYSTEM_SYSVINIT_PATH) \ - $(DESTDIR)$(systemunitdir)/rescue.target.wants + $(DESTDIR)$(systemunitdir)/rescue.target.wants \ + $(DESTDIR)$(pkgsysconfdir)/system/shutdown.target.wants ( cd $(DESTDIR)$(pkgsysconfdir)/system && \ rm -f display-manager.service && \ $(LN_S) $(systemunitdir)/prefdm.service display-manager.service ) @@ -770,11 +773,15 @@ if TARGET_FEDORA rm -f prefdm.service && \ $(LN_S) $(systemunitdir)/prefdm.service prefdm.service ) ( cd $(DESTDIR)$(pkgsysconfdir)/system/multi-user.target.wants && \ - rm -f rc-local.service && \ - $(LN_S) $(systemunitdir)/rc-local.service rc-local.service ) + rm -f rc-local.service plymouth-quit.service && \ + $(LN_S) $(systemunitdir)/rc-local.service rc-local.service && \ + $(LN_S) $(systemunitdir)/plymouth-quit.service plymouth-quit.service ) ( cd $(DESTDIR)$(systemunitdir)/rescue.target.wants && \ rm -f single.service && \ $(LN_S) $(systemunitdir)/single.service single.service ) + ( cd $(DESTDIR)$(pkgsysconfdir)/system/shutdown.target.wants && \ + rm -f plymouth-shutdown.service && \ + $(LN_S) $(systemunitdir)/plymouth-shutdown.service plymouth-shutdown.service ) ( cd $(DESTDIR)$(systemunitdir) && \ rm -f local.service && \ $(LN_S) rc-local.service local.service ) diff --git a/units/fedora/plymouth-quit.service b/units/fedora/plymouth-quit.service new file mode 100644 index 0000000000..e676eca883 --- /dev/null +++ b/units/fedora/plymouth-quit.service @@ -0,0 +1,17 @@ +# 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=Terminate Plymouth Boot Screen +After=getty@tty1.service + +[Service] +ExecStart=-/usr/bin/plymouth quit +Type=finish + +[Install] +WantedBy=multi-user.target diff --git a/units/fedora/plymouth-shutdown.service b/units/fedora/plymouth-shutdown.service new file mode 100644 index 0000000000..da3acecd16 --- /dev/null +++ b/units/fedora/plymouth-shutdown.service @@ -0,0 +1,21 @@ +# 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=Show Plymouth Shutdown Screen +After=getty@tty1.service prefdm.service +DefaultDependencies=no + +[Service] +ExecStart=/sbin/plymouthd --mode=shutdown +ExecStartPost=-/usr/bin/plymouth --sysinit +ExecStartPost=-/usr/bin/plymouth --show-splash +ExecStartPost=-/usr/bin/plymouth message '--text=Shutting Down' +Type=forking + +[Install] +WantedBy=shutdown.target diff --git a/units/fedora/prefdm.service b/units/fedora/prefdm.service index acce52e0de..49c06a6c2f 100644 --- a/units/fedora/prefdm.service +++ b/units/fedora/prefdm.service @@ -11,7 +11,7 @@ After=syslog.target haldaemon.service # On Fedora gdm/X11 is on tty1. We explicitly cancel the getty here to # avoid any races around that. -Conflicts=getty@tty1.service +Conflicts=getty@tty1.service plymouth-quit.service [Service] ExecStart=/etc/X11/prefdm -nodaemon -- cgit v1.2.3-54-g00ecf