#!/bin/bash set -euo pipefail if [[ ${EUID} -ne 0 ]]; then echo "Run as root" >&2 exit 1 fi REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" apt-get update DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ ca-certificates cron git openssh-client rsync util-linux curl jq \ docker.io zstd file python3 install -d -m 0755 /opt/opn-rustproxy install -d -m 0755 /opt/opn-rustproxy/source install -d -m 0755 /opt/opn-rustproxy/cache/cargo install -d -m 0755 /var/lib/rustproxy-opnsense-builder install -m 0755 "$REPO_ROOT/builder/debian/hourly-build.sh" /usr/local/sbin/rustproxy-opnsense-hourly install -m 0644 "$REPO_ROOT/builder/debian/rustproxy-opnsense.cron" /etc/cron.d/rustproxy-opnsense if [[ ! -e /etc/rustproxy-opnsense-builder.env ]]; then install -m 0600 "$REPO_ROOT/builder.env.example" /etc/rustproxy-opnsense-builder.env echo "Created /etc/rustproxy-opnsense-builder.env" else echo "Keeping existing /etc/rustproxy-opnsense-builder.env" echo "Compare it with: $REPO_ROOT/builder.env.example" fi touch /var/log/rustproxy-opnsense-builder.log chmod 0640 /var/log/rustproxy-opnsense-builder.log systemctl enable --now docker systemctl enable --now cron echo "Debian Docker builder installed." echo "Edit /etc/rustproxy-opnsense-builder.env and run:" echo " /usr/local/sbin/rustproxy-opnsense-hourly"