#!/usr/bin/with-contenv bashio # shellcheck shell=bash set -e # ============================================================================== # Wait for transmission to become available bashio::net.wait_for 8080 localhost 900 bashio::log.info "Starting NGinx..." # Check vpn is working if [ -f /currentip ]; then nginx || nginx -s reload & while true; do # Get vpn ip if ! bashio::config.true 'wireguard_enabled' && bashio::config.true 'openvpn_alt_mode'; then curl -s ipecho.net/plain > /vpnip else curl -s ipecho.net/plain --interface tun0 > /vpnip fi # Verify ip has changed if [[ "$(cat /vpnip)" = "$(cat /currentip)" ]]; then bashio::log.fatal "VPN is not properly configured. Your ip is exposed. Please fix this, or do not use the vpn alt mode" bashio::exit.nok fi # Get ip location COUNTRY=$(curl -s https://ipinfo.io/$(cat /vpnip) | grep country -i -m 1 | cut -d ':' -f 2 | xargs | awk 'gsub(/,$/,x)' || true) # Inform by message bashio::log.info "VPN is up and running with ip $(cat /vpnip), based in country : $COUNTRY" # Check every 15m sleep 15m true done else nginx || nginx -s reload fi