BlueBuild. A minimal logo with a blue-billed duck holding a golden wrench in its beak.
# Debian Blue-Build CLI A fork of blue-build/cli adapted for Debian package management and atomic image building. ## Overview Debian Blue-Build CLI provides a command-line interface for building Debian atomic images using recipe-based configuration, maintaining compatibility with the original blue-build system while adding Debian-specific functionality. ## Features - Debian package management (APT-based) - Recipe-based image configuration - OSTree composition support - Bootc container generation - Multi-format image output ## Installation ```bash # Clone the repository git clone cd blue-build-cli # Install Rust (if not already installed) curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh # Build the CLI cargo build --release # Install the CLI cargo install --path . ``` ## Usage ### Basic Recipe ```yaml # recipe.yml name: debian-server version: 1.0.0 description: Debian server image packages: - openssh-server - nginx - postgresql repositories: - deb http://deb.debian.org/debian trixie main - deb http://deb.debian.org/debian-security trixie-security main customizations: user: name: admin password: secure_password network: hostname: debian-server ``` ### Build Command ```bash # Build image from recipe debian-blue-build build recipe.yml # Build with custom output format debian-blue-build build recipe.yml --format qcow2 # Build with specific architecture debian-blue-build build recipe.yml --arch amd64 ``` ## Architecture - **Recipe Parser**: YAML recipe processing - **Package Manager**: APT-based package handling - **Image Builder**: OSTree and container generation - **Output Formats**: ISO, QCOW2, RAW, VMDK support ## Development Status - **Core CLI**: ✅ Implemented (Rust-based) - **Debian Integration**: 🚧 In Progress - **Recipe System**: ✅ Basic structure - **Debian Driver**: 🚧 Implemented (basic) - **Debian Modules**: 🚧 Implemented (debian-packages) - **Testing**: 🚧 Basic structure ## Dependencies - Rust 1.70+ - OSTree tools - Debian build tools (debootstrap, apt-get, dpkg) - Container tools (Docker/Podman/Buildah) ## Supported Debian Versions This project supports the following Debian releases: - **Debian 13 (Trixie)**: Current stable release (recommended) - **Debian 14 (Forky)**: Testing release - **Debian Sid**: Unstable/rolling release **Note**: Debian 12 (Bookworm) is no longer supported as it has moved to oldstable. ## Configuration Configuration files are located in `~/.config/debian-blue-build/`. ## Contributing See CONTRIBUTING.md for development guidelines.