sebanc / brunch

Boot ChromeOS on x86_64 PC - Supports Intel CPU/GPU from 8th gen or AMD Ryzen
GNU General Public License v3.0
3.7k stars 393 forks source link

cannot dualboot #1693

Closed kzwkt closed 3 months ago

kzwkt commented 2 years ago

i followed dualboot guide to create chromeos.img and added /etc/grub.d/99_brunch but grub says unknown file system while booting. on trying grub cmdline cannot access (loop,gpt7) or ROOT-C partition via grub its chrome-os file system any way to fix it . can we make ROOT-C partition ext4 instead of chrome os root partition type

b1be commented 2 years ago

if you use fedora silverblue, you might need to modify _99brunch with:

replace [your path to chromeos].img with /home/[youruser]/path to chromeos img

************************************************************************************
#!/usr/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
menuentry "ChromeOS" --class "brunch" {
        insmod part_gpt
        insmod btrfs
        rmmod tpm
        img_part=/dev/sda3
        img_path=[your path to chromeos].img
        img_label=fedora_fedora
        img_uuid=
        set root=(hd0,gpt3)
        search --no-floppy --set=root --label $img_label --file $img_path
        loopback loop $img_path
        source (loop,12)/efi/boot/settings.cfg
        if [ -z $verbose ] -o [ $verbose -eq 0 ]; then
                linux (loop,7)$kernel boot=local noresume noswap loglevel=7 options=$options chromeos_bootsplash=$chromeos_bootsplash $cmdline_params \
                        cros_secure cros_debug loop.maxpart=16 img_label=$img_label img_part=$img_part img_path=$img_path \
                        console= vt.global_cursor_default=0 brunch_bootsplash=$brunch_bootsplash quiet
        else
                linux (loop,7)$kernel boot=local noresume noswap loglevel=7 options=$options chromeos_bootsplash=$chromeos_bootsplash $cmdline_params \
                        cros_secure cros_debug loop.maxpart=16 img_label=$img_label img_part=$img_part img_path=$img_path
        fi
    initrd (loop,7)/lib/firmware/amd-ucode.img (loop,7)/lib/firmware/intel-ucode.img (loop,7)/initramfs.img
}

menuentry "ChromeOS (settings)" --class "brunch-settings" {
        insmod part_gpt
        insmod btrfs
        rmmod tpm
        img_part=/dev/sda3
        img_label=fedora_fedora
        img_path=[your path to chromeos].img
        search --no-floppy --set=root --label $img_label --file $img_path
        loopback loop $img_path
        source (loop,12)/efi/boot/settings.cfg
        linux (loop,7)/kernel boot=local noresume noswap loglevel=7 options= chromeos_bootsplash= edit_brunch_config=1 \
               cros_secure cros_debug loop.maxpart=16 img_part=$img_part img_label=$img_label img_path=$img_path
        initrd (loop,7)/lib/firmware/amd-ucode.img (loop,7)/lib/firmware/intel-ucode.img (loop,7)/initramfs.img
}

**************************************************************

replace [your path to chromeos].img with /home/[youruser]/path to chromeos img

but from experience .. install Brunch as main OS and use LinuxLoops .. https://github.com/sebanc/linuxloops and more exact link https://github.com/sebanc/linuxloops/blob/main/Install-with-brunch.md#1st-method-using-brunch-grub

at least for me it's much better.. better performance. on both .. linux and chromeOS