# Keru OS ける An independent, source-only Linux distribution built around one idea: you don't install a system, you *craft* one — **ける・けいとうてき** (keru keitō-teki): a system assembled the way you want it. This repository holds the **operating system itself** — the installer, the profile system, and the build pipeline. The two things Keru depends on live in their own repositories: - **[kama](https://github.com/AstralZX/kama)** — the package manager (a shell script) - **[kama-packages](https://github.com/AstralZX/kama-packages)** — the recipe repository ## What is Keru Every package on Keru is built from source by **Kama**, a deliberately small package manager that simply runs the commands in each recipe. No binary packages, no opaque package machinery. The whole system — toolchain included — is compiled from original source. Nothing is fixed. Nothing you didn't ask for is forced on you. Read the full **philosophy** in [docs/PHILOSOPHY.md](docs/PHILOSOPHY.md). ## The differentiator: everything is swappable Keru's installer is a TUI that walks you through designing your exact machine *before* it ever boots. Every major component is selectable: - **init system** — Runit (default), s6, OpenRC, systemd, busybox init, and more - **C library** — glibc, musl, uClibc-ng, and more - **filesystem** — ext4, btrfs, xfs, zfs, f2fs, jfs, reiserfs, swap, and more - **kernel** — linux, linux-lts, linux-hardened, linux-cachyos, and more - **privilege elevation** — doas, sudo, opendoas, su - **kernel parameters, locale, clock, keymap** — all configurable Every init, every libc, every filesystem, everything. The selections are made during install and fixed at first boot. The system that lands on your disk is precisely the one you chose. ## How installation works The ISO carries **only the installer** — nothing else. There is no prebuilt base image on the disk. When you boot it, the installer connects to the network, and then fetches and builds whatever you selected (init system, kernel, libc, filesystem tooling, and tools) on the fly. A working **network connection is therefore a hard requirement** for installing Keru. The installer checks connectivity and offers in-installer network setup (wireless via `nmtui`/`wifi-menu`, or Ethernet/DHCP) before the build begins. ## Repository layout ``` installer/ TUI installer — writes make.conf from your choices profile/ make.conf template (the swappables + build flags) scripts/ build pipeline: build-root, mkfs-root, common helpers docs/ philosophy + design docs + the recipe format spec ``` ## Release Keru OS is currently in development. The first installable release, **0.1**, will ship as a bootable ISO — no source builds, no manual tooling required. It will be made available here when it's ready. ## License AGPL-3.0