#!/bin/bash # Usage Guide for ostree Backport System # This script provides information about the multi-distribution backport system echo "=== ostree Backport System Usage Guide ===" echo "" echo "🎯 Supported Distributions:" echo " • Ubuntu Noble (24.04 LTS) - Source: Ubuntu Questing" echo " • Debian Trixie (12) - Source: Debian sid" echo "" echo "📦 Available Scripts:" echo " • ostree-backport.sh [distro] - Main backport script" echo " • backport-noble.sh - Ubuntu Noble wrapper" echo " • backport-trixie.sh - Debian Trixie wrapper" echo "" echo "🚀 Quick Start Examples:" echo "" echo "For Ubuntu Noble:" echo " ./backport-noble.sh --podman # Safe: Run in Podman container" echo " ./backport-noble.sh --vm # Safe: Run in VM" echo " ./backport-noble.sh # Direct: Run on host (not recommended)" echo " ./ostree-backport.sh noble # Direct: Main script" echo "" echo "For Debian Trixie:" echo " ./backport-trixie.sh --podman # Safe: Run in Podman container" echo " ./backport-trixie.sh --vm # Safe: Run in VM" echo " ./backport-trixie.sh # Direct: Run on host (not recommended)" echo " ./ostree-backport.sh trixie # Direct: Main script" echo "" echo "🔧 What Each Script Does:" echo " 1. Downloads ostree 2025.2-1 source from appropriate distribution" echo " 2. Modifies changelog for backport versioning" echo " 3. Installs build dependencies" echo " 4. Builds all ostree packages" echo " 5. Installs the backported packages" echo "" echo "🛡️ Safety Features:" echo " • --podman: Run in isolated Podman container (recommended)" echo " • --vm: Run in isolated VM with virsh (full isolation)" echo " • --help: Show usage information and safety warnings" echo " • Interactive prompts for direct host execution" echo "" echo "📋 Bazzite/Immutable Distro Notes:" echo " • virt-manager is installed as Flatpak" echo " • virt-install may not be available by default" echo " • Podman containers are recommended for testing" echo " • Use 'ujust install libvirt-clients' if needed" echo "" echo "⚠️ Safety Notes:" echo " • Test in a VM first" echo " • Have a system backup" echo " • Be prepared for potential side effects with Flatpak" echo "" echo "📚 Source References:" echo " • Debian sid: https://packages.debian.org/source/sid/ostree" echo " • Ubuntu Questing: http://archive.ubuntu.com/ubuntu/pool/universe/o/ostree/" echo "" echo "🔗 CI/CD Workflow:" echo " • Automated builds on every push" echo " • Supports both distributions via matrix strategy" echo " • Manual trigger available for specific distributions" echo "" echo "📋 Package Contents:" echo " • libostree-dev - Development headers and libraries" echo " • libostree-1-1 - Runtime libraries" echo " • ostree - Command-line tools" echo " • gir1.2-ostree-1.0 - GObject introspection" echo " • libostree-doc - Documentation" echo " • ostree-boot - Boot utilities" echo " • ostree-tests - Test suite" echo "" echo "✅ Verification:" echo " pkg-config --modversion ostree-1" echo " # Should output: 2025.2" echo "" echo "🔄 Rollback:" echo " sudo apt install --reinstall libostree-dev libostree-1-1 ostree" echo " # Reinstall original packages from distribution repositories" echo "" echo "🔧 Bazzite VM Creation:" echo " # Option 1: Use virt-manager (Flatpak)" echo " flatpak run org.virt_manager.virt-manager" echo "" echo " # Option 2: Use toolbox for virt-install" echo " toolbox create --distro fedora" echo " toolbox enter" echo " sudo dnf install virt-install" echo "" echo " # Option 3: Use Podman containers (recommended)" echo " ./backport-noble.sh --podman" echo " ./backport-trixie.sh --podman"