chiark / gitweb /
unit: hook plymouth into the boot
authorLennart Poettering <lennart@poettering.net>
Tue, 10 Aug 2010 01:44:02 +0000 (03:44 +0200)
committerLennart Poettering <lennart@poettering.net>
Tue, 10 Aug 2010 01:44:05 +0000 (03:44 +0200)
https://bugzilla.redhat.com/show_bug.cgi?id=619922

Makefile.am
units/fedora/plymouth-quit.service [new file with mode: 0644]
units/fedora/plymouth-shutdown.service [new file with mode: 0644]
units/fedora/prefdm.service

index 00765a7..b6041b5 100644 (file)
@@ -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 (file)
index 0000000..e676eca
--- /dev/null
@@ -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 (file)
index 0000000..da3acec
--- /dev/null
@@ -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
index acce52e..49c06a6 100644 (file)
@@ -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