Skip to content

x86_64

Any machine with decent mainline Linux support should work. Most mini-PCs, old laptops and x86 tablets qualify. The image bundles broad hardware and firmware support rather than being trimmed to one board, so the same file boots across a wide range of devices.

Requirements

  • UEFI boot (the disk image ships an EFI system partition).
  • A writable target disk: internal SSD/eMMC, a SATA drive, or an NVMe drive.
  • A touchscreen is recommended if you are mounting the screen, but not required.

The x86_64 image is the primary, tested target. See Monitor dimming for how brightness control behaves on external monitors.

Kernel

The image runs the newest mainline Linux kernel, so recent mini-PCs, laptops and x86 tablets get working display, Wi-Fi and touch support as soon as upstream has it. If a machine shows a black screen after the bootloader, no Wi-Fi, no touch or no backlight control, please open an issue telling us which hardware it is.

Microsoft Surface

This is a mainline kernel, not the linux-surface patch set. Whatever support has landed upstream works; what has not — notably the IPTS/IPU6 cameras and some touch controllers — does not.

Installing onto an internal disk

Normally you pull the disk, write the image to it from another machine, and put it back. When that is not practical — a soldered eMMC, or a laptop you would rather not open — boot the machine from any Linux live USB (Ubuntu, Fedora, a GParted live image, whatever you have) and write the image onto the internal disk from there. This is the same approach Home Assistant documents for Home Assistant OS on generic x86-64.

Download the image, confirm the target device, then write it:

lsblk    # identify the internal disk — getting this wrong erases the wrong drive
# The URL comes from the download table in the release notes — see Download the image.
curl -L -o da.raw.zst "$IMAGE_URL"
zstdcat da.raw.zst | sudo dd of=/dev/nvme0n1 bs=4M oflag=sync conv=fsync status=progress

Reboot without the live USB. The device shows the waiting screen until it finds a seed file.