A Debian 13 (amd64) server image built with mkosi. One build produces a compressed UEFI disk image and an installer ISO. Hosts are provisioned with cloud-init and enrolled in FreeIPA after installation.
Development status: source checks, image builds, VM boot tests and live FreeIPA enrollment are separate verification stages. See verification for what each stage proves.
Clone the repository and validate the source. These checks need Python 3.11+, Git, Make, Bash and OpenSSL; they do not need Docker or Jupyter.
git clone https://github.com/soft-cloud-dev/sc-linux.git
cd sc-linux
make checkTo build images, use an amd64 Linux host with Docker and at least 40 GiB free. Follow the build guide to review configuration, independently verify the public FreeIPA CA and commit your changes before building. Builds use privileged containers.
make builder
make images
make smokeThe main outputs are build/output/sc-linux.raw.zst and build/output/sc-linux.iso, accompanied by checksums, size reports and VM logs. See the output reference.
| Goal | Start here |
|---|---|
| Build from the command line | Build guide |
| Learn the build step by step | Nine-chapter Jupyter Book |
| Run or edit notebooks locally | Notebook guide |
| Install a machine and configure SSH | Installation guide |
| Configure CA trust and enroll a host | FreeIPA identity |
| Understand or change the implementation | Architecture · Contributing |
Jupyter is optional. Make and CI execute the canonical operation notebooks through a Python-standard-library runner. The installed OS does not include Jupyter.
| Command | Purpose |
|---|---|
make |
Show available commands |
make check |
Run unit tests and source checks |
make builder |
Create the Docker build toolchain |
make images |
Build the RAW disk and installer ISO |
make smoke |
Boot RAW clones, install the ISO and boot the result |
make repro |
Compare two fresh unsigned builds byte for byte |
make lab / make book-lab |
Open operational notebooks / book chapters |
make book |
Render the book in strict mode without executing cells |
The image includes systemd, cloud-init NoCloud, SSH and a native FreeIPA client. EFI signing is optional. Authenticated root, remote attestation, automatic updates, Kubernetes orchestration and FreeBSD images are not implemented.
Read Security before deployment. The documentation index also covers image size, upstream references and historical changes.