#!/bin/bash # Podman Installation and Configuration Script for Archipelago # Configures Podman for rootless operation set -e echo "🐳 Configuring Podman for rootless operation..." # Ensure archipelago user exists if ! id "archipelago" &>/dev/null; then echo "Creating archipelago user..." adduser -D -s /bin/bash archipelago fi # Create Podman configuration directories mkdir -p /home/archipelago/.config/containers mkdir -p /home/archipelago/.local/share/containers/storage # Configure storage cat > /home/archipelago/.config/containers/storage.conf < /home/archipelago/.config/containers/registries.conf.d/000-shortnames.conf <> /etc/subuid fi if ! grep -q "^archipelago:" /etc/subgid; then echo "archipelago:100000:65536" >> /etc/subgid fi # Create systemd user service directory mkdir -p /home/archipelago/.config/systemd/user # Enable lingering for archipelago user (allows user services to run without login) loginctl enable-linger archipelago || true # Set proper permissions chown -R archipelago:archipelago /home/archipelago/.config chown -R archipelago:archipelago /home/archipelago/.local echo "✅ Podman configuration complete!"