There is a newer version of the record available.

Published September 7, 2022 | Version 2022.05.2
Software Open

SkiffOS: Minimal Cross-compiled Linux for Embedded Containers

Authors/Creators

  • 1. Aperture Robotics, LLC.

Description

This mainline release corresponds to Buildroot 2022.05.2.

---

Changes since SkiffOS 2022.05.1:

  • Buildroot: see Release notes
  • Update to GCC 12
  • Update Linux to 5.19.6
  • Update rpi to 5.15.61
  • virt/wsl: fix WSL2 integration
  • util/insecure: new package
  • apps/crun: new package
  • apps/podman: new package
  • intel/desktop: enable more GPU drivers
  • intel/desktop: add rEFInd EFI bootloader
  • intel/desktop: add format and install scripts
  • apps/toolbx: new package
  • apps/distrobox: new package
  • core/fedora: new skiffos core configuration
  • allwinner/d1: update opensbi and uboot
  • jetson/{tx2,nano}: linux4tegra legacy version

New devices:

  • browser/v86: run in emulator in Web Browsers
  • modalai/voxl2: new arm64 board
  • starfive/visionfive: Riscv64 board
  • valve/deck: support for Steam Deck

---

SkiffOS is a lightweight operating system for any Linux-compatible computer, ranging from RPi, Odroid, NVIDIA Jetson, to Desktop PCs, Laptops (i.e. Apple MacBook), Phones, Cloud VMs, and more. It is:

  • Familiar: uses simple Makefile and KConfig language for configuration.
  • Flexible: supports any OS distribution inside containers w/ ssh drop-in.
  • Portable: replicate the exact same system across any hardware or arch.
  • Reliable: read-only minimal in-RAM host system boots reliably every time.
  • Reproducible: offline and deterministic builds for reproducible behavior.

SkiffOS adds a configuration layering system to the Buildroot cross-compiler, which makes it easy to re-target applications to new hardware. Layers are merged together as specified in the SKIFF_CONFIG comma-separated environment variable. As a basic example: SKIFF_CONFIG=pi/4,core/gentoo starts Gentoo on a Raspberry Pi 4 in a Docker container.

The default configuration produces a minimal (~100Mb) in-RAM host OS with SSH and network connectivity, and includes a comprehensive set of debug tools. The host OS can be easily remotely updated with the push_image script, using rsync.

The "skiff/core" layer enables Docker ("apps/docker") and a default environment based on Ubuntu with a full graphical desktop environment. Others including "core/gentoo" and "core/dietpi" are available.

Most Linux devices have a unique set of requirements for kernel, firmware, and hardware support packages. The SkiffOS host OS separates hardware-specific support from the containerized user environments, simplifying management of updates across multiple hardware combinations.

Files

skiffos/SkiffOS-2022.05.2.zip

Files (2.1 MB)

Name Size Download all
md5:7a3ae6c3a4ea3f997f13e3b6f0a24aaf
2.1 MB Preview Download

Additional details

Related works