Critical safety and compatibility fixes based on ChatGPT feedback

SAFETY FIXES:
- Add prominent safety warnings for destructive operations
- Add BOOTC_I_KNOW_THIS_WIPES_MY_DISK environment variable checks
- Add safety warnings to manual installation scripts

BUILD FIXES:
- Fix Containerfile systemd calls to use symlinks instead of systemctl
- Replace brittle image validation with podman image mount
- Add fallback for rootless/mount issues

COMPATIBILITY FIXES:
- Align Debian version references (12 Bookworm vs 14 Forky)
- Add comprehensive COMPATIBILITY.md with version matrix
- Add kernel requirements for composefs (5.15+ basic, 6.5+ recommended)
- Document experimental flags and version requirements

TECHNICAL IMPROVEMENTS:
- Use DEBIAN_FRONTEND=noninteractive in build scripts
- Improve image inspection robustness
- Add explicit version testing matrix
- Document known issues and workarounds

This addresses the most critical issues identified in the ChatGPT review:
1. Safety warnings for destructive operations
2. Build-time systemd handling fixes
3. Robust image validation methods
4. Version compatibility documentation
This commit is contained in:
robojerk 2025-09-15 14:19:12 -07:00
parent 4f6cc99ba2
commit d2238df478
5 changed files with 209 additions and 21 deletions

View file

@ -1,5 +1,15 @@
# Installation
⚠️ **CRITICAL SAFETY WARNING** ⚠️
**bootc installation involves DESTRUCTIVE operations that can WIPE your disk and data!**
- `bootc install to-disk` will **DESTROY** existing partitions and data
- `grub-install` operations can **CORRUPT** your bootloader
- Always test on a **virtual machine** or **test hardware** first
- Never run on production systems without proper backups
- Use `BOOTC_I_KNOW_THIS_WIPES_MY_DISK=1` environment variable to confirm you understand the risks
## Base Images
Many users will be more interested in base (container) images for Debian.
@ -12,7 +22,7 @@ For pre-built base images, any Debian derivative can be converted to use bootc.
### Prerequisites
- Debian 14 (Forky) or later
- Debian 12 (Bookworm) or later (tested with Bookworm)
- Systemd as the init system
- Root access for installation
- Development tools and dependencies for compiling bootc