SkiffOS minimal Linux for embedded containers now supports Sipeed Nezha RISC-V board

SkiffOS minimal Cross-compiled Linux for embedded containers has just added support for Sipeed Nezha RISC-V single board computer, and work on the smaller Sipeed Lichee RV board has started.

Wait… What is SkiffOS? I’ve never heard about it… That’s how the abstract from the white paper describes it:

Embedded Linux processors are increasingly used for real-time computing tasks such as robotics and Internet of Things (IoT). These applications require robust and reproducible behavior from the host OS, commonly achieved through immutable firmware stored in read-only memory. SkiffOS addresses these requirements with a minimal cross-compiled GNU/Linux system optimized for hosting containerized distributions and applications, and a configuration layering system for the Buildroot embedded cross-compiler tool which automatically re-targets system configurations to any platform or device. This approach cleanly separates the hardware support from the applications. The host system and containers are independently upgraded and backed-up over-the-air (OTA).

In other words, that’s a minimal Linux OS running in RAM, built with buildroot, capable of running containers on various hardware platforms ranging from Raspberry Pi, ODROID, Orange Pi, and NVIDIA Jetson SBCs to desktop PCs, laptops, phones including the PinePhone, Cloud VMs, and more. RISC-V hardware is just the latest addition.

SkiffOS Sipeed Nezha

Christian Stewart, SkiffOS developer, highlights five characteristics of the solution:

  • 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  (~100KB) in-RAM host system boots reliably every time.
  • Reproducible: offline and deterministic builds for reproducible behavior.

There’s a table on the project’s Github repository with U-boot and Linux kernel versions supported by a given hardware platform and in the case of Sipeed Nezha, that would be U-boot 2022.04
and Linux “sm-5.14-rc4”. I was specifically told SkiffOS was tested with Docker and Alpine Linux on the Allwinner D1 board, but other presets include Debian and Gentoo among others. You’ll find more details, including the source code and instructions to get started, on Github.

Share this:
FacebookTwitterHacker NewsSlashdotRedditLinkedInPinterestFlipboardMeWeLineEmailShare

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress

ROCK Pi 4C Plus

10 Replies to “SkiffOS minimal Linux for embedded containers now supports Sipeed Nezha RISC-V board”

    1. I don’t understand? Do the SkiffOS create Ubuntu image that runs on the hardware? Or Ubuntu as a docker container?

      1. As I understand it, SkiffOS is a minimal Linux image from which you can run docker containers with Alpine Linux, Ubuntu, Gentoo, etc…

        1. That’s correct – it’s a cross compiled OS which can be easily updated (as it’s all packed into 2-3 files only) independently from the containers (which are also optional – you can compile everything into the host OS if you want.)

          There’s also skiff-core which emulates a usual BSP by dropping SSH sessions into containers running Ubuntu, Gentoo, etc, with systemd as PID 1 (so everything works as usual, including the Ubuntu desktop UI, GPU, etc).

          I use it as my daily driver on my desktop PC as well as the host OS for my single-board computers like Raspberry Pi, Odroid, Jetson, etc.

  1. Is this different from BalenaOS or even haos (which is designed to feet the home assistant needs)?

    1. I like the separation between architecture, platform and apps.
      Adding features seems very straightforward and easy.
      This project is not aimed at anything in particular, but looks like a very good fit for embedded Linux / iot

Leave a Reply

Your email address will not be published. Required fields are marked *

Khadas VIM4 SBC
Khadas VIM4 SBC