forked from pool/systemd
Accepting request 60104 from home:jeff_mahoney:betterbooting
OBS-URL: https://build.opensuse.org/request/show/60104 OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=110
This commit is contained in:
parent
5b6cb64809
commit
43ccf3e06c
107
systemd-use-plymouth
Normal file
107
systemd-use-plymouth
Normal file
@ -0,0 +1,107 @@
|
||||
From: Jeff Mahoney <jeffm@suse.com>
|
||||
Subject: systemd: Allow plymouth support from other distros than Fedora
|
||||
|
||||
This patch allows plymouth support to be included when building
|
||||
on distros other than Fedora. Specifically, it allows openSUSE.
|
||||
|
||||
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
|
||||
---
|
||||
|
||||
Makefile.am | 27 +++++++++++++++++----------
|
||||
configure.ac | 3 +++
|
||||
units/fedora/plymouth-start.service | 7 +++++--
|
||||
3 files changed, 25 insertions(+), 12 deletions(-)
|
||||
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -331,7 +331,11 @@ if TARGET_FEDORA
|
||||
dist_systemunit_DATA += \
|
||||
units/fedora/prefdm.service \
|
||||
units/fedora/rc-local.service \
|
||||
- units/fedora/halt-local.service \
|
||||
+ units/fedora/halt-local.service
|
||||
+endif
|
||||
+
|
||||
+if HAVE_PLYMOUTH
|
||||
+dist_systemunit_DATA += \
|
||||
units/fedora/plymouth-start.service \
|
||||
units/fedora/plymouth-read-write.service \
|
||||
units/fedora/plymouth-quit.service \
|
||||
@@ -1271,20 +1275,13 @@ install-data-hook:
|
||||
( cd $(DESTDIR)$(dbussessionservicedir) && \
|
||||
rm -f org.freedesktop.systemd1.service && \
|
||||
$(LN_S) ../system-services/org.freedesktop.systemd1.service org.freedesktop.systemd1.service )
|
||||
-if TARGET_FEDORA
|
||||
+if HAVE_PLYMOUTH
|
||||
$(MKDIR_P) -m 0755 \
|
||||
$(DESTDIR)$(SYSTEM_SYSVINIT_PATH) \
|
||||
$(DESTDIR)$(systemunitdir)/reboot.target.wants \
|
||||
$(DESTDIR)$(systemunitdir)/kexec.target.wants \
|
||||
$(DESTDIR)$(systemunitdir)/poweroff.target.wants \
|
||||
- $(DESTDIR)$(systemunitdir)/halt.target.wants \
|
||||
- $(DESTDIR)$(systemunitdir)/final.target.wants
|
||||
- ( cd $(DESTDIR)$(systemunitdir)/multi-user.target.wants && \
|
||||
- rm -f rc-local.service && \
|
||||
- $(LN_S) $(systemunitdir)/rc-local.service rc-local.service )
|
||||
- ( cd $(DESTDIR)$(systemunitdir)/final.target.wants && \
|
||||
- rm -f halt-local.service && \
|
||||
- $(LN_S) $(systemunitdir)/halt-local.service halt-local.service )
|
||||
+ $(DESTDIR)$(systemunitdir)/halt.target.wants
|
||||
( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
|
||||
rm -f plymouth-start.service plymouth-read-write.service && \
|
||||
$(LN_S) ../plymouth-start.service plymouth-start.service && \
|
||||
@@ -1304,6 +1301,16 @@ if TARGET_FEDORA
|
||||
( cd $(DESTDIR)$(systemunitdir)/halt.target.wants && \
|
||||
rm -f plymouth-halt.service && \
|
||||
$(LN_S) ../plymouth-halt.service plymouth-halt.service )
|
||||
+endif
|
||||
+
|
||||
+if TARGET_FEDORA
|
||||
+ $(MKDIR_P) -m 0755 $(DESTDIR)$(systemunitdir)/final.target.wants
|
||||
+ ( cd $(DESTDIR)$(systemunitdir)/multi-user.target.wants && \
|
||||
+ rm -f rc-local.service && \
|
||||
+ $(LN_S) $(systemunitdir)/rc-local.service rc-local.service )
|
||||
+ ( cd $(DESTDIR)$(systemunitdir)/final.target.wants && \
|
||||
+ rm -f halt-local.service && \
|
||||
+ $(LN_S) $(systemunitdir)/halt-local.service halt-local.service )
|
||||
( cd $(DESTDIR)$(systemunitdir) && \
|
||||
rm -f display-manager.service && \
|
||||
$(LN_S) prefdm.service display-manager.service )
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -321,11 +321,13 @@ case $with_distro in
|
||||
SPECIAL_SYSLOG_SERVICE=rsyslog.service
|
||||
AC_DEFINE(TARGET_FEDORA, [], [Target is Fedora/RHEL])
|
||||
M4_DISTRO_FLAG=-DTARGET_FEDORA=1
|
||||
+ have_plymouth=true
|
||||
;;
|
||||
suse)
|
||||
SYSTEM_SYSVRCND_PATH=/etc/init.d
|
||||
AC_DEFINE(TARGET_SUSE, [], [Target is openSUSE/SLE])
|
||||
M4_DISTRO_FLAG=-DTARGET_SUSE=1
|
||||
+ have_plymouth=true
|
||||
;;
|
||||
debian)
|
||||
SYSTEM_SYSVRCND_PATH=/etc
|
||||
@@ -421,6 +423,7 @@ AM_CONDITIONAL(TARGET_ARCH, test x"$with
|
||||
AM_CONDITIONAL(TARGET_GENTOO, test x"$with_distro" = xgentoo)
|
||||
AM_CONDITIONAL(TARGET_SLACKWARE, test x"$with_distro" = xslackware)
|
||||
AM_CONDITIONAL(TARGET_FRUGALWARE, test x"$with_distro" = xfrugalware)
|
||||
+AM_CONDITIONAL(HAVE_PLYMOUTH, test -n "$have_plymouth")
|
||||
|
||||
AC_DEFINE_UNQUOTED(SPECIAL_SYSLOG_SERVICE, ["$SPECIAL_SYSLOG_SERVICE"], [Syslog service name])
|
||||
|
||||
--- a/units/fedora/plymouth-start.service
|
||||
+++ b/units/fedora/plymouth-start.service
|
||||
@@ -13,6 +13,9 @@ After=systemd-vconsole-setup.service ude
|
||||
Before=systemd-ask-password-plymouth.service
|
||||
|
||||
[Service]
|
||||
-ExecStart=/sbin/plymouthd --mode=boot
|
||||
-ExecStartPost=-/bin/plymouth --show-splash
|
||||
+ExecStart=/bin/true
|
||||
+
|
||||
+# We'd need these if we didn't start plymouth in the initramfs
|
||||
+#ExecStart=/sbin/plymouthd --mode=boot
|
||||
+#ExecStartPost=-/bin/plymouth --show-splash
|
||||
Type=forking
|
@ -1,3 +1,8 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 4 21:24:11 CET 2011 - jeffm@suse.de
|
||||
|
||||
- Split plymouth support into systemd-plymouth package.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Jan 22 14:42:34 CET 2011 - kay.sievers@novell.com
|
||||
|
||||
@ -84,6 +89,11 @@ Sat Jan 8 19:25:40 CET 2011 - kay.sievers@novell.com
|
||||
- util: invoke sync() implicitly on freeze()
|
||||
- tmpfiles: do no follow symlinks when cleaning up dirs
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Dec 28 22:08:28 CET 2010 - jeffm@suse.de
|
||||
|
||||
- Add support for building plymouth support with openSUSE
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Dec 27 22:15:41 CET 2010 - kay.sievers@novell.com
|
||||
|
||||
|
29
systemd.spec
29
systemd.spec
@ -21,7 +21,7 @@
|
||||
Name: systemd
|
||||
Url: http://www.freedesktop.org/wiki/Software/systemd
|
||||
Version: 17
|
||||
Release: 1
|
||||
Release: 2
|
||||
License: GPLv2+
|
||||
Group: System/Base
|
||||
Summary: A System and Session Manager
|
||||
@ -42,6 +42,7 @@ Requires: util-linux >= 2.18.91
|
||||
Conflicts: mkinitrd < 2.6.0-5
|
||||
Source0: http://www.freedesktop.org/software/systemd/releases/%{name}-%{version}.tar.bz2
|
||||
Source1: systemd-rpmlintrc
|
||||
Patch1: systemd-use-plymouth
|
||||
Patch42: 0001-Add-bootsplash-handling-for-password-dialogs.patch
|
||||
|
||||
%description
|
||||
@ -69,17 +70,29 @@ Group: System/Base
|
||||
Summary: System V init tools
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
Provides: sbin_init
|
||||
Conflicts: sysvinit
|
||||
Obsoletes: sysvinit
|
||||
Conflicts: upstart
|
||||
|
||||
%description sysvinit
|
||||
Drop-in replacement of System V init tools.
|
||||
|
||||
%package plymouth
|
||||
License: GPLv2+
|
||||
Group: System/Base
|
||||
Summary: Plymouth support for systemd
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
Requires: plymouth
|
||||
|
||||
%description plymouth
|
||||
Plymouth integration for systemd
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch42 -p1
|
||||
%patch1 -p1
|
||||
|
||||
%build
|
||||
autoreconf -fiv
|
||||
# prevent pre-generated and distributed files from re-building
|
||||
find . -name "*.[1-8]" -exec touch '{}' \;
|
||||
touch src/systemadm.c
|
||||
@ -116,6 +129,8 @@ ln -s /dev/null $RPM_BUILD_ROOT/lib/systemd/system/localfs.service
|
||||
ln -s /dev/null $RPM_BUILD_ROOT/lib/systemd/system/crypto-early.service
|
||||
ln -s /dev/null $RPM_BUILD_ROOT/lib/systemd/system/crypto.service
|
||||
|
||||
(cd $RPM_BUILD_ROOT && find . -name '*plymouth*') > files.plymouth
|
||||
|
||||
%post
|
||||
/bin/systemctl daemon-reexec >/dev/null 2>&1 || :
|
||||
|
||||
@ -177,6 +192,10 @@ rm -rf $RPM_BUILD_ROOT
|
||||
%{_datadir}/polkit-1/actions/org.freedesktop.systemd1.policy
|
||||
%{_datadir}/systemd
|
||||
%{_datadir}/pkgconfig/systemd.pc
|
||||
# Packaged in plymouth subpackage
|
||||
%exclude /lib/systemd/system/plymouth-*.service
|
||||
%exclude /lib/systemd/system/*.wants/plymouth-*.service
|
||||
%exclude /lib/systemd/system/systemd-ask-password-plymouth.*
|
||||
# Packaged in gtk subpackage
|
||||
%exclude %{_mandir}/man1/systemadm.1*
|
||||
# Packaged in sysvinit subpackage
|
||||
@ -207,6 +226,12 @@ rm -rf $RPM_BUILD_ROOT
|
||||
%{_bindir}/systemd-gnome-ask-password-agent
|
||||
%{_mandir}/man1/systemadm.1*
|
||||
|
||||
%files plymouth
|
||||
%defattr(-,root,root,-)
|
||||
/lib/systemd/system/plymouth-*.service
|
||||
/lib/systemd/system/*.wants/plymouth-*.service
|
||||
/lib/systemd/system/systemd-ask-password-plymouth.*
|
||||
|
||||
%files sysvinit
|
||||
%defattr(-,root,root,-)
|
||||
/sbin/init
|
||||
|
Loading…
Reference in New Issue
Block a user