forked from rpms/plymouth
Put /etc/system-release on the initrd, and read that instead of hardcoding
'Fedora 10'.
This commit is contained in:
parent
46974c014a
commit
ac5e8555ae
@ -1,7 +1,7 @@
|
|||||||
diff -up plymouth-0.5.0/src/libplybootsplash/ply-text-pulser.c.jx plymouth-0.5.0/src/libplybootsplash/ply-text-pulser.c
|
diff -up plymouth-0.6.0/src/libplybootsplash/ply-text-pulser.c.textbar plymouth-0.6.0/src/libplybootsplash/ply-text-pulser.c
|
||||||
--- plymouth-0.5.0/src/libplybootsplash/ply-text-pulser.c.jx 2008-06-30 17:51:25.000000000 -0400
|
--- plymouth-0.6.0/src/libplybootsplash/ply-text-pulser.c.textbar 2008-08-19 15:14:04.000000000 -0400
|
||||||
+++ plymouth-0.5.0/src/libplybootsplash/ply-text-pulser.c 2008-08-12 12:44:42.000000000 -0400
|
+++ plymouth-0.6.0/src/libplybootsplash/ply-text-pulser.c 2008-09-05 15:21:28.000000000 -0400
|
||||||
@@ -50,7 +50,7 @@
|
@@ -50,11 +50,14 @@
|
||||||
#include <linux/kd.h>
|
#include <linux/kd.h>
|
||||||
|
|
||||||
#ifndef FRAMES_PER_SECOND
|
#ifndef FRAMES_PER_SECOND
|
||||||
@ -10,7 +10,14 @@ diff -up plymouth-0.5.0/src/libplybootsplash/ply-text-pulser.c.jx plymouth-0.5.0
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define NUMBER_OF_INDICATOR_COLUMNS 6
|
#define NUMBER_OF_INDICATOR_COLUMNS 6
|
||||||
@@ -75,13 +75,11 @@ ply_text_pulser_new (void)
|
|
||||||
|
+#define OS_STRING " "
|
||||||
|
+char *os_string = OS_STRING;
|
||||||
|
+
|
||||||
|
struct _ply_text_pulser
|
||||||
|
{
|
||||||
|
ply_event_loop_t *loop;
|
||||||
|
@@ -75,13 +78,11 @@ ply_text_pulser_new (void)
|
||||||
|
|
||||||
pulser = calloc (1, sizeof (ply_text_pulser_t));
|
pulser = calloc (1, sizeof (ply_text_pulser_t));
|
||||||
|
|
||||||
@ -26,11 +33,10 @@ diff -up plymouth-0.5.0/src/libplybootsplash/ply-text-pulser.c.jx plymouth-0.5.0
|
|||||||
|
|
||||||
return pulser;
|
return pulser;
|
||||||
}
|
}
|
||||||
@@ -95,42 +93,71 @@ ply_text_pulser_free (ply_text_pulser_t
|
@@ -96,41 +97,95 @@ ply_text_pulser_free (ply_text_pulser_t
|
||||||
free (pulser);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
-static void
|
static void
|
||||||
-draw_trough (ply_text_pulser_t *pulser,
|
-draw_trough (ply_text_pulser_t *pulser,
|
||||||
- int column,
|
- int column,
|
||||||
- int row)
|
- int row)
|
||||||
@ -45,6 +51,31 @@ diff -up plymouth-0.5.0/src/libplybootsplash/ply-text-pulser.c.jx plymouth-0.5.0
|
|||||||
- memset (bytes, ' ', pulser->number_of_columns);
|
- memset (bytes, ' ', pulser->number_of_columns);
|
||||||
- write (STDOUT_FILENO, bytes, pulser->number_of_columns);
|
- write (STDOUT_FILENO, bytes, pulser->number_of_columns);
|
||||||
- free (bytes);
|
- free (bytes);
|
||||||
|
+get_os_string (void)
|
||||||
|
+{
|
||||||
|
+ int fd;
|
||||||
|
+ char *buf, *pos, *pos2;
|
||||||
|
+ struct stat sbuf;
|
||||||
|
+
|
||||||
|
+ fd = open("/etc/system-release", O_RDONLY);
|
||||||
|
+ if (fd == -1) return;
|
||||||
|
+ if (fstat(fd, &sbuf) == -1) return;
|
||||||
|
+ buf = calloc(sbuf.st_size + 1, sizeof(char));
|
||||||
|
+ read(fd, buf, sbuf.st_size);
|
||||||
|
+ close(fd);
|
||||||
|
+
|
||||||
|
+ pos = strstr(buf, " release ");
|
||||||
|
+ if (!pos) goto out;
|
||||||
|
+ pos2 = strstr(pos, " (");
|
||||||
|
+ if (!pos2) goto out;
|
||||||
|
+ *pos = '\0';
|
||||||
|
+ pos+= 9;
|
||||||
|
+ *pos2 = '\0';
|
||||||
|
+ asprintf(&os_string," %s %s", buf, pos);
|
||||||
|
+out:
|
||||||
|
+ free(buf);
|
||||||
|
+}
|
||||||
|
+
|
||||||
+/* Hi Will! */
|
+/* Hi Will! */
|
||||||
+static double
|
+static double
|
||||||
+woodsify(double time, double estimate)
|
+woodsify(double time, double estimate)
|
||||||
@ -53,14 +84,13 @@ diff -up plymouth-0.5.0/src/libplybootsplash/ply-text-pulser.c.jx plymouth-0.5.0
|
|||||||
}
|
}
|
||||||
|
|
||||||
+#define STARTUP_TIME 20.0
|
+#define STARTUP_TIME 20.0
|
||||||
+#define OS_STRING " Fedora 10"
|
|
||||||
+
|
+
|
||||||
static void
|
static void
|
||||||
animate_at_time (ply_text_pulser_t *pulser,
|
animate_at_time (ply_text_pulser_t *pulser,
|
||||||
double time)
|
double time)
|
||||||
{
|
{
|
||||||
- ply_window_set_mode (pulser->window, PLY_WINDOW_MODE_TEXT);
|
- ply_window_set_mode (pulser->window, PLY_WINDOW_MODE_TEXT);
|
||||||
+ int i, width = pulser->number_of_columns - 2 - strlen(OS_STRING);
|
+ int i, width = pulser->number_of_columns - 2 - strlen(os_string);
|
||||||
+ double brown_fraction, blue_fraction, white_fraction;
|
+ double brown_fraction, blue_fraction, white_fraction;
|
||||||
+
|
+
|
||||||
+ ply_window_set_mode (pulser->window, PLY_WINDOW_MODE_TEXT);
|
+ ply_window_set_mode (pulser->window, PLY_WINDOW_MODE_TEXT);
|
||||||
@ -88,6 +118,8 @@ diff -up plymouth-0.5.0/src/libplybootsplash/ply-text-pulser.c.jx plymouth-0.5.0
|
|||||||
- draw_trough (pulser, pulser->column, pulser->row);
|
- draw_trough (pulser, pulser->column, pulser->row);
|
||||||
+ write (STDOUT_FILENO, " ", strlen (" "));
|
+ write (STDOUT_FILENO, " ", strlen (" "));
|
||||||
+ }
|
+ }
|
||||||
|
+
|
||||||
|
+ ply_window_set_background_color (pulser->window, PLY_WINDOW_COLOR_BLACK);
|
||||||
|
|
||||||
- ply_window_set_text_cursor_position (pulser->window,
|
- ply_window_set_text_cursor_position (pulser->window,
|
||||||
- pulser->column + pulser->spinner_position,
|
- pulser->column + pulser->spinner_position,
|
||||||
@ -100,8 +132,6 @@ diff -up plymouth-0.5.0/src/libplybootsplash/ply-text-pulser.c.jx plymouth-0.5.0
|
|||||||
- ply_window_set_background_color (pulser->window, PLY_WINDOW_COLOR_GREEN);
|
- ply_window_set_background_color (pulser->window, PLY_WINDOW_COLOR_GREEN);
|
||||||
- write (STDOUT_FILENO, " ", strlen (" "));
|
- write (STDOUT_FILENO, " ", strlen (" "));
|
||||||
- ply_window_set_background_color (pulser->window, PLY_WINDOW_COLOR_DEFAULT);
|
- ply_window_set_background_color (pulser->window, PLY_WINDOW_COLOR_DEFAULT);
|
||||||
+ ply_window_set_background_color (pulser->window, PLY_WINDOW_COLOR_BLACK);
|
|
||||||
+
|
|
||||||
+ if (brown_fraction > 0.5) {
|
+ if (brown_fraction > 0.5) {
|
||||||
+ if (white_fraction > 0.875)
|
+ if (white_fraction > 0.875)
|
||||||
+ ply_window_set_foreground_color (pulser->window,
|
+ ply_window_set_foreground_color (pulser->window,
|
||||||
@ -118,7 +148,7 @@ diff -up plymouth-0.5.0/src/libplybootsplash/ply-text-pulser.c.jx plymouth-0.5.0
|
|||||||
+ pulser->row);
|
+ pulser->row);
|
||||||
+
|
+
|
||||||
+
|
+
|
||||||
+ write (STDOUT_FILENO, OS_STRING, strlen(OS_STRING));
|
+ write (STDOUT_FILENO, os_string, strlen(os_string));
|
||||||
+
|
+
|
||||||
+ ply_window_set_foreground_color (pulser->window,
|
+ ply_window_set_foreground_color (pulser->window,
|
||||||
+ PLY_WINDOW_COLOR_DEFAULT);
|
+ PLY_WINDOW_COLOR_DEFAULT);
|
||||||
@ -126,7 +156,7 @@ diff -up plymouth-0.5.0/src/libplybootsplash/ply-text-pulser.c.jx plymouth-0.5.0
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@@ -161,9 +188,7 @@ on_timeout (ply_text_pulser_t *pulser)
|
@@ -161,9 +216,7 @@ on_timeout (ply_text_pulser_t *pulser)
|
||||||
bool
|
bool
|
||||||
ply_text_pulser_start (ply_text_pulser_t *pulser,
|
ply_text_pulser_start (ply_text_pulser_t *pulser,
|
||||||
ply_event_loop_t *loop,
|
ply_event_loop_t *loop,
|
||||||
@ -137,7 +167,7 @@ diff -up plymouth-0.5.0/src/libplybootsplash/ply-text-pulser.c.jx plymouth-0.5.0
|
|||||||
{
|
{
|
||||||
assert (pulser != NULL);
|
assert (pulser != NULL);
|
||||||
assert (pulser->loop == NULL);
|
assert (pulser->loop == NULL);
|
||||||
@@ -171,8 +196,10 @@ ply_text_pulser_start (ply_text_pulser_t
|
@@ -171,10 +224,14 @@ ply_text_pulser_start (ply_text_pulser_t
|
||||||
pulser->loop = loop;
|
pulser->loop = loop;
|
||||||
pulser->window = window;
|
pulser->window = window;
|
||||||
|
|
||||||
@ -149,10 +179,14 @@ diff -up plymouth-0.5.0/src/libplybootsplash/ply-text-pulser.c.jx plymouth-0.5.0
|
|||||||
+ pulser->column = 2;
|
+ pulser->column = 2;
|
||||||
|
|
||||||
pulser->start_time = ply_get_timestamp ();
|
pulser->start_time = ply_get_timestamp ();
|
||||||
|
+
|
||||||
|
+ get_os_string ();
|
||||||
|
|
||||||
diff -up plymouth-0.5.0/src/libplybootsplash/ply-text-pulser.h.jx plymouth-0.5.0/src/libplybootsplash/ply-text-pulser.h
|
ply_event_loop_watch_for_timeout (pulser->loop,
|
||||||
--- plymouth-0.5.0/src/libplybootsplash/ply-text-pulser.h.jx 2008-06-21 23:48:59.000000000 -0400
|
1.0 / FRAMES_PER_SECOND,
|
||||||
+++ plymouth-0.5.0/src/libplybootsplash/ply-text-pulser.h 2008-08-12 12:36:51.000000000 -0400
|
diff -up plymouth-0.6.0/src/libplybootsplash/ply-text-pulser.h.textbar plymouth-0.6.0/src/libplybootsplash/ply-text-pulser.h
|
||||||
|
--- plymouth-0.6.0/src/libplybootsplash/ply-text-pulser.h.textbar 2008-08-19 15:14:04.000000000 -0400
|
||||||
|
+++ plymouth-0.6.0/src/libplybootsplash/ply-text-pulser.h 2008-09-05 15:19:22.000000000 -0400
|
||||||
@@ -38,9 +38,7 @@ void ply_text_pulser_free (ply_text_puls
|
@@ -38,9 +38,7 @@ void ply_text_pulser_free (ply_text_puls
|
||||||
bool ply_text_pulser_load (ply_text_pulser_t *pulser);
|
bool ply_text_pulser_load (ply_text_pulser_t *pulser);
|
||||||
bool ply_text_pulser_start (ply_text_pulser_t *pulser,
|
bool ply_text_pulser_start (ply_text_pulser_t *pulser,
|
||||||
@ -164,9 +198,9 @@ diff -up plymouth-0.5.0/src/libplybootsplash/ply-text-pulser.h.jx plymouth-0.5.0
|
|||||||
void ply_text_pulser_stop (ply_text_pulser_t *pulser);
|
void ply_text_pulser_stop (ply_text_pulser_t *pulser);
|
||||||
|
|
||||||
int ply_text_pulser_get_number_of_rows (ply_text_pulser_t *pulser);
|
int ply_text_pulser_get_number_of_rows (ply_text_pulser_t *pulser);
|
||||||
diff -up plymouth-0.5.0/src/splash-plugins/text/plugin.c.jx plymouth-0.5.0/src/splash-plugins/text/plugin.c
|
diff -up plymouth-0.6.0/src/plugins/splash/text/plugin.c.textbar plymouth-0.6.0/src/plugins/splash/text/plugin.c
|
||||||
--- plymouth-0.5.0/src/plugins/splash/text/plugin.c.jx 2008-07-29 15:15:51.000000000 -0400
|
--- plymouth-0.6.0/src/plugins/splash/text/plugin.c.textbar 2008-08-27 10:57:18.000000000 -0400
|
||||||
+++ plymouth-0.5.0/src/plugins/splash/text/plugin.c 2008-08-12 12:36:51.000000000 -0400
|
+++ plymouth-0.6.0/src/plugins/splash/text/plugin.c 2008-09-05 15:19:22.000000000 -0400
|
||||||
@@ -105,28 +105,33 @@ start_animation (ply_boot_splash_plugin_
|
@@ -105,28 +105,33 @@ start_animation (ply_boot_splash_plugin_
|
||||||
assert (plugin->loop != NULL);
|
assert (plugin->loop != NULL);
|
||||||
|
|
||||||
@ -210,3 +244,14 @@ diff -up plymouth-0.5.0/src/splash-plugins/text/plugin.c.jx plymouth-0.5.0/src/s
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
diff -up plymouth-0.6.0/scripts/plymouth-populate-initrd.in.foo plymouth-0.6.0/scripts/plymouth-populate-initrd.in
|
||||||
|
--- plymouth-0.6.0/scripts/plymouth-populate-initrd.in.foo 2008-09-05 15:23:17.000000000 -0400
|
||||||
|
+++ plymouth-0.6.0/scripts/plymouth-populate-initrd.in 2008-09-05 15:23:51.000000000 -0400
|
||||||
|
@@ -60,6 +60,7 @@ inst ${BINDIR}/plymouth $INITRDDIR
|
||||||
|
inst ${LIBDIR}/plymouth/text.so $INITRDDIR
|
||||||
|
inst ${LIBDIR}/plymouth/details.so $INITRDDIR
|
||||||
|
inst ${PLYMOUTH_LOGO_FILE} $INITRDDIR
|
||||||
|
+inst /etc/system-release $INITRDDIR
|
||||||
|
mkdir -p ${INITRDDIR}${DATADIR}/plymouth
|
||||||
|
|
||||||
|
PLUGIN_NAME=$(plymouth-set-default-plugin)
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
Summary: Plymouth Graphical Boot Animation and Logger
|
Summary: Plymouth Graphical Boot Animation and Logger
|
||||||
Name: plymouth
|
Name: plymouth
|
||||||
Version: 0.6.0
|
Version: 0.6.0
|
||||||
Release: 0.2008.09.05.2%{?dist}
|
Release: 0.2008.09.05.3%{?dist}
|
||||||
License: GPLv2+
|
License: GPLv2+
|
||||||
Group: System Environment/Base
|
Group: System Environment/Base
|
||||||
Source0: http://freedesktop.org/software/plymouth/releases/%{name}-%{version}.tar.bz2
|
Source0: http://freedesktop.org/software/plymouth/releases/%{name}-%{version}.tar.bz2
|
||||||
@ -226,6 +226,9 @@ fi
|
|||||||
%{_libdir}/plymouth/spinfinity.so
|
%{_libdir}/plymouth/spinfinity.so
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Sep 5 2008 Bill Nottingham <notting@redhat.com> 0.6.0-0.2008.09.05.3
|
||||||
|
- make the text plugin use the system release info rather than a hardcoded 'Fedora 10'
|
||||||
|
|
||||||
* Fri Sep 5 2008 Ray Strode <rstrode@redhat.com> 0.5.0-0.2008.09.05.2
|
* Fri Sep 5 2008 Ray Strode <rstrode@redhat.com> 0.5.0-0.2008.09.05.2
|
||||||
- Try to support multiple serial consoles better
|
- Try to support multiple serial consoles better
|
||||||
(bug 460565)
|
(bug 460565)
|
||||||
|
Loading…
Reference in New Issue
Block a user