Initial commit: apt-ostree project with 100% rpm-ostree CLI compatibility

This commit is contained in:
robojerk 2025-07-18 08:31:01 +00:00
commit a48ad95d70
81 changed files with 28515 additions and 0 deletions

View file

@ -0,0 +1,86 @@
#!/bin/bash
# Test script for apt-ostree OSTree environment detection
# This script demonstrates how apt-ostree detects if it's running in an OSTree environment
set -e
echo "=== apt-ostree OSTree Environment Detection Test ==="
echo
# Check if we're in an OSTree environment
echo "1. Checking OSTree filesystem detection..."
if [ -d "/ostree" ]; then
echo " ✓ /ostree directory exists"
else
echo " ✗ /ostree directory does not exist"
fi
echo
echo "2. Checking OSTree booted detection..."
if [ -f "/run/ostree-booted" ]; then
echo " ✓ /run/ostree-booted file exists"
else
echo " ✗ /run/ostree-booted file does not exist"
fi
echo
echo "3. Checking OSTree kernel parameter..."
if grep -q "ostree" /proc/cmdline 2>/dev/null; then
echo " ✓ 'ostree' found in kernel command line"
else
echo " ✗ 'ostree' not found in kernel command line"
fi
echo
echo "4. Testing apt-ostree environment validation..."
if command -v apt-ostree >/dev/null 2>&1; then
echo " Running: apt-ostree daemon-ping"
if apt-ostree daemon-ping 2>/dev/null; then
echo " ✓ apt-ostree daemon is available"
else
echo " ✗ apt-ostree daemon is not available"
fi
else
echo " ✗ apt-ostree command not found"
fi
echo
echo "5. Testing apt-ostree status command..."
if command -v apt-ostree >/dev/null 2>&1; then
echo " Running: apt-ostree status"
if apt-ostree status 2>/dev/null; then
echo " ✓ apt-ostree status command works"
else
echo " ✗ apt-ostree status command failed"
fi
else
echo " ✗ apt-ostree command not found"
fi
echo
echo "=== Environment Summary ==="
# Determine environment type
if [ -d "/ostree" ] && [ -f "/run/ostree-booted" ]; then
if grep -q "ostree" /proc/cmdline 2>/dev/null; then
echo "Environment: Fully functional OSTree environment"
else
echo "Environment: Minimal OSTree environment (can operate)"
fi
elif [ -d "/ostree" ]; then
echo "Environment: Partial OSTree environment (filesystem only)"
else
echo "Environment: Non-OSTree environment"
fi
echo
echo "=== Detection Methods Used ==="
echo "1. Filesystem Detection: /ostree directory"
echo "2. Boot Detection: /run/ostree-booted file"
echo "3. Kernel Parameter Detection: 'ostree' in /proc/cmdline"
echo "4. Library Detection: OSTree sysroot loading"
echo "5. Service Detection: apt-ostree daemon availability"
echo
echo "These detection methods match rpm-ostree's approach for"
echo "determining if the system is running in an OSTree environment."