Shimboot
ading2210 (vk6#7391)
Shimboot is a collection of scripts for patching a Chrome OS RMA shim to serve as a bootloader for a standard Linux distribution. It allows you to boot a full desktop Debian install on a Chromebook, without needing to unenroll it or modify the firmware.
Prebuilt Images:
For these prebuilt images, the root password is "root
". The name of the default user is "user
" and its password is "user
" as well. You should change these credentials as soon as possible.
Instructions
- Find the board name of your Chromebook. You can search for the model name on chrome100.dev.
- Clone this repository and CD into it.
- Run `
sudo ./build_complete.sh [board_name]
` to download the required data and build the disk image. - Grab a Chrome OS RMA Shim from somewhere. Most of them have already been leaked and aren't too difficult to find.
- Download a Chrome OS recovery image for your board at this website.
- Run `
mkdir -p data/rootfs
` to create a directory to hold the rootfs. - Run `
sudo ./build_rootfs.sh data/rootfs bookworm
` to build the base rootfs. - Run `
sudo ./patch_rootfs.sh path_to_shim path_to_reco data/rootfs
` to patch the base rootfs and add any needed drivers. - Run `
sudo ./build.sh image.bin path_to_shim data/rootfs
` to generate a disk image at `image.bin
`.
Build Instructions:
Alternatively, you can run each of the steps manually below:
Booting the Image:
- Obtain a shimboot image by downloading a prebuilt one or building it yourself.
- Flash the shimboot image to a USB drive or SD card. Use the Chromebook Recovery Utility or dd if you're on Linux.
- Enable developer mode on your Chromebook. If the Chromebook is enrolled, follow the instructions on the SH1MMER website (see the "Executing on Chromebook" section).
- Plug the USB into your Chromebook and enter recovery mode. It should detect the USB and run the shimboot bootloader.
- Boot into Debian and log in with the username and password that you configured earlier. The default username/password for the prebuilt images is `
user/user
`. - Expand the rootfs partition so that it fills up the entire disk by running `
sudo growpart /dev/sdX 4
` (replacing `sdX
` with the block device corresponding to your disk) to expand the partition, then running `sudo resize2fs /dev/sdX
` to expand the filesystem. - Change the root password and regular user password by running `
sudo passwd root
` and `passwd user
`.