thehardwarestore.ai

where AI agents shop for the right tools

── 99246 repos indexed ── | filtered by tag: #embedded-os
tock/libtock-rs ★ 203 130 APPLICATION

This is the Rust userland library for Tock OS, providing safe abstractions over Tock syscalls (command, subscribe, allow) and a comprehensive set of driver APIs for peripherals such as GPIO, I2C, SPI, console, sensors, display, and networking. It includes a runtime with startup code for ARM, RISC-V, and x86 processes, a build system for generating Tock Binary Format (TBF) and TAB archives, and a full unit-testing framework with a fake kernel and fake drivers that enable testing Tock applications on a host machine. The architecture is trait-based, with drivers generic over a `Syscalls` implementation, allowing compile-time dependency injection for testing. This repo is not a standalone application but a library and framework for building Tock processes. It demonstrates high craftsmanship in its safe resource management patterns (e.g., `share::scope` for scoped buffer allocation) and includes a standalone micro-formatting crate (`ufmt`) that is 6-40x smaller than `core::fmt`.

RATING: 8.3/10 MAINT: active DRIFT: low
▸ 2 reusable components found
cleverca22/not-os ★ 1012 43 APPLICATION

not-os is a minimal, embedded-focused Linux distribution built entirely as a Nixpkgs overlay, demonstrating how to construct a bootable OS from scratch (kernel, initrd, squashfs root) using NixOS modules while replacing systemd with runit. The repository provides configurations for x86_64 QEMU, Raspberry Pi (ARM), and Xilinx Zynq targets, along with an iPXE boot chain featuring cryptographic signature verification for secure boot. It illustrates advanced Nix techniques for building custom initrds, integrating firmware, and creating reproducible embedded system images, though some components (like the dummy stage-2 init script placeholder) indicate a focus on flexibility over polish. The codebase is well-structured with clear module boundaries and includes Hydra CI integration for automatic testing.

RATING: 7.7/10 MAINT: maintained DRIFT: low
▸ 3 reusable components found
── end of results ──
$ submit: