Releases: yo-le-zz/senbit
Release list
Senbit v0.1.0
🚀 Senbit v0.1.0
The first public release of Senbit — a lightweight, server-first Linux operating system built around the Linux kernel and a Rust-first userspace.
Senbit v0.1.0 establishes the foundation of the operating system: a custom build system, Linux kernel, Rust userspace, custom PID 1, interactive installer, persistent system configuration, BIOS/UEFI boot support, networking, authentication and an interactive shell.
This release is focused on having a real, bootable and installable operating system foundation that can be developed further in future releases.
✨ Highlights
🐧 Linux-based operating system
Senbit is built around the Linux kernel while keeping the userspace focused on lightweight components and custom Rust software.
🐧 Linux kernel
🦀 Rust-first userspace
⚡ Lightweight system design
🖥️ x86_64 support
📦 Custom root filesystem
🚀 Custom init / PID 1
🔧 Reproducible development workflow through
devtool
🛠️ Custom Build System
Senbit includes its own development and build tooling through devtool.
The build pipeline handles the major components of the operating system:
Linux Kernel
↓
BusyBox
↓
Rust Userspace
↓
System Tools
↓
GRUB
↓
Root Filesystem
↓
Initramfs
↓
Bootable ISO
🧰 Included tooling
🔨 Kernel building
📦 BusyBox building
🦀 Rust userspace building
🛠️ System utility building
🥾 GRUB building
🗂️ Root filesystem generation
💾 Initramfs generation
💿 ISO generation
🖥️ QEMU integration
⚙️ BIOS and UEFI VM configuration
The development workflow can be launched with:
./scripts/devtool run --force
🥾 BIOS & UEFI Boot Support
Senbit supports both major x86 boot modes.
🟦 Legacy BIOS
MBR partition table
GRUB
i386-pcBIOS boot support
Automatic partition creation
🟩 UEFI
GPT partition table
EFI System Partition
FAT32 EFI partition
GRUB
x86_64-efiUEFI fallback loader
EFI boot files
Automatic partition creation
The Senbit ISO itself supports BIOS and UEFI booting.
💿 Installation System
Senbit includes an interactive installer designed to configure a complete installed system.
💽 Disk management
The installer supports:
🔍 Disk detection
🧩 Partition detection
💾 Whole-disk installation
🛠️ Manual partitioning
⚠️ Partition selection and confirmation📐 Automatic MBR partitioning
📐 Automatic GPT partitioning
🔄 Partition table reloading
🗃️ ext4 root filesystem
🟩 FAT32 EFI System Partition
🥾 Bootloader installation
The installer automatically selects the appropriate GRUB configuration depending on the detected boot mode.
UEFI ├── GPT ├── EFI System Partition ├── FAT32 └── GRUB x86_64-efi
BIOS
├── MBR
├── ext4 root partition
└── GRUB i386-pc
⚙️ Custom Init System
Senbit uses a custom Rust PID 1 instead of relying entirely on a traditional init system.
The init system is responsible for:
🚀 System initialization
🗂️ Filesystem initialization
🔀 Root filesystem transition
🏠 Hostname initialization
🌐 Network initialization
🖥️ Console preparation
🔐 Login/session startup
🐚 Shell startup
❌ Critical boot error handling
Senbit also performs the root transition directly while keeping the same PID 1 process.
🗂️ Root Filesystem & Initramfs
Senbit generates its own root filesystem and initramfs during the build process.
The system includes:
/etc/usr/bin/sbin/var/home/root/dev/proc/sys/run
The initramfs contains the components required to initialize the system and transition into the installed root filesystem.
🌐 Networking
The current system provides basic network initialization with DHCP support.
The boot process can:
🔌 Detect network interfaces
🌐 Bring up networking
📡 Obtain network configuration through DHCP
⚙️ Initialize networking during boot
Static network configuration is planned for a future release.
👤 Users & Authentication
The installer includes initial user configuration.
Supported functionality includes:
👤 User creation
🔐 Password configuration
🔑 Password-based login
🏠 User home directories
🖥️ Interactive login
🌍 System Configuration
The installer configures several important system settings.
⌨️ Keyboard
Persistent keyboard configuration
Keyboard configuration during installation
🌐 Locale
Locale configuration
Persistent locale setup
🕐 Timezone
Timezone configuration
Persistent timezone setup
🏷️ Hostname
Hostname configuration
Persistent
/etc/hostnameHostname initialization during boot
📄 Senbit release information
Installed systems contain:
/etc/senbit-release
with information such as:
NAME=Senbit
VERSION=0.1.0
This allows the running system to identify its Senbit version.
🖥️ Custom Console & Shell
Senbit includes a customized console experience rather than using an entirely default shell environment.
🎨 Custom console font
The system includes a custom console font based on Terminus.
🔤 Custom PSF console font
⚡ Loaded during system initialization
🖥️ Optimized for Linux virtual consoles
👀 Improved readability
💬 Custom shell prompt
Senbit also provides a custom shell prompt with:
🎨 Custom colors
📁 Current working directory
👤 Current user information
🔐 Root/user prompt indicator
🔄 Dynamic prompt updates
The prompt automatically reflects directory changes when using commands such as:
cd /etc
🖥️ Console & TTY Handling
The system includes custom handling for the console and controlling terminal.
Senbit initializes:
🖥️
/dev/console📟 Controlling TTY
🔄 Session creation
⌨️ Interactive terminal input
🐚 Interactive shell execution
🌈 Linux console colors
🔤 Unicode console support
This provides the foundation for a proper interactive server console.
🔧 BusyBox Integration
Senbit uses BusyBox for lightweight core Unix functionality.
BusyBox provides essential utilities while keeping the base system small.
The build configuration includes the required functionality for:
🐚 Shell
📂 Filesystem operations
🔧 System utilities
🔀 Root filesystem operations
🖥️ Console functionality
⚙️ Basic system management
🥾 GRUB Integration
Senbit builds and packages its own GRUB environment.
Both platforms are generated:
/usr/lib/grub/i386-pc
/usr/lib/grub/x86_64-efi
This allows the same Senbit installation system to support both BIOS and UEFI machines.
The GRUB host tooling is also built specifically for the Senbit environment to avoid depending on unavailable dynamic host libraries inside the minimal userspace.
🖥️ QEMU Support
Senbit is designed to be tested directly in virtual machines.
The development tooling supports:
BIOS
QEMU
└── Legacy BIOS
└── Senbit ISO
UEFI
QEMU
└── OVMF / UEFI
└── Senbit ISO
This makes it possible to test the complete installation and boot workflow without requiring physical hardware.
🧪 Tested in v0.1.0
The current release has been tested on:
🏗️ x86_64
🐧 Linux development hosts
🖥️ QEMU
🟦 BIOS
🟩 UEFI / OVMF
💿 Boota...