OSDN Git Service

Search for efi partition
[android-x86/bootable-newinstaller.git] / install / scripts / 1-install
index fd68e1c..094a032 100644 (file)
@@ -191,9 +191,9 @@ create_img()
                rm -f $2
        fi
        dialog --title " Question " --nook --nocancel --inputbox \
-               "\nPlease input the size of the $bname in MB (max 2047):" 8 63 $1 2> $tempfile
+               "\nPlease input the size of the $bname in MB:" 8 63 $1 2> $tempfile
        size=`cat $tempfile`
-       [ 0$size -le 0 -o 0$size -gt 2047 ] && size=2047
+       [ 0$size -le 0 ] && size=1024
        ( dd bs=1M count=$size if=/dev/zero | pv -ns ${size}m | dd of=$2 ) 2>&1 \
                | progress_bar "Creating $bname" "Expect to write $size MB..."
 }
@@ -218,7 +218,7 @@ create_data_img()
 try_upgrade()
 {
        [ -d $1 ] && return
-       PREV_VERS="4.4-r2 4.4-r1 4.4-RC2 4.4-RC1 4.4-test 4.3-test 4.2-test 4.0-r1 4.0-RC2 4.0-RC1"
+       PREV_VERS="4.4-r4 4.4-r3 4.4-r2 4.4-r1 4.4-RC2 4.4-RC1 4.4-test 4.3-test 4.2-test 4.0-r1 4.0-RC2 4.0-RC1"
        for v in $PREV_VERS; do
                prev=hd/android-$v
                if [ -d $prev ]; then
@@ -283,19 +283,21 @@ install_to()
        if [ $? -eq 0 ]; then
                get_part_info $1
                for i in /sys/block/$disk/$disk*; do
-                       [ 0`cat $i/partition` -eq 1 ] && break
+                       [ 0`cat $i/partition` -eq 1 ] && b=$i
+                       [ $(blkid /dev/`basename $i` | grep -c vfat) -ne 0 ] && b=$i && break
                done
-               boot=`basename $i`
+               boot=`basename $b`
                mountpoint -q /hd && umount /hd
                dialog --title " Confirm " --defaultno --yesno \
                        "\n Do you want to format the boot partition\n /dev/$boot?" 8 45
                [ $? -eq 0 ] && mkdosfs -n EFI /dev/$boot
                try_mount rw /dev/$boot /hd
                cp -af /grub2/efi /hd
-               grubcfg=/hd/efi/boot/grub.cfg
-               echo -e "set timeout=6" > $grubcfg
-               echo -e "menuentry \"Android-x86 $VER\" {\n\tsearch --set=root --file /$asrc/kernel\n\tlinuxefi /$asrc/kernel quiet $cmdline \n\tinitrdefi /$asrc/initrd.img\n}" >> $grubcfg
-               echo -e "menuentry \"Android-x86 $VER (DEBUG mode)\" {\n\tsearch --set=root --file /$asrc/kernel\n\tlinuxefi /$asrc/kernel $cmdline DEBUG=2\n\tinitrdefi /$asrc/initrd.img\n}" >> $grubcfg
+               mkdir -p /hd/boot/grub
+               grubcfg=/hd/boot/grub/grub.cfg
+               echo -e "set timeout=5\n\n" > $grubcfg
+               echo -e "menuentry \"Android-x86 $VER\" {\n\tsearch --set=root --file /$asrc/kernel\n\tlinux /$asrc/kernel quiet $cmdline \n\tinitrd /$asrc/initrd.img\n}" >> $grubcfg
+               echo -e "menuentry \"Android-x86 $VER (DEBUG mode)\" {\n\tsearch --set=root --file /$asrc/kernel\n\tlinux /$asrc/kernel $cmdline DEBUG=2\n\tinitrd /$asrc/initrd.img\n}" >> $grubcfg
                if [ -e /hd/EFI/Microsoft/Boot/bootmgfw.efi ]; then
                        echo -e "menuentry \"Windows (UEFI)\" {\n\tsearch --set=root --file /EFI/Microsoft/Boot/bootmgfw.efi\n\tchainloader /EFI/Microsoft/Boot/bootmgfw.efi\n}" >> $grubcfg
                fi