Here you fill find Raspbian images pre-modified with the grate-driver kernel and all the necessary modules for booting Linux on the SurfaceRT.
Just download an image and follow the instructions below!
- Touch Cover
- Touch Screen
- Screen Brightness
- WiFi
- SD Card
- USB
- HDMI (w/ Audio!)
- Battery & Charging (The percentage in the status bar occasionally shows as 0%, depends on the DE you use)
- Audio
- Hardware Acceleration (Bad graphical performance, 2D and 3D)
- Bluetooth (You can use a USB adapter)
- Camera
- CPU L2 Cache, cpuidle (Bad performance)
- A Surface RT with secure boot disabled.
- Make sure your Surface is somewhat charged, it's recommended you keep it plugged in during the install process.
- A USB drive around 8-16GB.
- Pick an image from here and burn it to a USB drive using your favorite imager (Rufus, Balena, etc).
- Boot the USB drive by holding VOL DOWN and pressing power, release after you see the Surface logo.
- Be patient! First time setup takes long enough, and the Surface makes this process even slower due to a lack of CPU features.
-
- If you selected a Desktop image: Go through the first time setup. Note: Clicking reboot will NOT reboot you back to the USB drive, you will have to shutdown and start your Surface using the volume key method instead.
- If not: Configure your keyboard layout, region, and wifi via
sudo raspi-config
.
- Profit!
- Use
sudo dd if=/dev/sda of=/dev/mmcblk0 status=progress bs=10M
to copy the entire drive to the eMMC of the Surface.- Note: you can safely hit CTRL+C after DD writes ~5GB, after that is just blank space.
- Advanced users can manually adjust the dd command to move the rootfs to an SD card (for more storage); refer to this entry in the OpenRT wiki for device ids.
- Mount the eMMC (
sudo mkdir /tmp/emmc && sudo mount -o rw /dev/mmcblk0p1 /tmp/emmc
). cd
to the newly mounted directory (cd /tmp/emmc
).- Edit
startup.nsh
(sudo nano startup.nsh
), change theroot=
parameter to beroot=/dev/mmcblk0p2
, you can also removerootwait
. - Reboot (
sudo reboot now
) and unplug your USB drive. - Profit!
- Use
sudo raspi-config
to expand the filesystem (do this AFTER moving to internal or SD Card storage, if you're going to do that). - Update and upgrade your apt repositories (
sudo apt update
), then upgrade (sudo apt upgrade
). - Optionally, you can install a different desktop environment using these instructions.
- Profit!
- The OpenRT team for their documentation on modifying linux images to run on a SurfaceRT.
- @jwa4 for their instructions on how to apply Yahallo and unlock the bootloader of the SurfaceRT.
- This blog post by Joshua Powers which helped me get my footing when it came to mounting the RaspberryPI images.
- @imbushuo for Yahallo
- @never_released and @TheWack0lian for their discovery of the Golden Keys exploit.
- Both the GrateLinux and OpenRT teams for their Linux kernel for the Tegra3 SOC.
- Everyone behind Raspbian and the RaspberryPI, software support for armhf is great because of them.