| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- #!/usr/bin/env bash
- set -euo pipefail
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
- LAUNCHER="$SCRIPT_DIR/fast-media-lock"
- TARGET="/usr/local/bin/fast-media-lock"
- DEFAULT_WORKERS=8
- if [[ ! -x "$LAUNCHER" ]]; then
- echo "[ERROR] launcher not found or not executable: $LAUNCHER" >&2
- exit 1
- fi
- TMP_WRAPPER="$(mktemp)"
- trap 'rm -f "$TMP_WRAPPER"' EXIT
- cat > "$TMP_WRAPPER" <<EOF
- #!/usr/bin/env bash
- set -euo pipefail
- LAUNCHER="$LAUNCHER"
- DEFAULT_WORKERS=$DEFAULT_WORKERS
- if [[ ! -x "\$LAUNCHER" ]]; then
- echo "[ERROR] launcher not found or not executable: \$LAUNCHER" >&2
- exit 1
- fi
- args=("\$@")
- has_workers=0
- for arg in "\${args[@]}"; do
- case "\$arg" in
- --workers|--workers=*)
- has_workers=1
- break
- ;;
- esac
- done
- if [[ \$has_workers -eq 0 ]]; then
- case "\${1:-}" in
- lock|encrypt|unlock|decrypt|lock-name|encrypt-name|unlock-name|decrypt-name)
- args+=(--workers "\$DEFAULT_WORKERS")
- ;;
- esac
- fi
- exec "\$LAUNCHER" "\${args[@]}"
- EOF
- sudo install -m 755 "$TMP_WRAPPER" "$TARGET"
- echo "Installed: $TARGET -> $LAUNCHER"
- echo "Try: fast-media-lock -h"
|