# 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.