Files
dotfiles/vscode/.vscode-server/server-env-setup
T
ddadmin c4484b8ce3 feat(vscode): добавлена автоматическая настройка прокси в WSL
- Зачем:
  - обеспечить корректную работу расширений VS Code через прокси-сервер без ручной правки переменных окружения.
- Что:
  - обновлен скрипт `server-env-setup`: добавлена проверка доступности `hproxy.local` через `getent`.
  - реализован автоматический экспорт переменных `HTTP_PROXY`, `HTTPS_PROXY`, `ALL_PROXY` и `NO_PROXY` (в обоих регистрах).
  - комментарии в скрипте переведены на русский язык.
  - в политики Gemini (`readonly-commands.toml`) добавлены разрешения для команд `ls`, `echo` и `[`.
- Проверка:
  - запуск `env | grep -i proxy` в терминале VS Code после перезагрузки окна.
2026-03-11 10:41:35 +03:00

38 lines
1.4 KiB
Bash
Executable File

#!/usr/bin/env bash
# Хук запуска сервера VS Code в WSL.
# Загружает приватные переменные окружения и настраивает прокси, если доступен hproxy.local.
secrets_file="$HOME/.env.secrets"
warn() {
printf 'server-env-setup: %s\n' "$1" >&2
}
# 1. Загрузка приватных секретов (API ключи и т.д.)
if [ -f "$secrets_file" ]; then
# shellcheck disable=SC1090
if ! source "$secrets_file"; then
warn "warning: не удалось загрузить $secrets_file"
fi
fi
# 2. Автоматическая настройка прокси, если hproxy.local резолвится
# Используем getent, так как имя может быть в /etc/hosts или в DNS (режим mirror)
if getent hosts hproxy.local >/dev/null 2>&1; then
proxy_url="http://hproxy.local:12334"
export HTTP_PROXY="$proxy_url"
export HTTPS_PROXY="$proxy_url"
export ALL_PROXY="socks5://hproxy.local:12334"
export NO_PROXY="hproxy.local,localhost,127.0.0.1"
# Дублируем в нижнем регистре для лучшей совместимости с инструментами
export http_proxy="$HTTP_PROXY"
export https_proxy="$HTTPS_PROXY"
export all_proxy="$ALL_PROXY"
export no_proxy="$NO_PROXY"
fi
return 0 2>/dev/null || exit 0