Git-Url:
http://git.frugalware.org/gitweb/gitweb.cgi?p=kernel-rt.git;a=commitdiff;h=58824be3c470c6cd97bf631b9578439fd0308487
commit 58824be3c470c6cd97bf631b9578439fd0308487
Author: crazy <[EMAIL PROTECTED]>
Date: Sat Nov 3 18:15:41 2007 +0100
kernel-rt-2.6.23-1-i686
* added install file
diff --git a/source/base-extra/kernel-rt/kernel-rt.install
b/source/base-extra/kernel-rt/kernel-rt.install
new file mode 100644
index 0000000..088fe56
--- /dev/null
+++ b/source/base-extra/kernel-rt/kernel-rt.install
@@ -0,0 +1,83 @@
+grub_convert()
+{
+ disk=`echo $1|sed 's/[0-9]*$//'`
+ partnum=`echo $1|sed 's|/dev/[a-z]*||'`
+ grubdisk=`grep $disk /boot/grub/device.map |sed 's/(\(.*\))\t.*/\1/'`
+ echo "($grubdisk,$(($partnum-1)))"
+}
+
+bootdev=`df /boot|grep ^/dev|tr -s ' '|cut -d ' ' -f 1`
+grubbootdev=`grub_convert $bootdev`
+rootdev=`df /|grep ^/dev|tr -s ' '|cut -d ' ' -f 1`
+
+# hack for /boot
+if [ "`df /boot|grep ^/dev|tr -s ' '|cut -d ' ' -f 1`" = \
+ "`df /|grep ^/dev|tr -s ' '|cut -d ' ' -f 1`" ]; then
+ bootstring=/boot
+fi
+
+#remove $1 kernel patchset
+rmgr()
+ {
+ MENU="/boot/grub/menu.lst"
+ if [ -e $MENU ]; then
+ echo "INFO: Removing kernel-$1 entries from grub menu.lst"
+ # grep 2 menu.lst ! $1
+ grep -v $1 $MENU >> /tmp/.menu.lst
+ ## backup the menu.lst, who knows :p
+ mv -f $MENU $MENU.old
+ ## mv the tmpMENU without our $patchset to menu.lst
+ mv -f /tmp/.menu.lst $MENU
+ else
+ echo "Cannot remove the kernel entry from your menu.lst :(. Please remove
the entry manually."
+ fi
+}
+
+# arg 1: the new package version
+post_install()
+{
+ kernelver=`ls /boot/vmlinuz-*-rt-fw*|sed 's|/boot/vmlinuz-||'`
+
+ if ! [ -e /boot/vmlinuz-rt ]; then
+ cd /boot
+ ln -sf vmlinuz-$kernelver vmlinuz-rt
+ ln -sf config-$kernelver config-rt
+ ln -sf System.map-$kernelver System.map-rt
+ fi
+ if [ -e /boot/grub/menu.lst ]; then
+ if ! grep -q "Frugalware.*Real-Time" /boot/grub/menu.lst; then
+ echo >>/boot/grub/menu.lst
+ echo "title `cat /etc/frugalware-release` Real-Time -
$kernelver" >>/boot/grub/menu.lst
+ echo " kernel $grubbootdev$bootstring/vmlinuz-rt ro
quiet root=$rootdev vga=791" >>/boot/grub/menu.lst
+ fi
+ fi
+
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+post_upgrade()
+{
+ fwver=`cat /etc/frugalware-release|sed 's/Frugalware \(.*\) (.*)/\1/'`
+ post_install $1
+ [ -e /boot/grub/menu.lst ] && \
+ sed -i "s/^\(title Frugalware $fwver (.*) Real-Time -\) [^
]*$/\1 $kernelver/" /boot/grub/menu.lst
+}
+
+
+post_remove()
+{
+ if [ -L /boot/vmlinuz-rt ]; then
+ cd /boot
+ rm vmlinuz-rt
+ rm config-rt
+ rm System.map-rt
+ fi
+ rmgr "rt"
+}
+
+op=$1
+shift
+
+$op $*
+
_______________________________________________
Frugalware-git mailing list
[email protected]
http://frugalware.org/mailman/listinfo/frugalware-git