aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile2
-rw-r--r--scripts/Makefile2
-rwxr-xr-xscripts/make-boot-splash45
-rwxr-xr-xscripts/make-boot-splash-raw49
4 files changed, 54 insertions, 44 deletions
diff --git a/Makefile b/Makefile
index 93c6616..3f4b051 100644
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,5 @@
NAME=bootsplash
-VERSION := 3.2.2
+VERSION := 3.2.3
SUBDIRS=scripts fb fbmngplay fbtruetype splash po
FILES=$(SUBDIRS) Makefile bootsplash.spec ChangeLog README
diff --git a/scripts/Makefile b/scripts/Makefile
index aab60d6..44686b0 100644
--- a/scripts/Makefile
+++ b/scripts/Makefile
@@ -1,5 +1,5 @@
PL=remove-boot-splash
-SH=make-boot-splash rewritejpeg switch-themes remove-theme
+SH=make-boot-splash make-boot-splash-raw rewritejpeg switch-themes remove-theme
SBIN=splash.sh bootanim
SYS=bootsplash.sysconfig
diff --git a/scripts/make-boot-splash b/scripts/make-boot-splash
index 0575cb2..22b1a03 100755
--- a/scripts/make-boot-splash
+++ b/scripts/make-boot-splash
@@ -6,7 +6,6 @@
# $Id$
: ${splash_dir=/usr/share/bootsplash}
-: ${splash_cfg=/etc/bootsplash}
[[ -f /etc/sysconfig/bootsplash ]] && source /etc/sysconfig/bootsplash
[[ -z $THEME ]] && THEME=Mandriva
@@ -32,48 +31,10 @@ else
exit 1
fi
-if [[ -f $splash_cfg/themes/$THEME/config/bootsplash-$resolution.cfg ]];then
- config=$splash_cfg/themes/$THEME/config/bootsplash-$resolution.cfg
-fi
-
-if [[ -f $splash_dir/themes/$THEME/lilo/message ]];then
- cp -f $splash_dir/themes/$THEME/lilo/message /boot/message-graphic
-fi
+rm -f $splash_dir/themes/current
+ln -s $THEME $splash_dir/themes/current
-if [[ -f $splash_dir/themes/$THEME/grub/splash.xpm.gz && -d /boot/grub/ ]];then
- rm -f /boot/grub/splash.xpm.gz
- cp -f $splash_dir/themes/$THEME/grub/splash.xpm.gz /boot/grub/splash.xpm.gz
-fi
-
-if [[ -z $config ]];then
- echo "Can't find a config file for resolution $resolution";
- exit 1;
-fi
-
-# warly: we cannot use file command which is in /usr/bin/
-# initrd_type=`zcat /boot/initrd-2.6.14-2mdk.ramfs.img | file -`
-
-if `/bin/zcat $initrd_file 2> /dev/null | /bin/cpio -t &> /dev/null`; then
- tmp_dir=`mktemp -d`
- pushd $tmp_dir &> /dev/null
- /bin/zcat $initrd_file 2>/dev/null | /bin/cpio -id 2>/dev/null
- if [[ -x /sbin/splash ]]; then
- /sbin/splash -s -f $config > $tmp_dir/bootsplash
- else
- if [[ -f $tmp_dir/bootsplash ]]; then
- rm -f $tmp_dir/bootsplash
- fi
- fi
- /bin/find . -print | cpio --quiet -c -o 2> /dev/null | gzip -c > $initrd_file
- popd &> /dev/null
- rm -rf $tmp_dir
-else
- $splash_dir/scripts/remove-boot-splash $initrd_file
-
- if [[ -x /sbin/splash ]]; then
- /sbin/splash -s -f $config >> $initrd_file
- fi
-fi
+$splash_dir/scripts/add-boot-splash-raw $initrd_file $resolution $THEME || exit 1
if [ -z "$DURING_INSTALL" ]; then
$splash_dir/scripts/switch-themes -u
diff --git a/scripts/make-boot-splash-raw b/scripts/make-boot-splash-raw
new file mode 100755
index 0000000..e453b55
--- /dev/null
+++ b/scripts/make-boot-splash-raw
@@ -0,0 +1,49 @@
+#!/bin/sh
+# -*- Mode: shell-script -*-
+# Copyright (C) 2002 by Chmouel Boudjnah <chmouel@mandrakesoft.com>
+# Redistribution of this file is permitted under the terms of the GNU
+# Public License (GPL)
+# $Id$
+
+: ${splash_dir=/usr/share/bootsplash}
+: ${splash_cfg=/etc/bootsplash}
+
+[ $# = 3 ] || { echo "usage: $0 <initrd> <resolution> <theme>"; exit 1; }
+
+initrd_file=$1
+resolution=$2
+THEME=$3
+
+if [[ -f $splash_cfg/themes/$THEME/config/bootsplash-$resolution.cfg ]];then
+ config=$splash_cfg/themes/$THEME/config/bootsplash-$resolution.cfg
+fi
+
+if [[ -z $config ]];then
+ echo "Can't find a config file for resolution $resolution";
+ exit 1;
+fi
+
+# warly: we cannot use file command which is in /usr/bin/
+# initrd_type=`zcat /boot/initrd-2.6.14-2mdk.ramfs.img | file -`
+
+if `/bin/zcat $initrd_file 2> /dev/null | /bin/cpio -t &> /dev/null`; then
+ tmp_dir=`mktemp -d`
+ pushd $tmp_dir &> /dev/null
+ /bin/zcat $initrd_file 2>/dev/null | /bin/cpio -id 2>/dev/null
+ if [[ -x /sbin/splash ]]; then
+ /sbin/splash -s -f $config > $tmp_dir/bootsplash
+ else
+ if [[ -f $tmp_dir/bootsplash ]]; then
+ rm -f $tmp_dir/bootsplash
+ fi
+ fi
+ /bin/find . -print | cpio --quiet -c -o 2> /dev/null | gzip -c > $initrd_file
+ popd &> /dev/null
+ rm -rf $tmp_dir
+else
+ $splash_dir/scripts/remove-boot-splash $initrd_file
+
+ if [[ -x /sbin/splash ]]; then
+ /sbin/splash -s -f $config >> $initrd_file
+ fi
+fi