Prebuilt binaries

Prebuilt binaries for APX/EFI linux

All zImage files that have (signed) at the end, are digitally signed by @Leander. Here is the certificate file:

All files built include a lot of USB device drivers, so features like USB RNDIS will work.

For booting take the zip bellow, extract to USB and place your desired zImage and devicetree file onto the USB (don't rename). For more information visit the Booting.

You may want to change the line that begins with zImage! Kernel files are distributed in a long name for archival sake so double check if you renamed it to just zImage. root=/dev/mmcblk1p2 is the second partition of the SD card, change this if you want to use a different device/partition. RPI OS is a recommended distro, as it runs smooth

root=/dev/mmcblk0p2 is a location set to internal storage (eMMC) second partition, set it to this after cloning the installation over to internal storage.

root=/dev/sda2 is a second partition for USB only boot, set it to this if you want to USB boot only


mmc stands for the storage type, more specifically a MMC memory module like eMMC storage or a SD card.

mmcblk[]0[] would be used to specify the exact partition in a boot configuration file, for example root filesystem partition, in this case it can be mmcblk[]p2 for typical Linux distros.

0p[] is used for internal storage definition as it's the primary MMC module 1p[] is used for external MMC storage like a SD card

Typical Linux distro consists of two partitions; small FAT32 formatted boot partition with kernel stuff and a main root partition which contains the entire filesystem. Root file system is formatted as EXT4 in most cases! In this case mmcblk[]p1 is a FAT32 boot partition and mmcblk[]p2 is a root file system.

sda[] is used to define a USB drive's partition as it's considered an external media. In our case sda1 would be FAT32 boot partition and sda2 a root file system.

Modules are required for features like WiFi. Make sure to extract them to the root of your root filesystem. The lib folders of the ZIP and of the root filesystem should merge. The modules are not required for booting, you can extract them while the system is running on your Surface RT. (E.g. When you are not able to extract the modules to a EXT4 filesystem on your main PC)

grate-driver/linux kernel

Latest binaries

The latest binaries and modules of kernel, devicetree, modules can be found below.

RPI-OS Bookworm USB prebuilt disk image

Write to USB disk with e.g. rufus/etcher and boot.

Previous kernels and other devices

No support for older builds. Use at your own risk.

Last updated