diff --git a/COMPATIBILITY.md b/COMPATIBILITY.md index 4f688fc..b6b6441 100644 --- a/COMPATIBILITY.md +++ b/COMPATIBILITY.md @@ -97,12 +97,13 @@ sudo apt install -y ostree podman systemd ## Testing Matrix -### Tested Configurations -- ✅ Debian 13 (Trixie) + bootc v1.1.4 + Podman 4.0 (recommended) -- ✅ Debian 14 (Forky) + bootc v1.1.4 + Podman 4.0 (ideal) -- ⚠️ Debian 12 (Bookworm) + manual installation + bootc management (old OSTree) +### Experimental Configurations +- ⚠️ Debian 13 (Trixie) + bootc v1.1.4 + Podman 4.0 (experimental, not fully tested) +- ⚠️ Debian 14 (Forky) + bootc v1.1.4 + Podman 4.0 (experimental, not fully tested) +- ⚠️ Debian 12 (Bookworm) + manual installation + bootc management (old OSTree, experimental) - ⚠️ Debian 12 (Bookworm) + composefs backend (experimental, old OSTree) - ❌ Debian 11 (Bullseye) - Not tested, may have issues +- ❌ **No reproducible bootc images exist yet** - All configurations are experimental ### Untested Configurations - Other Debian derivatives (Ubuntu, etc.) @@ -137,13 +138,15 @@ sudo apt update ## Recommendations ### For Production Use -1. **Use Debian 13 (Trixie)** as the minimum recommended version -2. **Consider Debian 14 (Forky)** for latest OSTree libraries -3. **Backport OSTree** from Forky to Trixie if needed -4. **Use manual installation** methods provided in this documentation -5. **Test thoroughly** on virtual machines before production deployment -6. **Keep backups** of critical data and configurations -7. **Monitor bootc releases** for Debian compatibility improvements +⚠️ **WARNING: bootc on Debian is EXPERIMENTAL and NOT production-ready** + +1. **DO NOT use in production** - All configurations are experimental +2. **No reproducible bootc images exist** - Everything is still experimental +3. **Use only for testing** on virtual machines or test hardware +4. **Keep backups** of critical data and configurations +5. **Expect failures** - bootc is not stable on Debian yet +6. **Monitor bootc releases** for Debian compatibility improvements +7. **Contribute fixes** back to the bootc project ### For Development 1. **Use the hybrid approach**: Manual install + bootc management diff --git a/building/base-images-wo-bootc.md b/building/base-images-wo-bootc.md index a6c1be7..760d965 100644 --- a/building/base-images-wo-bootc.md +++ b/building/base-images-wo-bootc.md @@ -1,5 +1,14 @@ # Create bootc base images without bootc +⚠️ **EXPERIMENTAL WARNING** ⚠️ + +**bootc on Debian is HIGHLY EXPERIMENTAL and NOT production-ready!** + +- **No reproducible bootc images exist yet** - Everything is experimental +- **Use only for testing** on virtual machines or test hardware +- **Expect failures** - bootc is not stable on Debian +- **DO NOT use in production** - Data loss and system instability possible + The bootc binary is unreliable under Debian as it's mainly developed for Fedora despite it aiming to be a distro agnostic tool. In this doc we'll go over all the little things a base bootc needs to be considered a true bootc image. @@ -312,7 +321,7 @@ echo "Example: podman build -f examples/nginx/Containerfile -t ${IMAGE_NAME}:ngi ```dockerfile # Containerfile.wo-bootc - Build bootc base without bootc binary -FROM debian:trixie-slim +FROM debian:sid-slim # Install essential packages for bootc RUN apt update && apt install -y \ @@ -998,7 +1007,7 @@ CMD ["/lib/systemd/systemd"] ```dockerfile # examples/nginx/Containerfile.multistage -FROM debian:trixie-slim as base +FROM debian:sid-slim as base # Install base packages RUN apt update && apt install -y \ diff --git a/building/base-images.md b/building/base-images.md index e37fe01..ea368e8 100644 --- a/building/base-images.md +++ b/building/base-images.md @@ -1,5 +1,14 @@ # Building Base bootc Images +⚠️ **EXPERIMENTAL WARNING** ⚠️ + +**bootc on Debian is HIGHLY EXPERIMENTAL and NOT production-ready!** + +- **No reproducible bootc images exist yet** - Everything is experimental +- **Use only for testing** on virtual machines or test hardware +- **Expect failures** - bootc is not stable on Debian +- **DO NOT use in production** - Data loss and system instability possible + This document provides detailed instructions for creating base bootc images using two different approaches: 1. **Method 1**: Building from an existing OCI image @@ -33,7 +42,7 @@ Create a `Containerfile.base`: ```dockerfile # Containerfile.base - Convert existing Debian image to bootc base -FROM debian:trixie-slim +FROM debian:sid-slim # Install essential packages for bootc RUN apt update && apt install -y \ diff --git a/installation.md b/installation.md index 75ed35a..7c2cf17 100644 --- a/installation.md +++ b/installation.md @@ -22,7 +22,8 @@ For pre-built base images, any Debian derivative can be converted to use bootc. ### Prerequisites -- Debian 13 (Trixie) or later (recommended) +- Debian Sid (unstable) - Recommended for base image building (like Fedora rawhide) +- Debian 13 (Trixie) - Stable, but bootc is experimental - Debian 12 (Bookworm) - oldstable, OSTree packages too old - Debian 14 (Forky) - testing, has newer OSTree libraries - Systemd as the init system @@ -76,7 +77,9 @@ Converting an existing Debian system to use bootc requires careful planning: - **Configuration**: System configuration follows Debian conventions with `/etc` for machine-local settings - **Services**: systemd services work normally, with bootc managing the base OS layer - **Updates**: OS updates are handled through bootc, while application updates continue to use `apt` -- **Development Status**: This is experimental software - use with caution in production environments +- **Development Status**: This is HIGHLY EXPERIMENTAL software - DO NOT use in production +- **No Reproducible Images**: No one has successfully created reproducible bootc images yet +- **Testing Only**: Use only for testing on virtual machines or test hardware ## Other Distributions