From: zhaoqiang Date: Sun, 4 Aug 2019 14:43:32 +0000 (+0800) Subject: scripts: update file plymouth.spec to integrate recent fixes. X-Git-Tag: 0.9.5~50^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8e578dce5b70c7ca01a7afacf8217cbc40375960;p=thirdparty%2Fplymouth.git scripts: update file plymouth.spec to integrate recent fixes. --- diff --git a/scripts/plymouth.spec b/scripts/plymouth.spec index dd77f58e..b4a7a420 100644 --- a/scripts/plymouth.spec +++ b/scripts/plymouth.spec @@ -1,12 +1,43 @@ -Summary: Plymouth Graphical Boot Animation and Logger +%global plymouthdaemon_execdir %{_sbindir} +%global plymouthclient_execdir %{_bindir} +%global plymouth_libdir %{_libdir} +%global plymouth_initrd_file /boot/initrd-plymouth.img + +# Set to 1 if building from snapshots. +%global snapshot_build 0 + +%if %{snapshot_build} +%global snapshot_date 20160620 +%global snapshot_hash 0e65b86c +%global snapshot_rel %{?snapshot_date}git%{?snapshot_hash} +%endif + + +Summary: Graphical Boot Animation and Logger Name: plymouth -Version: 0.2.0 -Release: 0%{?dist} +Version: 0.9.4 +Release: 3%{?snapshot_rel}%{?dist} License: GPLv2+ -Group: System Environment/Base -Source0: http://freedesktop.org/software/plymouth/releases/%{name}-%{version}.tar.bz2 -URL: http://freedesktop.org/software/plymouth/releases -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +URL: http://www.freedesktop.org/wiki/Software/Plymouth + +Source0: http://freedesktop.org/software/plymouth/releases/%{name}-%{version}.tar.xz +Source2: charge.plymouth +Source3: plymouth-update-initrd + +Patch1: plymouth-updates.patch +Patch2: 0001-drm-Fix-tiled-mode-detection.patch + +BuildRequires: gcc libtool git +BuildRequires: pkgconfig(libdrm) +BuildRequires: pkgconfig(libudev) +BuildRequires: kernel-headers +BuildRequires: libpng-devel +BuildRequires: libxslt, docbook-style-xsl +BuildRequires: pkgconfig(gtk+-3.0) +BuildRequires: pango-devel >= 1.21.0 +BuildRequires: cairo-devel + +Requires(post): plymouth-scripts %description Plymouth provides an attractive graphical boot animation in @@ -14,147 +45,387 @@ place of the text messages that normally get shown. Text messages are instead redirected to a log file for viewing after boot. -%package libs -Summary: Plymouth libraries -Group: Development/Libraries -Requires: %{name} = %{version}-%{release} +%package system-theme +Summary: Plymouth default theme +Requires: plymouth(system-theme) = %{version}-%{release} + +%description system-theme +This metapackage tracks the current distribution default theme. -%description libs +%package core-libs +Summary: Plymouth core libraries + +%description core-libs This package contains the libply and libply-splash-core libraries used by Plymouth. +%package graphics-libs +Summary: Plymouth graphics libraries +Requires: %{name}-core-libs = %{version}-%{release} +Requires: system-logos + +%description graphics-libs +This package contains the libply-splash-graphics library +used by graphical Plymouth splashes. + %package devel Summary: Libraries and headers for writing Plymouth splash plugins -Group: Development/Libraries Requires: %{name} = %{version}-%{release} Requires: pkgconfig %description devel -This package contains the libply and libply-splash-core libraries +This package contains the libply and libplybootsplash libraries and headers needed to develop 3rd party splash plugins for Plymouth. -%package plugin-fade-in -Summary: Plymouth "Fade-In" plugin -Group: System Environment/Base -Requires: %name = %{version}-%{release} -BuildRequires: libpng-devel -Provides: plymouth-plugin +%package scripts +Summary: Plymouth related scripts +Requires: findutils, coreutils, gzip, cpio, dracut, plymouth + +%description scripts +This package contains scripts that help integrate Plymouth with +the system. + +%package plugin-label +Summary: Plymouth label plugin +Requires: %{name} = %{version}-%{release} +Requires: %{name}-graphics-libs = %{version}-%{release} + +%description plugin-label +This package contains the label control plugin for +Plymouth. It provides the ability to render text on +graphical boot splashes using pango and cairo. + +%package plugin-fade-throbber +Summary: Plymouth "Fade-Throbber" plugin +Requires: %{name} = %{version}-%{release} +Requires: %{name}-graphics-libs = %{version}-%{release} -%description plugin-fade-in +%description plugin-fade-throbber This package contains the "Fade-In" boot splash plugin for +Plymouth. It features a centered image that fades in and out +while other images pulsate around during system boot up. + +%package theme-fade-in +Summary: Plymouth "Fade-In" theme +Requires: %{name}-plugin-fade-throbber = %{version}-%{release} +Requires(post): plymouth-scripts + +%description theme-fade-in +This package contains the "Fade-In" boot splash theme for Plymouth. It features a centered logo that fades in and out while stars twinkle around the logo during system boot up. -%package plugin-spinfinity -Summary: Plymouth "Spinfinity" plugin -Group: System Environment/Base -Requires: %name = %{version}-%{release} -BuildRequires: libpng-devel -Provides: plymouth-plugin +%package plugin-throbgress +Summary: Plymouth "Throbgress" plugin +Requires: %{name} = %{version}-%{release} +Requires: %{name}-graphics-libs = %{version}-%{release} +Requires: plymouth-plugin-label -%description plugin-spinfinity -This package contains the "Spinfinity" boot splash plugin for +%description plugin-throbgress +This package contains the "throbgress" boot splash plugin for +Plymouth. It features a centered logo and animated spinner that +spins repeatedly while a progress bar advances at the bottom of +the screen. + +%package theme-spinfinity +Summary: Plymouth "Spinfinity" theme +Requires: %{name}-plugin-throbgress = %{version}-%{release} +Requires(post): plymouth-scripts + +%description theme-spinfinity +This package contains the "Spinfinity" boot splash theme for Plymouth. It features a centered logo and animated spinner that spins in the shape of an infinity sign. +%package plugin-space-flares +Summary: Plymouth "space-flares" plugin +Requires: %{name} = %{version}-%{release} +Requires: %{name}-graphics-libs = %{version}-%{release} +Requires: plymouth-plugin-label + +%description plugin-space-flares +This package contains the "space-flares" boot splash plugin for +Plymouth. It features a corner image with animated flares. + +%package theme-solar +Summary: Plymouth "Solar" theme +Requires: %{name}-plugin-space-flares = %{version}-%{release} +Requires(post): plymouth-scripts + +%description theme-solar +This package contains the "Solar" boot splash theme for +Plymouth. It features a blue flamed sun with animated solar flares. + +%package plugin-two-step +Summary: Plymouth "two-step" plugin +Requires: %{name} = %{version}-%{release} +Requires: %{name}-graphics-libs = %{version}-%{release} +Requires: plymouth-plugin-label + +%description plugin-two-step +This package contains the "two-step" boot splash plugin for +Plymouth. It features a two phased boot process that starts with +a progressing animation synced to boot time and finishes with a +short, fast one-shot animation. + +%package theme-charge +Summary: Plymouth "Charge" plugin +Requires: %{name}-plugin-two-step = %{version}-%{release} +Requires(post): plymouth-scripts +Provides: plymouth(system-theme) = %{version}-%{release} + +%description theme-charge +This package contains the "charge" boot splash theme for +Plymouth. It features the shadowy hull of a Fedora logo charge up and +and finally burst into full form. + +%package plugin-script +Summary: Plymouth "script" plugin +Requires: %{name} = %{version}-%{release} +Requires: %{name}-graphics-libs = %{version}-%{release} + +%description plugin-script +This package contains the "script" boot splash plugin for +Plymouth. It features an extensible, scriptable boot splash +language that simplifies the process of designing custom +boot splash themes. + +%package theme-script +Summary: Plymouth "Script" plugin +Requires: %{name}-plugin-script = %{version}-%{release} +Requires(post): %{_sbindir}/plymouth-set-default-theme + +%description theme-script +This package contains the "script" boot splash theme for +Plymouth. It it is a simple example theme the uses the "script" +plugin. + +%package theme-spinner +Summary: Plymouth "Spinner" theme +Requires: %{name}-plugin-two-step = %{version}-%{release} +Requires(post): plymouth-scripts + +%description theme-spinner +This package contains the "spinner" boot splash theme for +Plymouth. It features a small spinner on a dark background. + %prep -%setup -q +%autosetup -S git +autoreconf -ivf -Wno-portability + +# Change the default theme +sed -i -e 's/spinner/charge/g' src/plymouthd.defaults %build -%configure --enable-tracing --disable-tests --without-boot-entry --without-default-plugin +%configure --enable-tracing --disable-tests \ + --with-logo=%{_datadir}/pixmaps/system-logo-white.png \ + --with-background-start-color-stop=0x0073B3 \ + --with-background-end-color-stop=0x00457E \ + --with-background-color=0x3391cd \ + --disable-gdm-transition \ + --enable-systemd-integration \ + --without-system-root-install \ + --without-log-viewer \ + --without-rhgb-compat-link \ + --disable-libkms make %install -rm -rf $RPM_BUILD_ROOT - make install DESTDIR=$RPM_BUILD_ROOT -find $RPM_BUILD_ROOT -name '*.a' -exec rm -f {} \; -find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} \; +# Glow isn't quite ready for primetime +rm -rf $RPM_BUILD_ROOT%{_datadir}/plymouth/glow/ +rm -f $RPM_BUILD_ROOT%{_libdir}/plymouth/glow.so -%clean -rm -rf $RPM_BUILD_ROOT +find $RPM_BUILD_ROOT -name '*.a' -delete +find $RPM_BUILD_ROOT -name '*.la' -delete + +mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lib/plymouth +cp -f $RPM_SOURCE_DIR/plymouth-update-initrd $RPM_BUILD_ROOT%{_libexecdir}/plymouth + +# Add charge, our new default +mkdir -p $RPM_BUILD_ROOT%{_datadir}/plymouth/themes/charge +cp %{SOURCE2} $RPM_BUILD_ROOT%{_datadir}/plymouth/themes/charge +cp $RPM_BUILD_ROOT%{_datadir}/plymouth/themes/glow/{box,bullet,entry,lock}.png $RPM_BUILD_ROOT%{_datadir}/plymouth/themes/charge + +# Drop glow, it's not very Fedora-y +rm -rf $RPM_BUILD_ROOT%{_datadir}/plymouth/themes/glow %postun -echo plymouth postun "$@" if [ $1 -eq 0 ]; then - rm %{_libdir}/plymouth/default.so + rm -f %{_libdir}/plymouth/default.so + rm -f /boot/initrd-plymouth.img fi -%post libs -p /sbin/ldconfig -%postun libs -p /sbin/ldconfig +%post core-libs -p /sbin/ldconfig +%postun core-libs -p /sbin/ldconfig -%post plugin-spinfinity -echo plymouth-spinfinity post "$@" -if [ $1 -eq 1 ]; then - %{_sbindir}/plymouth-set-default-plugin spinfinity +%post graphics-libs -p /sbin/ldconfig +%postun graphics-libs -p /sbin/ldconfig + +%postun theme-spinfinity +export LIB=%{_lib} +if [ $1 -eq 0 ]; then + if [ "$(%{_sbindir}/plymouth-set-default-theme)" == "spinfinity" ]; then + %{_sbindir}/plymouth-set-default-theme text + fi +fi + +%postun theme-fade-in +export LIB=%{_lib} +if [ $1 -eq 0 ]; then + if [ "$(%{_sbindir}/plymouth-set-default-theme)" == "fade-in" ]; then + %{_sbindir}/plymouth-set-default-theme --reset + fi +fi + +%postun theme-spinner +export LIB=%{_lib} +if [ $1 -eq 0 ]; then + if [ "$(%{_sbindir}/plymouth-set-default-theme)" == "spinner" ]; then + %{_sbindir}/plymouth-set-default-theme --reset + fi fi -%postun plugin-spinfinity -echo plymouth-spinfinity postun "$@" +%postun theme-solar +export LIB=%{_lib} if [ $1 -eq 0 ]; then - if [ "$(%{_sbindir}/plymouth-set-default-plugin)" == "spinfinity" ]; then - %{_sbindir}/plymouth-set-default-plugin --reset + if [ "$(%{_sbindir}/plymouth-set-default-theme)" == "solar" ]; then + %{_sbindir}/plymouth-set-default-theme --reset fi fi -%post plugin-fade-in -echo plymouth-fade-in post "$@" +%post theme-charge +export LIB=%{_lib} if [ $1 -eq 1 ]; then - %{_sbindir}/plymouth-set-default-plugin fade-in + %{_sbindir}/plymouth-set-default-theme charge +else + if [ "$(%{_sbindir}/plymouth-set-default-theme)" == "solar" ]; then + %{_sbindir}/plymouth-set-default-theme charge + fi fi -%postun plugin-fade-in -echo plymouth-fade-in postun "$@" +%postun theme-charge +export LIB=%{_lib} if [ $1 -eq 0 ]; then - if [ "$(%{_sbindir}/plymouth-set-default-plugin)" == "fade-in" ]; then - %{_sbindir}/plymouth-set-default-plugin --reset + if [ "$(%{_sbindir}/plymouth-set-default-theme)" == "charge" ]; then + %{_sbindir}/plymouth-set-default-theme --reset fi fi %files -%defattr(-, root, root) -%doc AUTHORS NEWS README +%license COPYING +%doc AUTHORS README %dir %{_datadir}/plymouth -%{_libexecdir}/plymouth/plymouthd -%{_libexecdir}/plymouth/plymouth-update-initrd -%{_libexecdir}/plymouth/plymouth-populate-initrd -%{_sbindir}/plymouth-set-default-plugin +%dir %{_datadir}/plymouth/themes +%dir %{_datadir}/plymouth/themes/details +%dir %{_datadir}/plymouth/themes/text +%dir %{_libexecdir}/plymouth +%dir %{_localstatedir}/lib/plymouth +%dir %{_libdir}/plymouth/renderers +%dir %{_sysconfdir}/plymouth +%config(noreplace) %{_sysconfdir}/plymouth/plymouthd.conf +%{plymouthdaemon_execdir}/plymouthd +%{plymouthclient_execdir}/plymouth %{_bindir}/plymouth -%{_bindir}/rhgb-client %{_libdir}/plymouth/details.so %{_libdir}/plymouth/text.so -%{_datadir}/plymouth/bizcom.png +%{_libdir}/plymouth/tribar.so +%{_datadir}/plymouth/themes/details/details.plymouth +%{_datadir}/plymouth/themes/text/text.plymouth +%{_datadir}/plymouth/themes/tribar/tribar.plymouth +%{_datadir}/plymouth/plymouthd.defaults %{_localstatedir}/run/plymouth +%{_localstatedir}/spool/plymouth +%{_mandir}/man?/* +%ghost %{_localstatedir}/lib/plymouth/boot-duration +%{_prefix}/lib/systemd/system/* +%{_prefix}/lib/systemd/system/ %files devel -%defattr(-, root, root) -%{_libdir}/libply.so -%{_libdir}/libply-splash-core.so -%{_libdir}/pkgconfig/plymouth-1.pc +%{plymouth_libdir}/libply.so +%{plymouth_libdir}/libply-splash-core.so +%{_libdir}/libply-boot-client.so +%{_libdir}/libply-splash-graphics.so +%{_libdir}/pkgconfig/ply-splash-core.pc +%{_libdir}/pkgconfig/ply-splash-graphics.pc +%{_libdir}/pkgconfig/ply-boot-client.pc +%{_libdir}/plymouth/renderers/x11* %{_includedir}/plymouth-1 -%files libs -%defattr(-, root, root) -%{_libdir}/libply.so.* -%{_libdir}/libply-splash-core.so.* - -%files plugin-fade-in -%defattr(-, root, root) -%dir %{_datadir}/plymouth/fade-in -%{_datadir}/plymouth/fade-in/bullet.png -%{_datadir}/plymouth/fade-in/entry.png -%{_datadir}/plymouth/fade-in/lock.png -%{_datadir}/plymouth/fade-in/star.png -%{_libdir}/plymouth/fade-in.so - -%files plugin-spinfinity -%defattr(-, root, root) -%dir %{_datadir}/plymouth/spinfinity -%{_datadir}/plymouth/spinfinity/box.png -%{_datadir}/plymouth/spinfinity/bullet.png -%{_datadir}/plymouth/spinfinity/entry.png -%{_datadir}/plymouth/spinfinity/lock.png -%{_datadir}/plymouth/spinfinity/throbber-[0-3][0-9].png -%{_libdir}/plymouth/spinfinity.so +%files core-libs +%{plymouth_libdir}/libply.so.* +%{plymouth_libdir}/libply-splash-core.so.* +%{_libdir}/libply-boot-client.so.* +%dir %{_libdir}/plymouth + +%files graphics-libs +%{_libdir}/libply-splash-graphics.so.* +%{_libdir}/plymouth/renderers/drm* +%{_libdir}/plymouth/renderers/frame-buffer* + +%files scripts +%{_sbindir}/plymouth-set-default-theme +%{_libexecdir}/plymouth/plymouth-update-initrd +%{_libexecdir}/plymouth/plymouth-generate-initrd +%{_libexecdir}/plymouth/plymouth-populate-initrd + +%files plugin-label +%{_libdir}/plymouth/label.so + +%files plugin-fade-throbber +%{_libdir}/plymouth/fade-throbber.so + +%files theme-fade-in +%dir %{_datadir}/plymouth/themes/fade-in +%{_datadir}/plymouth/themes/fade-in/bullet.png +%{_datadir}/plymouth/themes/fade-in/entry.png +%{_datadir}/plymouth/themes/fade-in/lock.png +%{_datadir}/plymouth/themes/fade-in/star.png +%{_datadir}/plymouth/themes/fade-in/fade-in.plymouth + +%files theme-spinner +%{_datadir}/plymouth/themes/spinner/ +%{_datadir}/plymouth/themes/bgrt/ + +%files plugin-throbgress +%{_libdir}/plymouth/throbgress.so + +%files theme-spinfinity +%dir %{_datadir}/plymouth/themes/spinfinity +%{_datadir}/plymouth/themes/spinfinity/box.png +%{_datadir}/plymouth/themes/spinfinity/bullet.png +%{_datadir}/plymouth/themes/spinfinity/entry.png +%{_datadir}/plymouth/themes/spinfinity/lock.png +%{_datadir}/plymouth/themes/spinfinity/throbber-[0-3][0-9].png +%{_datadir}/plymouth/themes/spinfinity/spinfinity.plymouth + +%files plugin-space-flares +%{_libdir}/plymouth/space-flares.so + +%files theme-solar +%dir %{_datadir}/plymouth/themes/solar +%{_datadir}/plymouth/themes/solar/*.png +%{_datadir}/plymouth/themes/solar/solar.plymouth + +%files plugin-two-step +%{_libdir}/plymouth/two-step.so + +%files theme-charge +%dir %{_datadir}/plymouth/themes/charge +%{_datadir}/plymouth/themes/charge/*.png +%{_datadir}/plymouth/themes/charge/charge.plymouth + +%files plugin-script +%{_libdir}/plymouth/script.so + +%files theme-script +%dir %{_datadir}/plymouth/themes/script +%{_datadir}/plymouth/themes/script/*.png +%{_datadir}/plymouth/themes/script/script.script +%{_datadir}/plymouth/themes/script/script.plymouth + +%files system-theme + +%changelog