summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.am15
-rw-r--r--units/fedora/plymouth-quit.service17
-rw-r--r--units/fedora/plymouth-shutdown.service21
-rw-r--r--units/fedora/prefdm.service2
4 files changed, 50 insertions, 5 deletions
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