plymouth/plymouth.spec

428 lines
13 KiB
RPMSpec
Raw Normal View History

2008-11-23 04:26:51 +00:00
Summary: Graphical Boot Animation and Logger
2008-05-31 02:51:13 +00:00
Name: plymouth
2024-01-04 21:17:07 +00:00
Version: 24.004.60
2023-12-22 16:54:28 +00:00
Release: %autorelease
License: GPL-2.0-or-later
URL: http://www.freedesktop.org/wiki/Software/Plymouth
Source0: https://gitlab.freedesktop.org/plymouth/plymouth/-/archive/%{version}/%{name}-%{version}.tar.bz2
Source2: charge.plymouth
# Revert https://gitlab.freedesktop.org/plymouth/plymouth/-/commit/48881ba
# to fix console display on minimal installs
# https://bugzilla.redhat.com/show_bug.cgi?id=2269385
Patch: 0001-Revert-src-Hide-console-text-when-splash-is-requeste.patch
# https://gitlab.freedesktop.org/plymouth/plymouth/-/commit/10ac8d2dc927b112ce6aeb06bc73d9c46550954c
# Fix encryption passphrase appearing in plain text in text mode
# https://bugzilla.redhat.com/show_bug.cgi?id=2271337
Patch: 0001-ply-boot-splash-Set-unbuffered-input-when-creating-a.patch
# Revert patch to immediately switch to text mode on first renderer plugin error
# Fixes unwanted text mode when drm-plugin init races with simpledrm unregistration
# https://gitlab.freedesktop.org/plymouth/plymouth/-/merge_requests/319
# https://bugzilla.redhat.com/show_bug.cgi?id=2270030
Patch: 0001-ply-device-manager-Revert-Fall-back-to-text-plugin-i.patch
2023-12-22 16:54:28 +00:00
BuildRequires: meson
BuildRequires: system-logos
BuildRequires: gcc libtool git
2009-09-28 23:30:47 +00:00
BuildRequires: pkgconfig(libdrm)
2023-12-22 18:18:16 +00:00
BuildRequires: pkgconfig(libevdev)
2016-05-24 17:29:56 +00:00
BuildRequires: pkgconfig(libudev)
2023-12-22 18:18:16 +00:00
BuildRequires: pkgconfig(xkeyboard-config)
2009-11-23 19:21:13 +00:00
BuildRequires: kernel-headers
BuildRequires: libpng-devel
2016-05-24 17:29:56 +00:00
BuildRequires: libxslt, docbook-style-xsl
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pango-devel >= 1.21.0
BuildRequires: cairo-devel
BuildRequires: gettext-devel
BuildRequires: intltool
# for /usr/bin/systemd-tty-ask-password-agent
BuildRequires: systemd
# for _unitdir macro
BuildRequires: systemd-rpm-macros
2009-09-28 23:30:47 +00:00
Requires: %{name}-core-libs = %{version}-%{release}
Requires: %{name}-scripts = %{version}-%{release}
2023-12-25 16:11:49 +00:00
# For keyboard layouts
Requires: xkeyboard-config
Suggests: logrotate
2008-05-31 02:51:13 +00:00
%description
Plymouth provides an attractive graphical boot animation in
place of the text messages that normally get shown. Text
messages are instead redirected to a log file for viewing
after boot.
%package system-theme
Summary: Plymouth default theme
Requires: plymouth(system-theme) = %{version}-%{release}
%description system-theme
This meta-package tracks the current distribution default theme.
%package core-libs
Summary: Plymouth core libraries
%description core-libs
This package contains the 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 libraries used by graphical Plymouth splashes.
%package devel
Summary: Libraries and headers for writing Plymouth splash plugins
Requires: %{name} = %{version}-%{release}
Requires: pkgconfig
%description devel
This package contains the libraries and headers needed to develop
3rd party splash plugins for Plymouth.
%package scripts
Summary: Plymouth related scripts
Requires: findutils, coreutils, gzip, cpio, dracut
Requires: xkeyboard-config
Requires: %{name} = %{version}-%{release}
%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.
%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 boot splash language that
allows writing new plugins as scripts, simplifying the process
of designing custom boot splash themes.
%package plugin-fade-throbber
Summary: Plymouth "Fade-Throbber" plugin
Requires: %{name} = %{version}-%{release}
Requires: %{name}-graphics-libs = %{version}-%{release}
2008-05-31 02:51:13 +00:00
%description plugin-fade-throbber
2008-05-31 02:51:13 +00:00
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 plugin-space-flares
Summary: Plymouth "space-flares" plugin
Requires: %{name} = %{version}-%{release}
Requires: %{name}-graphics-libs = %{version}-%{release}
Requires: plymouth-plugin-label = %{version}-%{release}
%description plugin-space-flares
This package contains the "space-flares" boot splash plugin for
Plymouth. It features a corner image with animated flares.
2008-05-31 02:51:13 +00:00
%package plugin-two-step
Summary: Plymouth "two-step" plugin
Requires: %{name} = %{version}-%{release}
Requires: %{name}-graphics-libs = %{version}-%{release}
Requires: plymouth-plugin-label = %{version}-%{release}
# Spinifinity like themes should now use two-step instead of throbgress
# No provides, the throbgress plugin has been removed upstream
Obsoletes: %{name}-plugin-throbgress < %{version}-%{release}
%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.
# Don't build charge theme in ELN/RHEL as it's Fedora specific
%if ! 0%{?rhel}
%package theme-charge
Summary: Plymouth "Charge" plugin
Requires: %{name}-plugin-two-step = %{version}-%{release}
Requires: fedora-logos-classic
Requires(post): plymouth-scripts
%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.
%endif
2009-08-11 17:56:49 +00:00
%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.
2009-08-11 17:56:49 +00:00
%package theme-script
Summary: Plymouth "Script" plugin
Requires: %{name}-plugin-script = %{version}-%{release}
Requires(post): plymouth-scripts
2009-08-11 17:56:49 +00:00
%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-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 theme-spinfinity
Summary: Plymouth "Spinfinity" theme
Requires: %{name}-plugin-two-step = %{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.
2011-03-23 16:16:21 +00:00
%package theme-spinner
Summary: Plymouth "Spinner" theme
Requires: %{name}-plugin-two-step = %{version}-%{release}
2024-05-15 01:42:16 +00:00
%if 0%{?rhel} > 9
Requires: font(redhattextvf) font(redhatmonovf)
%else
Requires: font(cantarell) font(cantarelllight)
2024-05-15 01:42:16 +00:00
%endif
2011-03-23 16:16:21 +00:00
Requires(post): plymouth-scripts
Provides: plymouth(system-theme) = %{version}-%{release}
2011-03-23 16:16:21 +00:00
%description theme-spinner
This package contains the "spinner" boot splash theme for
Plymouth. It features a small spinner on a dark background.
2008-05-31 02:51:13 +00:00
%prep
%autosetup -p1
# Change the default theme
sed -i -e 's/spinner/bgrt/g' src/plymouthd.defaults
%if 0%{?rhel} > 9
find -type f -exec sed -i -e 's/Cantarell/Red Hat Text/g' {} \;
%endif
2008-05-31 02:51:13 +00:00
%build
2023-12-22 16:54:28 +00:00
%meson -Dtracing=true \
-Dlogo=%{_datadir}/pixmaps/system-logo-white.png \
-Dbackground-start-color-stop=0x0073B3 \
-Dbackground-end-color-stop=0x00457E \
-Dbackground-color=0x3391cd
%meson_build
2008-05-31 02:51:13 +00:00
%install
2023-12-22 16:54:28 +00:00
%meson_install
%find_lang %{name}
find $RPM_BUILD_ROOT -name '*.la' -delete
2008-05-31 02:51:13 +00:00
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lib/plymouth
%if ! 0%{?rhel}
# Add charge, our old 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
%endif
# Drop glow, it's not very Fedora-y
rm -rf $RPM_BUILD_ROOT%{_datadir}/plymouth/themes/glow
%ldconfig_scriptlets core-libs
%ldconfig_scriptlets graphics-libs
%if ! 0%{?rhel}
%postun theme-charge
export PLYMOUTH_PLUGIN_PATH=%{_libdir}/plymouth/
if [ $1 -eq 0 ]; then
if [ "$(%{_sbindir}/plymouth-set-default-theme)" == "charge" ]; then
%{_sbindir}/plymouth-set-default-theme --reset
fi
fi
%endif
%postun theme-fade-in
export PLYMOUTH_PLUGIN_PATH=%{_libdir}/plymouth/
if [ $1 -eq 0 ]; then
if [ "$(%{_sbindir}/plymouth-set-default-theme)" == "fade-in" ]; then
%{_sbindir}/plymouth-set-default-theme --reset
fi
fi
%postun theme-solar
export PLYMOUTH_PLUGIN_PATH=%{_libdir}/plymouth/
2011-03-23 16:16:21 +00:00
if [ $1 -eq 0 ]; then
if [ "$(%{_sbindir}/plymouth-set-default-theme)" == "solar" ]; then
2011-03-23 16:16:21 +00:00
%{_sbindir}/plymouth-set-default-theme --reset
fi
fi
%postun theme-spinfinity
export PLYMOUTH_PLUGIN_PATH=%{_libdir}/plymouth/
if [ $1 -eq 0 ]; then
if [ "$(%{_sbindir}/plymouth-set-default-theme)" == "spinfinity" ]; then
%{_sbindir}/plymouth-set-default-theme --reset
fi
fi
2008-05-31 02:51:13 +00:00
%post theme-spinner
export PLYMOUTH_PLUGIN_PATH=%{_libdir}/plymouth/
# On upgrades replace charge with the new bgrt default
if [ $1 -eq 2 ]; then
if [ "$(%{_sbindir}/plymouth-set-default-theme)" == "charge" ]; then
%{_sbindir}/plymouth-set-default-theme bgrt
fi
fi
%postun theme-spinner
export PLYMOUTH_PLUGIN_PATH=%{_libdir}/plymouth/
if [ $1 -eq 0 ]; then
if [ "$(%{_sbindir}/plymouth-set-default-theme)" == "bgrt" -o \
"$(%{_sbindir}/plymouth-set-default-theme)" == "spinner" ]; then
%{_sbindir}/plymouth-set-default-theme --reset
fi
fi
%files -f %{name}.lang
%license COPYING
2023-12-22 16:54:28 +00:00
%doc AUTHORS README.md
2008-05-31 02:51:13 +00:00
%dir %{_datadir}/plymouth
%dir %{_datadir}/plymouth/themes
2011-01-29 20:44:49 +00:00
%dir %{_datadir}/plymouth/themes/details
%dir %{_datadir}/plymouth/themes/text
%dir %{_libexecdir}/plymouth
%dir %{_localstatedir}/lib/plymouth
%dir %{_libdir}/plymouth/renderers
2011-01-29 20:44:49 +00:00
%dir %{_sysconfdir}/plymouth
%config(noreplace) %{_sysconfdir}/plymouth/plymouthd.conf
%config(noreplace) %{_sysconfdir}/logrotate.d/bootlog
%{_sbindir}/plymouthd
%{_libexecdir}/plymouth/plymouthd-fd-escrow
2008-05-31 02:51:13 +00:00
%{_bindir}/plymouth
%{_libdir}/plymouth/details.so
%{_libdir}/plymouth/text.so
2016-05-24 16:51:33 +00:00
%{_libdir}/plymouth/tribar.so
%{_datadir}/plymouth/themes/details/details.plymouth
%{_datadir}/plymouth/themes/text/text.plymouth
2016-05-24 16:51:33 +00:00
%{_datadir}/plymouth/themes/tribar/tribar.plymouth
%{_datadir}/plymouth/plymouthd.defaults
2008-08-13 15:19:15 +00:00
%{_localstatedir}/spool/plymouth
%{_mandir}/man?/*
%ghost %verify(not mode) %{_localstatedir}/lib/plymouth/boot-duration
%{_unitdir}/
2008-05-31 02:51:13 +00:00
%files devel
%{_libdir}/libply.so
%{_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 core-libs
%{_libdir}/libply.so.*
%{_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
2023-12-22 16:54:28 +00:00
%{_libdir}/plymouth/label-freetype.so
%{_libdir}/plymouth/label-pango.so
%files plugin-script
%{_libdir}/plymouth/script.so
%files plugin-fade-throbber
%{_libdir}/plymouth/fade-throbber.so
2008-05-31 02:51:13 +00:00
%files plugin-space-flares
%{_libdir}/plymouth/space-flares.so
%files plugin-two-step
%{_libdir}/plymouth/two-step.so
%if ! 0%{?rhel}
%files theme-charge
%{_datadir}/plymouth/themes/charge
%endif
%files theme-fade-in
%{_datadir}/plymouth/themes/fade-in
2009-08-11 17:56:49 +00:00
%files theme-script
%{_datadir}/plymouth/themes/script
%files theme-solar
%{_datadir}/plymouth/themes/solar
%files theme-spinfinity
%{_datadir}/plymouth/themes/spinfinity
%files theme-spinner
# bgrt is a variant of spinner with different settings in its .plymouth file
%{_datadir}/plymouth/themes/bgrt
%{_datadir}/plymouth/themes/spinner
2009-08-11 17:56:49 +00:00
%files system-theme
2008-05-31 02:51:13 +00:00
%changelog
2023-12-22 16:54:28 +00:00
%autochangelog