Yocto, RockPi and SBOMs: Building Modern Embedded Linux Images

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

InfluxDB high-performance time series database
Collect, organize, and act on massive volumes of high-resolution data to power real-time intelligent systems.
influxdata.com
featured
CodeRabbit: AI Code Reviews for Developers
Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
coderabbit.ai
featured
  1. buildroot

    Buildroot, making embedded Linux easy. Note that this is not the official repository, but only a mirror. The official Git repository is at https://gitlab.com/buildroot.org/buildroot/. Do not open issues or file pull requests here.

    Last time I tried Yocto, some people here on HN suggested that I try Buildroot instead.

    I don’t see any mention of Buildroot in this thread.

    Maybe things have changed since then and Yocto is now preferable?

    Regardless, if you are interested in Yocto it might be worth having a look at Buildroot as well.

    My thread from years ago, where people told me about Buildroot:

    https://news.ycombinator.com/item?id=18083506

    The website of Buildroot:

    https://buildroot.org/

  2. InfluxDB

    InfluxDB high-performance time series database. Collect, organize, and act on massive volumes of high-resolution data to power real-time intelligent systems.

    InfluxDB logo
  3. yb

    A Yocto setup and management tool that helps you keep your environment up-to-date and in-sync with your team

  4. simplest-yocto-setup

    Working example of a yocto setup without unnecessary complications

    Yocto can be incredibly simple, this is my favorite example: https://github.com/bootlin/simplest-yocto-setup/

    Only the kernel and bootloader usually need to be specialized for most modern arm boards: the userland can be generic. Most of the problems people have with it are due to layers from vendors which contain a lot of unnecessary cruft.

  5. SkiffOS

    Any Linux distribution, anywhere.

    There’s also SkiffOS (https://github.com/skiffos/SkiffOS).

    It’s a project that uses buildroot to create a small Linux for a specific device that’s only used to start a container.

    I’ve wanted to try it sometime after getting headaches with both Buildroot and Yocto. Particular adding more libraries tends to break things.

  6. pi-gen

    Tool used to create the official Raspberry Pi OS images

    Maybe https://github.com/RPi-Distro/pi-gen works for you.

  7. bootc

    Boot and upgrade via container images

    I would suggest taking a look at bootc https://github.com/containers/bootc which enables you to use OCI / Docker containers as a transport and delivery system for OS updates. That makes available much of the tooling used to build and deliver container images for the purposes of delivering os updates.

    It's important to note that the container image itself is not executed upon boot, but rather unpacked before hand.

  8. makrocosm

    Framework for building customized Linux operating systems

    I've been working on something recently that you might find interesting: https://github.com/makrocosm/makrocosm

    It's not a shell script, but it has makefile rules that make it relatively simple to build a Docker image for your architecture, export it and turn into a filesystem image, build a kernel, u-boot, etc

  9. CodeRabbit

    CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.

    CodeRabbit logo
  10. example-project

    Create minimal Alpine-based firmware for a variety of platforms using Makrocosm (by makrocosm)

    The referenced "example project" repo builds a basic Alpine image for the Raspberry Pi (https://github.com/makrocosm/example-project/tree/main/platf...) and others

    It was motivated by frustrations with Yocto at a new job after 8 or so years working on firmware for network equipment using an offshoot of uClinux.

  11. meta-toradex-torizon

    Torizon OS OpenEmbedded Distro Layer

    > have not yet found a hardware independent Linux distro that can be reliably updated in an IOT context

    I'm part of the team that builds an immutable distro based on OSTree (https://www.torizon.io) that does exactly that.

    Docker/Podman support is first-class as the distro is just a binary, Yocto-based one that we maintain so users don't have to. You can try our cloud for free with the "maker" tier. To update a device you just drop a compose file with the web ui and massively update a fleet. You can even use hardware acceleration from the containers using our reference OCI images.

    The layer is open (https://github.com/torizon/meta-toradex-torizon) and will get Raspberry Pi support soon but you can integrate already easily with meta-raspberrypi.

    Happy to answer any questions.

  12. meta-unit-kas

    A collection of kas configuration files

    - Chaining together configuration fragments

    As another example, here is my kas setup for building rootfs images and container images for various different boards:

    https://github.com/unitexe/meta-unit-kas

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Talos: Secure, immutable, and minimal Linux OS for running Kubernetes

    4 projects | news.ycombinator.com | 13 Jul 2024
  • Flatcar: OS Innovation with Systemd-Sysext

    4 projects | news.ycombinator.com | 12 May 2024
  • Exploring cgroups v2 and MemoryQoS With EKS and Bottlerocket

    7 projects | dev.to | 19 Feb 2024
  • Google/Gvisor: Application Kernel for Containers

    3 projects | news.ycombinator.com | 2 Jan 2024
  • Bottlerocket OS

    1 project | news.ycombinator.com | 12 Nov 2023

Did you know that Shell is
the 11th most popular programming language
based on number of references?