From 86284136d4512df0755222f1f63784cfc5b8cedf Mon Sep 17 00:00:00 2001 From: Silvan Calarco Date: Wed, 12 Jun 2013 00:21:01 +0200 Subject: [PATCH] installer: remove other O.S. partiton selection, rely on grub-install + os-prober for automatic configuration --- installer/installer.kmdr | 234 +++++++++------------------------------ installer/installer.sh | 4 +- 2 files changed, 52 insertions(+), 186 deletions(-) diff --git a/installer/installer.kmdr b/installer/installer.kmdr index 9e786f6..927a826 100755 --- a/installer/installer.kmdr +++ b/installer/installer.kmdr @@ -2774,6 +2774,30 @@ done image7 + + + Label21_2_2 + + + + 70 + 10 + 500 + 30 + + + + + 15 + + + + Configure the boot manager + + + AlignCenter + + BootloaderBox @@ -2797,6 +2821,30 @@ done Bootloader configuration + + + Label29_2 + + + + 10 + 20 + 531 + 40 + + + + + 1 + + + + Please select where you want to install the boot manager. + + + WordBreak|AlignVCenter + + Layout5_2 @@ -2804,7 +2852,7 @@ done 10 - 320 + 60 530 26 @@ -2876,86 +2924,6 @@ done - - - chainloadbox - - - - 10 - 100 - 540 - 170 - - - - Multi - - - - - Label3_2_2_2 - - - - 10 - 70 - 290 - 24 - - - - Please select the boot menu options: - - - - - Label29_2 - - - - 10 - 280 - 531 - 40 - - - - - 1 - - - - Please select where you want to install the boot manager. - - - WordBreak|AlignVCenter - - - - - Label28 - - - - 10 - 20 - 540 - 40 - - - - - 1 - - - - Below is a list of other operating systems found on this computer, you may configure them to appear as a choice when the computer starts. - - - WordBreak|AlignTop - - setBootableCheckbox @@ -2966,7 +2934,7 @@ done 520 - 70 + 10 32 32 @@ -2992,102 +2960,6 @@ fi - - - Label21_2_2 - - - - 70 - 10 - 500 - 30 - - - - - 15 - - - - Configure the boot manager - - - AlignCenter - - - - - scanbootloader - - - - 550 - 10 - 32 - 32 - - - - - @BackBox.setChecked(true) -@NextBox.setChecked(true) -@chainloadbox.clear -@setBootableCheckbox.execute() -@execBegin -function get_udisks_key() { - LANG=C udisks --show-info $1 | grep " $2:" | head -n1 | sed "s|[[:space:]]*$2:[[:space:]]*\(.*\)|\1|" -} -conffile=~/.installer.conf -[ -e $conffile ] && mv ${conffile} ${conffile}~ -installdevice=@String.section(@devicesbox.item(@devicesbox.currentItem)," ",0) -devices=`udisks --enumerate-device-files | grep -v /dev/disk | sort -n -r` -partlabel= - -for device in $devices; do - [ "${device:5:5}" = "$installdevice" ] && continue - native_path=`get_udisks_key $device native-path` - [ -e $native_path/partition ] || continue - is_system_internal=`get_udisks_key $device "system internal"` - volsize=`get_udisks_key $device size` - volsize=`expr $volsize / 1024 / 1024` - volname=`get_udisks_key $device label` - [ "$volname" ] || volname="unnamed" - parttype=`get_udisks_key $device usage` - [ "$parttype" ] || parttype="unknown" - partscheme=`get_udisks_key $device scheme` - [ "$partscheme" ] || partscheme="unknown" - fstype=`get_udisks_key $device type` - [ "$fstype" ] || fstype="unformatted" - add_info="" - [ "$is_system_internal" = "1" ] || { - add_info=",removable" - [ @removablebox.checked == 1 ] || continue - } - - if [ "$partscheme" == "mbr" -o "$partscheme" == "embr" ]; then - partlabel="$partlabel<br>${device:5:5} $fstype $volname $volsize MB" - case "$fstype" in - swap|iso9660|unformatted) ;; - ext2|ext3|ext4|reiserfs|reiser4) ;; - *) dcop @dcopid KommanderIf "addListItem(QString,QString,int)" chainloadbox "${device:5:5} ($fstype,$volname,$volsize MB${add_info})" 0 - dcop @dcopid KommanderIf "setSelection" chainloadbox "${device:5:5} ($fstype,$volname,$volsize MB${add_info})" - ;; - esac - elif [ "$partscheme" == "gpt" -o "$partscheme" == "unknown" -a $volsize -gt 0 ]; then - case "$fstype" in - swap|iso9660|unformatted) ;; - ext2|ext3|ext4|reiserfs|reiser4) ;; - *) dcop @dcopid KommanderIf "addListItem(QString,QString,int)" chainloadbox "${device:5:5} ($fstype,$volname,$volsize MB${add_info})" 0 - dcop @dcopid KommanderIf "setSelection" chainloadbox "${device:5:5} ($fstype,$volname,$volsize MB${add_info})" - ;; - esac - fi -done -@execEnd - - - @@ -3653,12 +3525,6 @@ fi setLangLabel execute() - - bootableBox - widgetOpened() - scanbootloader - execute() - NextBox widgetOpened() diff --git a/installer/installer.sh b/installer/installer.sh index 3020b37..90321de 100755 --- a/installer/installer.sh +++ b/installer/installer.sh @@ -461,14 +461,14 @@ if [ "$INSTALL_BOOTLOADER_DEVICE" ]; then if [ "$INSTALL_BOOTLOADER_DEVICE_INTERNAL" != "1" ]; then echo $"Installing grub bootloader on removable device $INSTALL_BOOTLOADER_DEVICE" echo "(hd0) $INSTALL_BOOTLOADER_DEVICE" > $MOUNTPOINT/boot/grub/device.map - grub-install $INSTALL_BOOTLOADER_DEVICE --root-directory=$MOUNTPOINT --no-floppy --force + grub-install $INSTALL_BOOTLOADER_DEVICE --root-directory=$MOUNTPOINT --target=i386-pc --recheck --no-floppy --force else echo $"Installing grub bootloader on $INSTALL_BOOTLOADER_DEVICE" > $MOUNTPOINT/boot/grub/device.map for i in `seq 1 ${#DEV_NAME_ORIG[*]}`; do echo "(${GRUB_NAME_DEST[i-1]}) ${DEV_NAME_ORIG[i-1]}" >> $MOUNTPOINT/boot/grub/device.map done - grub-install $INSTALL_BOOTLOADER_DEVICE --root-directory=$MOUNTPOINT --no-floppy --force + grub-install $INSTALL_BOOTLOADER_DEVICE --root-directory=$MOUNTPOINT --target=i386-pc --recheck --no-floppy --force fi # DEV_NAME_ORIG=(${DEV_NAME_ORIG[*]} $GRUB_DEV)