2022-05-11 00:07:17 +02:00
|
|
|
#!/bin/bash
|
2026-06-29 09:42:14 +02:00
|
|
|
set -euo pipefail
|
|
|
|
|
source /usr/local/lib/pivilion/common.sh
|
|
|
|
|
[ "$(id -u)" -eq 0 ] || exec sudo "$0" "$@"
|
|
|
|
|
pivilion_load_config
|
|
|
|
|
|
|
|
|
|
work=$(mktemp -d "$PIVILION_DIR/static.XXXXXX")
|
|
|
|
|
backup="$PIVILION_DIR/backups/gen-$(date +%Y%m%d-%H%M%S)"
|
|
|
|
|
trap 'rm -rf "$work"' EXIT
|
|
|
|
|
install -d -m 0755 -o "$PIVILION_USER" -g "$PIVILION_GROUP" "$PIVILION_DIR/backups"
|
|
|
|
|
cp -a "$PIVILION_WEBROOT/gen" "$backup"
|
|
|
|
|
|
|
|
|
|
wget --mirror --convert-links --adjust-extension --page-requisites \
|
|
|
|
|
--restrict-file-names=ascii,windows http://127.0.0.1/ -P "$work"
|
|
|
|
|
[ -f "$work/127.0.0.1/index.html" ] || { echo "Static capture did not produce index.html; gallery was not changed." >&2; exit 1; }
|
|
|
|
|
|
|
|
|
|
find "$PIVILION_WEBROOT/gen" -mindepth 1 -maxdepth 1 -exec rm -rf -- {} +
|
|
|
|
|
cp -a "$work/127.0.0.1/." "$PIVILION_WEBROOT/gen/"
|
|
|
|
|
mv "$PIVILION_WEBROOT/gen/index.html" "$PIVILION_WEBROOT/gen/index.php"
|
|
|
|
|
chown -R www-data:www-data "$PIVILION_WEBROOT/gen"
|
|
|
|
|
find "$PIVILION_WEBROOT/gen" -type d -exec chmod 2775 {} +
|
|
|
|
|
find "$PIVILION_WEBROOT/gen" -type f -exec chmod 0664 {} +
|
|
|
|
|
|
|
|
|
|
echo "Static gallery installed. Original backup: $backup"
|
|
|
|
|
select choice in "Hotspot" "Onion"; do
|
|
|
|
|
case "$choice" in
|
|
|
|
|
Hotspot)
|
|
|
|
|
install -m 0644 -o root -g www-data "$PIVILION_DIR/config/html/.htaccess" "$PIVILION_WEBROOT/gen/.htaccess"
|
|
|
|
|
break ;;
|
|
|
|
|
Onion)
|
|
|
|
|
rm -f "$PIVILION_WEBROOT/gen/.htaccess"
|
|
|
|
|
break ;;
|
|
|
|
|
*) echo "Choose 1 or 2." ;;
|
|
|
|
|
esac
|
|
|
|
|
done
|