# Debian Atomic Desktop - Phase 1

This is Phase 1 of the Debian Atomic Desktop project, focusing on creating a minimal, bootable Debian OSTree image with automated build processes.

## Project Overview

This project aims to create a Debian-based atomic desktop distribution using `bootc`, similar to `ublue-os` but leveraging the Debian ecosystem. Phase 1 focuses on establishing the foundational build system and creating a minimal bootable image.

## Prerequisites

- `podman` or `docker` for container builds
- `just` for build automation
- `bootc` for OSTree image management (for testing)

## Quick Start

1. **Build the image:**
   ```bash
   just build-image
   ```

2. **Test the image:**
   ```bash
   just test-image
   ```

3. **Test with systemd (for bootc compatibility):**
   ```bash
   just test-image-systemd
   ```

## Available Commands

Use `just --list` to see all available commands, or run `just help` for a summary.

### Build Commands
- `just build-image` - Build the container image with latest tag
- `just build-image-tag <tag>` - Build with a specific tag

### Testing Commands
- `just test-image` - Run the image interactively
- `just test-image-systemd` - Run with systemd support (privileged mode)

### Maintenance Commands
- `just clean` - Remove the latest image
- `just clean-all` - Remove all debian-atomic images
- `just list-images` - List all debian-atomic images
- `just inspect-image` - Show detailed image information

## Image Contents

The Phase 1 image includes:
- Debian Trixie base
- Essential system packages (systemd, dbus, sudo, etc.)
- Network management (NetworkManager)
- SSH server
- Basic utilities (curl, wget, vim, htop)
- Default user account (user/password)

## Next Steps

This is Phase 1 of the roadmap. Future phases will include:
- Phase 2: Calamares installer integration
- Phase 3: Desktop environment and kernel modules
- Phase 4: Polish and distribution

## Development

The project uses:
- `Containerfile` - Defines the container image
- `justfile` - Build automation and testing
- `roadmap.md` - Project roadmap and phases

## Contributing

This is currently in Phase 1 development. The focus is on establishing a solid foundation before adding more complex features. 