Ubuntu hardware support documentation¶
Ubuntu hardware support documentation covers installing Ubuntu on non-PC hardware — including Raspberry Pi and RISC-V single-board computers — and building custom Ubuntu-based images for hardware not yet supported by Ubuntu.
The documentation spans two guides. The boards documentation covers
installing Ubuntu on specific Ubuntu-supported and community-supported
hardware, configuring boards for use cases such as headless operation and
camera access, and understanding the image types and boot mechanisms in use.
The Image Cookbook covers building, packaging, and distributing custom Ubuntu
images using ubuntu-image, Launchpad PPAs, and custom kernel packages.
These guides address the need to run Ubuntu on hardware where a standard installation is unavailable or insufficient. The boards documentation provides tested installation paths for supported boards and explains common boot and hardware configuration scenarios. The Image Cookbook provides the steps to create distributable Ubuntu images for new hardware platforms.
This documentation is for hardware engineers, system integrators, and developers working with non-PC hardware. It assumes familiarity with Linux and the command line, but does not require prior experience with Ubuntu image-building tools or Launchpad.
In this documentation¶
This section maps every major page in the docs set by subject, giving direct access to content across Diátaxis types without depending on sidebar navigation.
For a guided introduction, start with the installation tutorials.
Installing Ubuntu on boards¶
Each row links the per-board installation pages for a specific platform.
Raspberry Pi: Install Ubuntu on the Raspberry Pi • Install directly • Install via PC
Allwinner Nezha D1: Install Ubuntu on the Allwinner Nezha D1
DeepComputing FML13V01: Install Ubuntu on the DeepComputing FML13V01
Microchip PIC64GX1000: Install Ubuntu on the Microchip PIC64GX1000 Curiosity Kit
Microchip PolarFire SoC Icicle Kit: Install Ubuntu on the Microchip PolarFire SoC Icicle Kit
Milk-V Mars: Install Ubuntu on the Milk-V Mars • Install Ubuntu on the Milk-V Mars CM and CM Lite
Pine64 Star64: Install Ubuntu on the Pine64 Star64
QEMU: Install Ubuntu on QEMU (ARM64) • Install Ubuntu on QEMU (RISC-V)
SiFive HiFive Unmatched: Install Ubuntu on the SiFive HiFive Unmatched
Sipeed LicheeRV Dock: Install Ubuntu on the Sipeed LicheeRV Dock
StarFive VisionFive: Install Ubuntu on the StarFive VisionFive • VisionFive 2 • VisionFive 2 Lite
Radxa ROCK Pi 4A (community-supported): Install Ubuntu on the Radxa ROCK Pi 4A
Hardware configuration¶
These guides cover setup tasks and troubleshooting methods that apply across one or more board families.
Flashing images: Flash images to a microSD card
Headless setup: Configure your board for headless use
Serial console: Connect to a UART console
Raspberry Pi camera: Using the camera on Raspberry Pi
Raspberry Pi boot configuration: Edit the Raspberry Pi boot configuration
Building custom images¶
This section covers the complete Image Cookbook workflow: from setting up Launchpad infrastructure to creating distributable Ubuntu images for new hardware.
Getting started: Image Cookbook overview • Your first Ubuntu image
Image creation: Create image with ubuntu-image • Create installer images
Kernel packages: Your first kernel package • Package a custom kernel
Packaging: Package binaries as .deb • Repackage binaries
Launchpad: Create Launchpad user • Create team • Create PPA • Create Git repository • Upload to a PPA • Consume a PPA
Reference and background¶
These pages provide specifications, test cases, and conceptual explanations that support the tasks described in the tutorial and how-to sections.
Glossary: Glossary
Image types: Server installer or pre-installed images?
Raspberry Pi A/B boot: A/B boot on Ubuntu for Raspberry Pi
Boot flow: Boot flow
Firmware requirements: Firmware requirements
Gadget definition: Gadget.yaml fields
Image definition: Image-definition.yaml fields
Image checklist: Checklist for Ubuntu images
Kernel test cases: Kernel test cases
Tools: Tools
How this documentation is organized¶
This documentation uses the Diátaxis documentation structure.
Tutorials • Image Cookbook tutorials — installing Ubuntu on Raspberry Pi, and creating a custom Ubuntu image and kernel package.
How-to guides • Image Cookbook how-to guides — per-board installation for Ubuntu-supported and community-supported hardware, hardware configuration, image creation with
ubuntu-image, packaging, and Launchpad setup.Reference — specifications for firmware requirements,
gadget.yaml,image-definition.yaml, and image-building tools.Explanation • Image Cookbook explanation — background on Ubuntu image types, the Raspberry Pi A/B boot mechanism, and the RISC-V boot flow.
Project and community¶
Ubuntu hardware support documentation is part of the Ubuntu documentation ecosystem, with both guides maintained as a community effort under the Canonical organization on GitHub.
Get involved¶
Use the issue tracker to report problems, browse the source in the GitHub repository, or consult the contribution guidelines before opening a pull request.