#!/bin/bash set -e # --- Setup --- BASEDIR="$(cd "$(dirname "$0")" && pwd)" SRCDIR="$BASEDIR/.src" SCRIPTDIR="$SRCDIR/scripts" BACKUPDIR="/tmp/shutterlinksort-backup" # --- Functions --- usage() { cat </dev/null || true backup_if_exists "$target" if [ "$DRYRUN" = true ]; then echo " [DRY-RUN] Would install $srcfile → $target" else install -m 755 "$srcfile" "$target" fi done # Install web content echo echo "=== Installing web content ===" if [ "$DRYRUN" = true ]; then echo " [DRY-RUN] Would create $WEBROOT" else mkdir -p "$WEBROOT" fi if [ -d "$WEBROOT" ]; then if [ "$DRYRUN" = true ]; then echo " [DRY-RUN] Would back up existing web content to $BACKUPDIR/$(basename "$WEBROOT")" else cp -a "$WEBROOT" "$BACKUPDIR/" fi fi if [ "$DRYRUN" = true ]; then echo " [DRY-RUN] Would copy $SRCDIR/web/ → $WEBROOT" else cp -r "$SRCDIR/web/"* "$WEBROOT/" fi echo echo "Web content installed to: $WEBROOT" echo "All backups stored in: $BACKUPDIR" echo "Installation complete ✅" echo "To rollback, run: sudo $0 --rollback" echo "To uninstall, run: sudo $0 --uninstall" ;; esac