Skip to content

Getting Started

Quick Start

Get up and running with the Avocado Linux SDK in minutes.

Prerequisites

  • Linux development machine (Ubuntu 22.04+, Fedora 39+)
  • Podman or Docker installed
  • 20GB+ available disk space

Installing and running the SDK

  1. Pull the SDK container:
Terminal window
podman pull avocadolinux/sdk:apollo-edge
  1. Create your workspace:
Terminal window
mkdir avocado
cd avocado
  1. Start the SDK environment:
Terminal window
podman run -it --rm -e AVOCADO_SDK_TARGET=qemux86-64 -v $(pwd):/opt:z --entrypoint entrypoint.sh avocadolinux/sdk:apollo-edge /bin/bash

For a list of supported Avocado SDK targets besides qemux86-64, return to the Development Environment page.

Perform all remaining exercises from inside the SDK container.

Building a system extension

Let’s build a system extension that adds peridiod to the runtime.

  1. Install package contents for the peridiod package to the sysext sysroot:
Terminal window
avocado-repo sysext install peridiod -y
  1. Build system extension:
Terminal window
avocado-build sysext peridiod
  1. Verify that a peridiod system extension raw file was output:
Terminal window
ls -l /opt/_avocado/extensions/sysext/peridiod.raw

Building a bootable image

  1. Download the necessary images for the bootchain and the core rootfs to use when building a complete system image.
Terminal window
avocado-repo images
  1. Build var partition containing extension contents:
Terminal window
avocado-build var
  1. Build complete system image.
Terminal window
avocado-build image
  1. Verify that a complete system image file was output:
Terminal window
ls -l /opt/_avocado/output/avocado-image-qemu*.img

Booting an image with QEMU

  1. Extend the toolchain with QEMU:
Terminal window
avocado-repo sdk install nativesdk-qemu
  1. Run the emulator:
Terminal window
avocado-run-qemu

The peridiod system extension should start automatically.

systemd-sysext merge

systemd-sysext merge