# Keru OS An independent, source-only Linux distribution built around one idea: you don't install a system, you *craft* one. This repository holds the **operating system itself** — the installer, the ISO build tooling, 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, and the install image is assembled by hand rather than with a stock tool like archiso. Runit handles services. The standard Linux kernel drives the hardware. `nmtui` manages networking. Nothing you didn't ask for ends up on the disk. ## The differentiator: craft your system at install time Keru's installer is a TUI that walks you through designing your exact machine *before* it ever boots: - **init system** — Runit (default), s6, OpenRC, systemd - **C library** — glibc or musl - **filesystem** — ext4, btrfs, xfs, zfs, f2fs - **kernel** — linux, linux-lts, linux-hardened Swappable at install time, fixed at first boot. The system that lands on your disk is precisely the one you chose. ## Repository layout ``` installer/ TUI installer — writes make.conf from your choices iso/ from-scratch ISO build tooling (xorriso + squashfs + syslinux) profile/ make.conf template (the swappables + build flags) scripts/ build pipeline: build-root, mkfs-root, common helpers docs/ design docs + the recipe format spec ``` ## Building The three repos should sit next to each other (or point at each other via `KAMA_DIR` / `PKGS_DIR` / `PKGDIR`): ``` ~/dev/ ├── KeruOS/ ├── kama/ └── kama-packages/ ``` Then, from `KeruOS/`: ```sh make install # run the TUI installer # or, headlessly: sh scripts/build-root.sh # build a rootfs into /tmp/keru/root make iso # assemble an install image ``` Requires the sibling `kama` and `kama-packages` repos to be present. ## Status Design + scaffolding. Nothing is building end-to-end yet. ## License AGPL-3.0