-SUBDIRS = src themes images scripts docs
+SUBDIRS = src themes images scripts docs systemd-units
+
DISTCHECK_CONFIGURE_FLAGS = --disable-tests --without-system-root-install
EXTRA_DIST = ChangeLog \
if test x$enable_systemd_integration = xyes; then
AC_DEFINE(PLY_ENABLE_SYSTEMD_INTEGRATION, 1, [Coordinate boot up with systemd])
+ SYSTEMD_UNIT_DIR=/lib/systemd/system
+ AC_SUBST(SYSTEMD_UNIT_DIR)
fi
AC_ARG_WITH(system-root-install, AS_HELP_STRING([--with-system-root-install],[Install client in /bin and daemon in /sbin]),with_system_root_install=${withval},with_system_root_install=yes)
scripts/plymouth-populate-initrd
scripts/plymouth-set-default-theme
scripts/Makefile
+ systemd-units/plymouth-halt.service
+ systemd-units/plymouth-kexec.service
+ systemd-units/plymouth-poweroff.service
+ systemd-units/plymouth-quit.service
+ systemd-units/plymouth-quit-wait.service
+ systemd-units/plymouth-read-write.service
+ systemd-units/plymouth-reboot.service
+ systemd-units/plymouth-start.service
+ systemd-units/Makefile
docs/Makefile
])
AC_OUTPUT
--- /dev/null
+systemd_unit_templates = \
+ plymouth-start.service.in \
+ plymouth-read-write.service.in \
+ plymouth-quit.service.in \
+ plymouth-quit-wait.service.in \
+ plymouth-reboot.service.in \
+ plymouth-kexec.service.in \
+ plymouth-poweroff.service.in \
+ plymouth-halt.service.in
+
+if ENABLE_SYSTEMD_INTEGRATION
+systemdunitdir=$(SYSTEMD_UNIT_DIR)
+systemdunit_DATA = $(systemd_unit_templates:.service.in=.service)
+endif
+
+EXTRA_DIST = $(systemd_unit_templates) $(systemdunit_DATA)
+DISTCLEANFILES=$(systemdunit_DATA)
--- /dev/null
+[Unit]
+Description=Show Plymouth Halt Screen
+After=getty@tty1.service prefdm.service plymouth-start.service
+Before=halt.service
+DefaultDependencies=no
+ConditionKernelCommandLine=!plymouth.enable=0
+
+[Service]
+ExecStart=@PLYMOUTH_DAEMON_DIR@/plymouthd --mode=shutdown --attach-to-session
+ExecStartPost=-@PLYMOUTH_CLIENT_DIR@/plymouth show-splash
+Type=forking
--- /dev/null
+[Unit]
+Description=Show Plymouth Reboot with kexec Screen
+After=getty@tty1.service prefdm.service plymouth-start.service
+Before=kexec.service
+DefaultDependencies=no
+ConditionKernelCommandLine=!plymouth.enable=0
+
+[Service]
+ExecStart=@PLYMOUTH_DAEMON_DIR@/plymouthd --mode=shutdown --attach-to-session
+ExecStartPost=-@PLYMOUTH_CLIENT_DIR@/plymouth show-splash
+Type=forking
--- /dev/null
+[Unit]
+Description=Show Plymouth Power Off Screen
+After=getty@tty1.service prefdm.service plymouth-start.service
+Before=poweroff.service
+DefaultDependencies=no
+ConditionKernelCommandLine=!plymouth.enable=0
+
+[Service]
+ExecStart=@PLYMOUTH_DAEMON_DIR@/plymouthd --mode=shutdown --attach-to-session
+ExecStartPost=-@PLYMOUTH_CLIENT_DIR@/plymouth show-splash
+Type=forking
--- /dev/null
+[Unit]
+Description=Wait for Plymouth Boot Screen to Quit
+After=rc-local.service plymouth-start.service systemd-user-sessions.service
+
+[Service]
+ExecStart=-@PLYMOUTH_CLIENT_DIR@/plymouth --wait
+Type=oneshot
+TimeoutSec=20
--- /dev/null
+[Unit]
+Description=Terminate Plymouth Boot Screen
+After=rc-local.service plymouth-start.service systemd-user-sessions.service
+
+[Service]
+ExecStart=-@PLYMOUTH_CLIENT_DIR@/plymouth quit
+Type=oneshot
+TimeoutSec=20
--- /dev/null
+[Unit]
+Description=Tell Plymouth To Write Out Runtime Data
+DefaultDependencies=no
+After=local-fs.target
+Before=sysinit.target
+
+[Service]
+ExecStart=-@PLYMOUTH_CLIENT_DIR@/plymouth update-root-fs --read-write
+Type=oneshot
--- /dev/null
+[Unit]
+Description=Show Plymouth Reboot Screen
+After=getty@tty1.service prefdm.service plymouth-start.service
+Before=reboot.service
+DefaultDependencies=no
+ConditionKernelCommandLine=!plymouth.enable=0
+
+[Service]
+ExecStart=@PLYMOUTH_DAEMON_DIR@/plymouthd --mode=shutdown --attach-to-session
+ExecStartPost=-@PLYMOUTH_CLIENT_DIR@/plymouth show-splash
+Type=forking
--- /dev/null
+[Unit]
+Description=Show Plymouth Boot Screen
+DefaultDependencies=no
+Wants=systemd-ask-password-plymouth.path
+After=systemd-vconsole-setup.service systemd-udev-settle.service
+Before=systemd-ask-password-plymouth.service
+ConditionKernelCommandLine=!plymouth.enable=0
+ConditionPathExists=!@plymouthruntimedir@/pid
+
+[Service]
+ExecStart=@PLYMOUTH_DAEMON_DIR@/plymouthd --mode=boot --pid-file=@plymouthruntimedir@/pid --attach-to-session
+ExecStartPost=-/bin/udevadm trigger --action=add --attr-match=class=0x030000 ; -/bin/udevadm trigger --action=add --subsystem-match=graphics --subsystem-match=drm --subsystem-match=tty ; -/bin/udevadm settle --timeout=30 ; -@PLYMOUTH_CLIENT_DIR@/plymouth show-splash
+Type=forking