]> git.ipfire.org Git - people/teissler/ipfire-2.x.git/blob - src/paks/linux-xen/install.sh
Merge branch 'libsatsolver' into next
[people/teissler/ipfire-2.x.git] / src / paks / linux-xen / install.sh
1 #!/bin/bash
2 ############################################################################
3 # #
4 # This file is part of the IPFire Firewall. #
5 # #
6 # IPFire is free software; you can redistribute it and/or modify #
7 # it under the terms of the GNU General Public License as published by #
8 # the Free Software Foundation; either version 2 of the License, or #
9 # (at your option) any later version. #
10 # #
11 # IPFire is distributed in the hope that it will be useful, #
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of #
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
14 # GNU General Public License for more details. #
15 # #
16 # You should have received a copy of the GNU General Public License #
17 # along with IPFire; if not, write to the Free Software #
18 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #
19 # #
20 # Copyright (C) 2010 IPFire-Team <info@ipfire.org>. #
21 # #
22 ############################################################################
23 #
24 . /opt/pakfire/lib/functions.sh
25 extract_files
26 #
27 KVER=xxxKVERxxx
28 ROOT=`mount | grep " / " | cut -d" " -f1`
29 ROOTUUID=`blkid -c /dev/null -sUUID $ROOT | cut -d'"' -f2`
30 if [ ! -z $ROOTUUID ]; then
31 ROOT="UUID=$ROOTUUID"
32 fi
33
34 MOUNT=`grep "kernel" /boot/grub/grub.conf | tail -n 1`
35 # Nur den letzten Parameter verwenden
36 echo $MOUNT > /dev/null
37 MOUNT=$_
38 if [ ! $MOUNT == "rw" ]; then
39 MOUNT="ro"
40 fi
41
42 ENTRY=`grep "savedefault" /boot/grub/grub.conf | tail -n 1`
43 # Nur den letzten Parameter verwenden
44 echo $ENTRY > /dev/null
45 let ENTRY=$_+1
46 #
47 # backup grub.conf
48 #
49 cp /boot/grub/grub.conf /boot/grub/grub-backup-$KVER-xen.conf
50 #
51 # Add new Entry to grub.conf
52 #
53 echo "" >> /boot/grub/grub.conf
54 echo "title IPFire (XEN-Kernel $KVER)" >> /boot/grub/grub.conf
55 echo " kernel /vmlinuz-$KVER-ipfire-xen root=$ROOT panic=10 console=xvc0 $MOUNT" >> /boot/grub/grub.conf
56 echo " initrd /ipfirerd-$KVER-xen.img" >> /boot/grub/grub.conf
57 echo "# savedefault $ENTRY" >> /boot/grub/grub.conf
58 #
59 # Test if we running already on xen
60 #
61 uname -r | grep "ipfire-xen";
62 if [ ${?} = 0 ]; then
63 #Xen Kernel is active
64 #Set grub default entry to this kernel
65 sed -i -e "s|^default .*|default $ENTRY|g" /boot/grub/grub.conf
66 #Remove ramdisk of normal kernel (not enough space)
67 rm -f /boot/ipfirerd-$KVER.img
68 else
69 #Normal Kernel
70 #pygrub crash with "default saved"
71 sed -i -e "s|^default saved|#default saved|g" /boot/grub/grub.conf
72 fi
73 #
74 # Made initramdisk
75 #
76 /sbin/dracut --force --verbose /boot/ipfirerd-$KVER-xen.img $KVER-ipfire-xen
77 #
78 # Create new module depency
79 #
80 depmod -a $KVER-ipfire-xen