Senbit GitHub
Early development · latest release: no release

Server infrastructure, built around Linux.

Senbit is a lightweight, secure, server-first operating system. It keeps the Linux kernel and its software ecosystem, and adds a small Rust userspace on top.

PerformanceLess software, less overhead
LightweightNo graphical stack in the base
StabilityMature Linux kernel underneath
DeploymentBuilt for repeatable installs
qemu · senbit 0.1.0
Latest releaseno release
Released—
ISOnone yet
Stars—
Forks—
Open issues—
Last commit—
License—

What works today

Senbit boots, installs itself to disk, brings up the network and logs you into a shell. Everything below is tested in QEMU with both BIOS and UEFI firmware. Physical hardware comes later.

Working

Implemented and tested

    In progress

    Not usable yet

      Built around the kernel, not instead of it

      Senbit does not rewrite what Linux already does well. It maintains its own kernel configuration, patches only with a concrete reason, and puts its own work in the layers above.

      Server applicationsDocker, Podman, nginx, databases and other Linux software. Nothing is installed by default.
      Senbit userspaceRust services and tools: init, login, installer, and the devtool build tool.
      System infrastructureInstallation, networking, updates, configuration, services and recovery.
      Linux kernelProcesses, memory, networking, drivers, filesystems, security and virtualization.

      Rust-first userspace

      Init, login and the installer are written in Rust and split into small modules: hostname, keymaps, network, services, updates.

      BusyBox base

      A minimal shell, networking with udhcpc, and loadkmap for console keymaps.

      Linux compatibility

      Debian packages and APT are planned, so existing software does not need to be rewritten.

      From power-on to login

      Senbit init runs as PID 1. If no installation is found it starts the installer; otherwise it brings the installed system up in this order.

      1. Mount the root filesystemthen /proc, /sys, /dev and /run
      2. Verify /etc/fstab
      3. Initialize the hostname
      4. Check for updates
      5. Initialize the networkdetect interfaces, ifup, DHCP lease, ping test
      6. Switch root to the installed system
      7. Start services
      8. Restore the keyboard layoutfrom /etc/default/keyboard
      9. Set environment variableshostname, language, timezone
      10. Log in and start the user's shell

      One ISO, two firmwares

      The Senbit ISO boots on both. GRUB i386-pc handles BIOS and GRUB x86_64-efi handles UEFI, and both lead to the same Senbit Linux.

      BIOS installs

      MBR partition table, ext4 root, GRUB installed with the i386-pc target.

      UEFI installs

      GPT table with a FAT32 EFI System Partition, ext4 root, GRUB with the x86_64-efi target.

      An installer that does the whole job

      The interactive installer detects the boot mode and your disks, partitions automatically or through fdisk, and can also install onto an existing partition.

      Disks

      Automatic partitioning, manual partitioning, FAT32 for EFI, ext4 for root, root filesystem and bootloader installation.

      Accounts

      A root account and a main user, stored in /etc/passwd, /etc/shadow and /etc/group with hashed passwords.

      Locale

      Hostname, locale, timezone and keyboard layout are chosen at install time and written to the target system so they persist across reboots.

      Roadmap

      Organized by capability, not by date. Select a phase to see its checklist.

        Build it and run it

        The devtool script manages the kernel, userspace, root filesystem, initramfs, GRUB and ISO, and rebuilds only what changed.

        ./install.sh
        ./scripts/devtool run --force
        git clone https://github.com/yo-le-zz/senbit
        Linux kernel/BusyBox/Rust userspace/GRUB/rootfs/initramfs/ISO

        Test environment

        What Senbit is developed and tested on

        • x86_64 on Linux hosts
        • QEMU with BIOS firmware
        • QEMU with UEFI (OVMF) firmware

        ARM64 and other server architectures are planned once they add practical value.

        Where it is going

        The long-term goal is a server platform where a machine's whole lifecycle is predictable: deploy, configure, run, monitor, update, verify, recover.

        Updates

        Online and offline updates, replacing only the components that changed. A kernel update should not touch unrelated parts.

        Snapshots and recovery

        Automatic snapshots before updates, rollback on failure, and boot recovery.

        Security and monitoring

        Firewall management, auditing, file integrity checks and visibility into system state.

        Senbit is built in the open

        Code, kernel work, Rust, testing, documentation, bug reports, security research and architecture discussion are all welcome.