# along with IPFire; if not, write to the Free Software #
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #
# #
-# Copyright (C) 2007 IPFire-Team <info@ipfire.org>. #
+# Copyright (C) 2010 IPFire-Team <info@ipfire.org>. #
# #
############################################################################
#
. /opt/pakfire/lib/functions.sh
extract_files
#
-KVER=2.6.27.39
-ROOT=`grep "root=" /boot/grub/grub.conf | cut -d"=" -f2 | cut -d" " -f1 | tail -n 1`
+KVER=xxxKVERxxx
+ROOT=`mount | grep " / " | cut -d" " -f1`
+ROOTUUID=`blkid -c /dev/null -sUUID $ROOT | cut -d'"' -f2`
+if [ ! -z $ROOTUUID ]; then
+ ROOT="UUID=$ROOTUUID"
+fi
+
MOUNT=`grep "kernel" /boot/grub/grub.conf | tail -n 1`
# Nur den letzten Parameter verwenden
echo $MOUNT > /dev/null
MOUNT=$_
+if [ ! $MOUNT == "rw" ]; then
+ MOUNT="ro"
+fi
+
ENTRY=`grep "savedefault" /boot/grub/grub.conf | tail -n 1`
# Nur den letzten Parameter verwenden
echo $ENTRY > /dev/null
# Add new Entry to grub.conf
#
echo "" >> /boot/grub/grub.conf
-echo "title IPFire (XEN-Kernel)" >> /boot/grub/grub.conf
-echo " kernel /vmlinuz-$KVER-ipfire-xen root=$ROOT rootdelay=10 panic=10 console=xvc0 $MOUNT" >> /boot/grub/grub.conf
+echo "title IPFire (XEN-Kernel $KVER)" >> /boot/grub/grub.conf
+echo " kernel /vmlinuz-$KVER-ipfire-xen root=$ROOT panic=10 console=xvc0 $MOUNT" >> /boot/grub/grub.conf
echo " initrd /ipfirerd-$KVER-xen.img" >> /boot/grub/grub.conf
echo "# savedefault $ENTRY" >> /boot/grub/grub.conf
#
if [ ${?} = 0 ]; then
#Xen Kernel is active
#Set grub default entry to this kernel
- sed -i -e "s|^default saved|default $ENTRY|g" /boot/grub/grub.conf
+ sed -i -e "s|^default .*|default $ENTRY|g" /boot/grub/grub.conf
+ #Remove ramdisk of normal kernel (not enough space)
+ rm -f /boot/ipfirerd-$KVER.img
else
#Normal Kernel
#pygrub crash with "default saved"
#
# Made initramdisk
#
-cp -f /etc/mkinitcpio.conf.org /etc/mkinitcpio.conf
-sed -i -e "s| autodetect | |g" /etc/mkinitcpio.conf
-# Remove Reiser4 (not working with xen)
-sed -i -e "s|reiser4 | |g" /etc/mkinitcpio.conf
-mkinitcpio -k $KVER-ipfire-xen -g /boot/ipfirerd-$KVER-xen.img
+/sbin/dracut --force --verbose /boot/ipfirerd-$KVER-xen.img $KVER-ipfire-xen
#
# Create new module depency
#