[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Debian on Lenovo Chromebook (ARMv8)





Le jeu. 30 mars 2023 à 23:54, Brian Sammon <debian-arm-list@brisammon.fastmail.fm> a écrit :
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.

Alper Nebi Yasak was working on making it easier to do all that in debian,
you might find interesting things at https://salsa.debian.org/alpernebbi
I know depthcharge-tools is in debian and is working (i'm using it on c201 chromebooks).
However I don't know if it's possible to install debian the usual way right now.
I had luck with https://github.com/SolidHal/PrawnOS - just to install a base os, then I switched to debian sources.

Jérémy

Reply to: