1
0
forked from rpms/plymouth

Merge newer F18 release into rawhide

This commit is contained in:
Peter Robinson 2013-02-21 16:27:38 +00:00
commit d77cadb15c
9 changed files with 213 additions and 65 deletions

1
.gitignore vendored
View File

@ -6,3 +6,4 @@ plymouth-0.8.4.tar.bz2
/plymouth-0.8.6.1.tar.bz2
/plymouth-0.8.6.2.tar.bz2
/plymouth-0.8.7.tar.bz2
/plymouth-0.8.8.tar.bz2

137
fix-crash.patch Normal file
View File

@ -0,0 +1,137 @@
From 6ccedf7b6ecdc8314ed97355cfe5499fffb13a1e Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Thu, 1 Nov 2012 17:04:33 -0400
Subject: [PATCH 1/3] main: if deactivate when already deactivated return
immediately
We were trying to ignore second deactivate requests, but
were instead crashing because we're trying to use a nullified
trigger.
This commit makes sure things don't go crashy when a user
does "plymouth deactivate" on an already deactivated plymouthd.
---
src/main.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/src/main.c b/src/main.c
index 88e5002..60ca28f 100644
--- a/src/main.c
+++ b/src/main.c
@@ -1135,7 +1135,13 @@ static void
on_deactivate (state_t *state,
ply_trigger_t *deactivate_trigger)
{
- if ((state->deactivate_trigger != NULL) || state->is_inactive)
+ if (state->is_inactive)
+ {
+ ply_trigger_pull (deactivate_trigger, NULL);
+ return;
+ }
+
+ if (state->deactivate_trigger != NULL)
{
ply_trigger_add_handler (state->deactivate_trigger,
(ply_trigger_handler_t)
--
1.7.12.1
From b3548ebaf76d222f56d6a7b34c5940b930d47609 Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Thu, 1 Nov 2012 17:16:07 -0400
Subject: [PATCH 2/3] two-step: don't update progress when idle
We've already reach a state where we aren't drawing anymore, etc,
so don't update progress and potentially fire off animations
that won't be seen.
---
src/plugins/splash/two-step/plugin.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/plugins/splash/two-step/plugin.c b/src/plugins/splash/two-step/plugin.c
index 2998beb..541a108 100644
--- a/src/plugins/splash/two-step/plugin.c
+++ b/src/plugins/splash/two-step/plugin.c
@@ -1067,6 +1067,9 @@ on_boot_progress (ply_boot_splash_plugin_t *plugin,
if (plugin->state != PLY_BOOT_SPLASH_DISPLAY_NORMAL)
return;
+ if (plugin->is_idle)
+ return;
+
if (percent_done >= SHOW_ANIMATION_PERCENT)
{
if (plugin->stop_trigger == NULL)
--
1.7.12.1
From a6129abfc527ac247685d80fc5c20144be1badca Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Fri, 2 Nov 2012 17:26:41 -0400
Subject: [PATCH 3/3] main: make plymouth show-splash idempotent
plymouth show-splash causes hairy things, that should only happen once,
like activating renderers to happen.
This commit makes subsequent show-splash calls be no-ops.
---
src/main.c | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/src/main.c b/src/main.c
index 60ca28f..ff06163 100644
--- a/src/main.c
+++ b/src/main.c
@@ -113,6 +113,7 @@ typedef struct
uint32_t should_be_attached : 1;
uint32_t should_retain_splash : 1;
uint32_t is_inactive : 1;
+ uint32_t is_shown : 1;
uint32_t should_force_details : 1;
char *kernel_console_tty;
@@ -871,6 +872,12 @@ on_show_splash (state_t *state)
{
bool has_display;
+ if (state->is_shown)
+ {
+ ply_trace ("show splash called while already shown");
+ return;
+ }
+
if (state->is_inactive)
{
ply_trace ("show splash called while inactive");
@@ -884,6 +891,8 @@ on_show_splash (state_t *state)
return;
}
+ state->is_shown = true;
+
check_for_consoles (state, state->default_tty, true);
has_display = ply_list_get_length (state->pixel_displays) > 0 ||
@@ -1012,6 +1021,8 @@ dump_details_and_quit_splash (state_t *state)
if (state->boot_splash != NULL)
ply_boot_splash_hide (state->boot_splash);
+ state->is_shown = false;
+
quit_splash (state);
}
@@ -1116,6 +1127,8 @@ on_boot_splash_idle (state_t *state)
ply_renderer_deactivate (state->renderer);
if (state->boot_splash != NULL)
ply_boot_splash_hide (state->boot_splash);
+
+ state->is_shown = false;
}
ply_trace ("quitting splash");
--
1.7.12.1

45
fix-fed-up.patch Normal file
View File

@ -0,0 +1,45 @@
From a9703fb6e3112bbf63ae0f1b0d4d1b5c55befd32 Mon Sep 17 00:00:00 2001
From: Will Woods <wwoods@redhat.com>
Date: Thu, 29 Nov 2012 10:25:03 -0500
Subject: [PATCH] populate-initrd: If PLYMOUTH_THEME_NAME is set, write it
into plymouthd.conf
You can set PLYMOUTH_THEME_NAME when building initramfs to get a
different theme into initramfs, but this doesn't change the default
theme, so the resulting initramfs won't actually use the theme we
installed.
This patch makes plymouth-populate-initrd rewrite the 'Theme=XXX' line
in plymouthd.conf, so plymouth will use the theme we install.
---
scripts/plymouth-populate-initrd.in | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/scripts/plymouth-populate-initrd.in b/scripts/plymouth-populate-initrd.in
index 8d1eec0..d901a9b 100755
--- a/scripts/plymouth-populate-initrd.in
+++ b/scripts/plymouth-populate-initrd.in
@@ -8,6 +8,7 @@
[ -z "$PLYMOUTH_DATADIR" ] && PLYMOUTH_DATADIR="@PLYMOUTH_DATADIR@"
[ -z "$PLYMOUTH_PLUGIN_PATH" ] && PLYMOUTH_PLUGIN_PATH="$(plymouth --get-splash-plugin-path)"
[ -z "$PLYMOUTH_LOGO_FILE" ] && PLYMOUTH_LOGO_FILE="@PLYMOUTH_LOGO_FILE@"
+[ -n "$PLYMOUTH_THEME_NAME" ] && THEME_OVERRIDE=1
[ -z "$PLYMOUTH_THEME_NAME" ] && PLYMOUTH_THEME_NAME=$(plymouth-set-default-theme)
[ -z "$PLYMOUTH_CONFDIR" ] && PLYMOUTH_CONFDIR="@PLYMOUTH_CONF_DIR@"
[ -z "$PLYMOUTH_POLICYDIR" ] && PLYMOUTH_POLICYDIR="@PLYMOUTH_POLICY_DIR@"
@@ -388,6 +389,12 @@ if [ -z "$PLYMOUTH_THEME_NAME" ]; then
exit 1
fi
+if [ $THEME_OVERRIDE ]; then
+ conf=$INITRDDIR/${PLYMOUTH_CONFDIR}/plymouthd.conf
+ echo "modifying plymouthd.conf: Theme=$PLYMOUTH_THEME_NAME" > /dev/stderr
+ sed -i "s/^ *Theme *=.*/# theme modified by plymouth-populate-initrd\nTheme=$PLYMOUTH_THEME_NAME/" $conf
+fi
+
PLYMOUTH_MODULE_NAME=$(grep "ModuleName *= *" ${PLYMOUTH_DATADIR}/plymouth/themes/${PLYMOUTH_THEME_NAME}/${PLYMOUTH_THEME_NAME}.plymouth | sed 's/ModuleName *= *//')
if [ ! -f ${PLYMOUTH_PLUGIN_PATH}/${PLYMOUTH_MODULE_NAME}.so ]; then
--
1.7.11.7

View File

@ -1,34 +0,0 @@
From 502d5951aa5b8ece34fa21032d513254ef146f69 Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Tue, 1 Mar 2011 17:26:16 -0500
Subject: [PATCH] terminal: apply terminal settings immediately
---
src/libply-splash-core/ply-terminal.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/libply-splash-core/ply-terminal.c b/src/libply-splash-core/ply-terminal.c
index 3f126bc..3e6e8cc 100644
--- a/src/libply-splash-core/ply-terminal.c
+++ b/src/libply-splash-core/ply-terminal.c
@@ -272,7 +272,7 @@ ply_terminal_set_buffered_input (ply_terminal_t *terminal)
term_attributes.c_oflag |= OPOST;
term_attributes.c_lflag |= ECHO | ICANON | ISIG | IEXTEN;
- if (tcsetattr (terminal->fd, TCSAFLUSH, &term_attributes) != 0)
+ if (tcsetattr (terminal->fd, TCSANOW, &term_attributes) != 0)
return false;
terminal->is_unbuffered = false;
@@ -280,7 +280,7 @@ ply_terminal_set_buffered_input (ply_terminal_t *terminal)
return true;
}
- if (tcsetattr (terminal->fd, TCSAFLUSH, &terminal->original_term_attributes) != 0)
+ if (tcsetattr (terminal->fd, TCSANOW, &terminal->original_term_attributes) != 0)
return false;
terminal->is_unbuffered = false;
--
1.7.4.1

View File

@ -1,12 +0,0 @@
diff -up plymouth-0.8.6.2/systemd-units/plymouth-start.service.in.dma plymouth-0.8.6.2/systemd-units/plymouth-start.service.in
--- plymouth-0.8.6.2/systemd-units/plymouth-start.service.in.dma 2012-08-21 09:11:22.906284758 +1000
+++ plymouth-0.8.6.2/systemd-units/plymouth-start.service.in 2012-08-21 09:11:32.707345054 +1000
@@ -2,7 +2,7 @@
Description=Show Plymouth Boot Screen
DefaultDependencies=no
Wants=systemd-ask-password-plymouth.path
-After=systemd-vconsole-setup.service systemd-udev-settle.service
+After=systemd-vconsole-setup.service systemd-udev-trigger.service
Before=systemd-ask-password-plymouth.service
ConditionKernelCommandLine=!plymouth.enable=0
ConditionPathExists=!@plymouthruntimedir@/pid

View File

@ -1,2 +0,0 @@
#!/bin/sh
echo "plymouth-set-default-plugin has been deprecated by plymouth-set-default-theme"

View File

@ -1,2 +0,0 @@
#!/bin/bash
/sbin/new-kernel-pkg --package kernel --mkinitrd --dracut --depmod --install $(uname -r)

View File

@ -5,15 +5,13 @@
Summary: Graphical Boot Animation and Logger
Name: plymouth
Version: 0.8.7
Release: 2%{?dist}
Version: 0.8.8
Release: 6%{?dist}
License: GPLv2+
Group: System Environment/Base
Source0: http://freedesktop.org/software/plymouth/releases/%{name}-%{version}.tar.bz2
Source1: boot-duration
Source2: charge.plymouth
Source3: plymouth-set-default-plugin
Source4: plymouth-update-initrd
URL: http://www.freedesktop.org/wiki/Software/Plymouth
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@ -33,6 +31,9 @@ Obsoletes: plymouth-theme-pulser < 0.7.0-0.2009.05.08.2
Obsoletes: plymouth-gdm-hooks < 0.8.4-0.20101119.4
Obsoletes: plymouth-utils < 0.8.4-0.20101119.4
Patch0: fix-crash.patch
Patch1: fix-fed-up.patch
%description
Plymouth provides an attractive graphical boot animation in
place of the text messages that normally get shown. Text
@ -240,6 +241,8 @@ Plymouth. It features a small spinner on a dark background.
%prep
%setup -q
%patch0 -p1 -b .fix-crash
%patch1 -p1 -b .fix-fed-up
# Change the default theme
sed -i -e 's/fade-in/charge/g' src/plymouthd.defaults
@ -280,16 +283,9 @@ 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
# Override plymouth-update-initrd to work dracut or mkinitrd
cp -f $RPM_SOURCE_DIR/plymouth-update-initrd $RPM_BUILD_ROOT%{_libexecdir}/plymouth/plymouth-update-initrd
# Drop glow, it's not very Fedora-y
rm -rf $RPM_BUILD_ROOT%{_datadir}/plymouth/themes/glow
# Add compat script for upgrades
cp $RPM_SOURCE_DIR/plymouth-set-default-plugin $RPM_BUILD_ROOT%{_sbindir}
chmod +x $RPM_BUILD_ROOT%{_sbindir}/plymouth-set-default-plugin
%clean
rm -rf $RPM_BUILD_ROOT
@ -427,7 +423,6 @@ fi
%files scripts
%defattr(-, root, root)
%{_sbindir}/plymouth-set-default-theme
%{_sbindir}/plymouth-set-default-plugin
%{_libexecdir}/plymouth/plymouth-update-initrd
%{_libexecdir}/plymouth/plymouth-generate-initrd
%{_libexecdir}/plymouth/plymouth-populate-initrd
@ -504,8 +499,28 @@ fi
%defattr(-, root, root)
%changelog
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8.7-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Thu Feb 21 2013 Peter Robinson <pbrobinson@fedoraproject.org> 0.8.8-6
- Merge newer F18 release into rawhide
* Thu Dec 13 2012 Ray Strode <rstrode@redhat.com> 0.8.8-5
- Ensure fedup gets right splash screen
Related: #879295
* Thu Nov 15 2012 Ray Strode <rstrode@redhat.com> 0.8.8-4
- Drop set-default-plugin compat script
- Just use upstream update-initrd
* Fri Nov 02 2012 Ray Strode <rstrode@redhat.com> 0.8.8-3
- More boot blocking fixes
Related: #870695
* Thu Nov 01 2012 Ray Strode <rstrode@redhat.com> 0.8.8-2
- Fix crash when deactivating multiple times
Related: #870695
* Fri Oct 26 2012 Ray Strode <rstrode@redhat.com> 0.8.8-1
- Latest upstream release
- includes systemd fixes and system update fixes
* Tue Aug 21 2012 Ray Strode <rstrode@redhat.com> 0.8.7-1
- Latest upstream release

View File

@ -1 +1 @@
9f2ac7a9982198d32a8e083d5d8fb4cb plymouth-0.8.7.tar.bz2
38f5e613e5ab17806b950cee2d0d0d4e plymouth-0.8.8.tar.bz2