Summary: Graphical Boot Animation and Logger Name: plymouth Version: 24.004.60 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 BuildRequires: meson BuildRequires: system-logos BuildRequires: gcc libtool git BuildRequires: pkgconfig(libdrm) BuildRequires: pkgconfig(libevdev) BuildRequires: pkgconfig(libudev) BuildRequires: pkgconfig(xkeyboard-config) 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 BuildRequires: gettext-devel BuildRequires: intltool # for /usr/bin/systemd-tty-ask-password-agent BuildRequires: systemd # for _unitdir macro BuildRequires: systemd-rpm-macros Requires: %{name}-core-libs = %{version}-%{release} Requires: %{name}-scripts = %{version}-%{release} # For keyboard layouts Requires: xkeyboard-config Suggests: logrotate %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: %{name}-graphics-libs = %{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} %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 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. %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 %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 theme-script Summary: Plymouth "Script" plugin Requires: %{name}-plugin-script = %{version}-%{release} Requires(post): plymouth-scripts %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. %package theme-spinner Summary: Plymouth "Spinner" theme Requires: %{name}-plugin-two-step = %{version}-%{release} %if 0%{?rhel} > 9 Requires: font(redhattextvf) font(redhatmonovf) %else Requires: font(cantarell) font(cantarelllight) %endif Requires(post): plymouth-scripts Provides: plymouth(system-theme) = %{version}-%{release} %description theme-spinner This package contains the "spinner" boot splash theme for Plymouth. It features a small spinner on a dark background. %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 %build %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 %install %meson_install %find_lang %{name} find $RPM_BUILD_ROOT -name '*.la' -delete 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 # add in the watermark to spinner and bgrt (cd $RPM_BUILD_ROOT%{_datadir}/plymouth/themes/spinner; ln -sf ../../../pixmaps/fedora-gdm-logo.png watermark.png) %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/ if [ $1 -eq 0 ]; then if [ "$(%{_sbindir}/plymouth-set-default-theme)" == "solar" ]; then %{_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 %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 %doc AUTHORS README.md %dir %{_datadir}/plymouth %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 %config(noreplace) %{_sysconfdir}/logrotate.d/bootlog %{_sbindir}/plymouthd %{_libexecdir}/plymouth/plymouthd-fd-escrow %{_bindir}/plymouth %{_libdir}/plymouth/details.so %{_libdir}/plymouth/text.so %{_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}/spool/plymouth %{_mandir}/man?/* %ghost %verify(not mode) %{_localstatedir}/lib/plymouth/boot-duration %{_unitdir}/ %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 %{_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 %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 %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 %files system-theme %changelog %autochangelog