diff --git a/scripts/clash-env.sh b/scripts/clash-env.sh new file mode 100644 index 0000000..6c82d4e --- /dev/null +++ b/scripts/clash-env.sh @@ -0,0 +1,41 @@ +# Clash shell helpers + +CLASH_INSTALL_DIR="${CLASH_INSTALL_DIR:-/root/clash-for-linux}" +ENV_FILE="${CLASH_INSTALL_DIR}/.env" + +if [ -f "$ENV_FILE" ]; then + set +u + . "$ENV_FILE" >/dev/null 2>&1 || true + set -u +fi + +CLASH_LISTEN_IP="${CLASH_LISTEN_IP:-127.0.0.1}" +CLASH_HTTP_PORT="${CLASH_HTTP_PORT:-7890}" +CLASH_SOCKS_PORT="${CLASH_SOCKS_PORT:-7891}" + +proxy_on() { + export http_proxy="http://${CLASH_LISTEN_IP}:${CLASH_HTTP_PORT}" + export https_proxy="http://${CLASH_LISTEN_IP}:${CLASH_HTTP_PORT}" + export HTTP_PROXY="http://${CLASH_LISTEN_IP}:${CLASH_HTTP_PORT}" + export HTTPS_PROXY="http://${CLASH_LISTEN_IP}:${CLASH_HTTP_PORT}" + export all_proxy="socks5://${CLASH_LISTEN_IP}:${CLASH_SOCKS_PORT}" + export ALL_PROXY="socks5://${CLASH_LISTEN_IP}:${CLASH_SOCKS_PORT}" + export no_proxy="127.0.0.1,localhost,::1" + export NO_PROXY="127.0.0.1,localhost,::1" + echo "[OK] Proxy enabled: http://${CLASH_LISTEN_IP}:${CLASH_HTTP_PORT}" +} + +proxy_off() { + unset http_proxy https_proxy HTTP_PROXY HTTPS_PROXY + unset all_proxy ALL_PROXY no_proxy NO_PROXY + echo "[OK] Proxy disabled" +} + +proxy_status() { + echo "http_proxy=${http_proxy:-}" + echo "https_proxy=${https_proxy:-}" + echo "all_proxy=${all_proxy:-}" + echo "CLASH_LISTEN_IP=${CLASH_LISTEN_IP}" + echo "CLASH_HTTP_PORT=${CLASH_HTTP_PORT}" + echo "CLASH_SOCKS_PORT=${CLASH_SOCKS_PORT}" +} \ No newline at end of file