Arch Baguette provides an automated build script and GitHub Actions workflow to create an Arch Linux image for ChromeOS Baguette, also known as Crostini Containerless.
Baguette runs Linux distributions directly inside the ChromeOS VM environment without using the traditional LXD-based Crostini container stack.
Caution
The build workflow installs dependencies with apt and has only been tested on Ubuntu 24.04 runners.
- Fork this repository.
- Open the Actions tab.
- Run the Build Arch Baguette Image workflow manually.
- Download the generated
arch-baguette-x86_64artifact. - Extract
arch-baguette-x86_64.img.zstand place it in your ChromeOS Downloads directory. - Open
croshand create the Baguette VM:
vmc create --vm-type BAGUETTE \
--size 30G \
--source /home/chronos/user/MyFiles/Downloads/arch-baguette-x86_64.img.zst \
arch
vmc start --vm-type BAGUETTE archNote
If you changed the image size in the workflow, use the same or a larger value for --size.
- Enter the VM with
vsh:
vsh archThe script can also be run locally on Ubuntu 24.04:
sudo apt-get update
sudo apt-get install -y \
arch-install-scripts \
pacman-package-manager \
archlinux-keyring \
btrfs-progs \
qemu-utils \
zstd \
rsync \
git \
curl \
ca-certificates \
gnupg \
dirmngr
jj git clone https://github.com/Cusox/arch-baguette
cd arch-baguette
chmod +x ./build-arch-baguette.sh
./build-arch-baguette.shThe compressed image will be written to:
out/baguette_arch_rootfs.img.zst
Tip
On ChromeOS 147 and later, the #crostini-containerless flag is enabled by default.
According to NixOS Baguette images in ChromeOS, the ChromeOS Terminal app can launch a Baguette VM when the VM is named termina.
To use the Terminal app directly, create the VM with the name termina:
vmc create --vm-type BAGUETTE \
--size 30G \
--source /home/chronos/user/MyFiles/Downloads/arch-baguette-x86_64.img.zst \
terminaCaution
If your device was upgraded from an older ChromeOS release, the existing Linux VM may still use the legacy Crostini/LXD stack. Remove and reinstall the Linux development environment to migrate it to Baguette.