I currently have a Lenovo Duet 5 chromebook (with ARM processor) that runs debian off an SD Card via USB.
> The problem is that instead of a normal BIOS or UEFI, thelaptop has the > nasty ChromeOS bootloader which refuses to boot the normal Debian ARM64 > Netinst installer. The only thing it wants to boot from USB is the > ChromeOS recovery. hexbuilder's VelvetOS (a (slightly?) modified version of Debian) builds might boot from USB--that's what I'm using. Check out https://github.com/hexdump0815/imagebuilder/blob/main/systems/chromebook_oak/readme.md > In theory, I could boot into ChromeOS from the eMMC, login as root and > copy Debian from the stick to the eMMC, but I don’t know how to > partition the eMMC. Where does the nasty bootloader expect to find > things? Can I make it boot into GRUB, or do I have to put the Linux > kernel from Debian onto a special partition? I’m completely clueless. The process seems to be: 1) compress the kernel image with lz4 2) create a FIT image with mkimage (mkimage is found in the "u-boot-tools" package in debian) 3) sign the FIT image and add the kernel commandline with vbutil_kernel (vbutil_kernel is found in the "vboot-kernel-utils" package in debian) 4) dd the signed image to one of a "Kernel" partition 5) use cgpt to set the relevant flags that mark the chosen Kernel partition as bootable/preferred. (there's a "cgpt" package in debian) The documentation for this (and the individual tools) is a bit suboptimal and scattered, so I don't have any documentation pointers--I extracted this process from the build scripts for hexbuilder's VelvetOS images. I haven't gotten to the point of understanding if/why all these steps are actually necessary, but I've used this process successfully to customize the install and partition table on the SD card I'm using on my Chromebook. I suspect that a similar process could be applied to the internal storage of a Chromebook, but I haven't explored that yet.