From feb401f4baf215583d9fa50fca62058e0bd72439 Mon Sep 17 00:00:00 2001 From: vitaly Date: Sun, 7 Jun 2026 20:18:09 +0300 Subject: [PATCH] =?UTF-8?q?feat:=20issue=20#8=20=E2=80=94=20=D0=B8=D0=BC?= =?UTF-8?q?=D0=B5=D0=BD=D0=BE=D0=B2=D0=B0=D0=BD=D0=BD=D1=8B=D0=B5=20=D0=BF?= =?UTF-8?q?=D1=80=D0=BE=D1=84=D0=B8=D0=BB=D0=B8=20=D1=81=D0=B5=D1=82=D0=B8?= =?UTF-8?q?=20(home/office/hostname)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit setup.sh item 2: показывает существующие профили, предлагает ввести имя. Профиль сохраняется как network_.conf (вместо фиксированного hostname). Позволяет держать home/office конфиги на одной машине и переключаться явно. Co-Authored-By: Claude Sonnet 4.6 --- setup.sh | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/setup.sh b/setup.sh index c7ea0d3..58f8c1f 100755 --- a/setup.sh +++ b/setup.sh @@ -54,7 +54,19 @@ case "$choice" in echo -e "${GRY} DEV — сетевой интерфейс (wifi или провод), через который ты подключён к роутеру${CLR}" echo -e "${GRY} LOCAL_DNS — IP офисного DNS-сервера для разрешения *.loc доменов (необязательно)${CLR}" echo "" - net_conf="$HOME/.config/ai-setup/network_$(hostname).conf" + mkdir -p "$HOME/.config/ai-setup" + cfg_dir="$HOME/.config/ai-setup" + # Показываем существующие профили + existing=$(ls "$cfg_dir"/network_*.conf 2>/dev/null | sed 's|.*/network_||;s|\.conf||' | tr '\n' ' ') + if [ -n "$existing" ]; then + echo -e "Существующие профили: ${BLD}${existing}${CLR}" + echo -e "${GRY}Введи имя профиля (home/office/$(hostname) и т.д.) или Enter для текущего${CLR}" + read -rp "Профиль [$(hostname)]: " chosen_profile + chosen_profile="${chosen_profile:-$(hostname)}" + else + chosen_profile="$(hostname)" + fi + net_conf="$cfg_dir/network_${chosen_profile}.conf" auto_gw=$(ip route show default 2>/dev/null | awk '/default/ {print $3; exit}') auto_dev=$(ip route show default 2>/dev/null | awk '/default/ {print $5; exit}') auto_gw="${auto_gw:-192.168.1.1}" @@ -66,9 +78,9 @@ case "$choice" in saved_local_dns=$(grep '^LOCAL_DNS=' "$net_conf" | cut -d= -f2) auto_gw="${saved_gw:-$auto_gw}" auto_dev="${saved_dev:-$auto_dev}" - echo -e "Загружены сохранённые параметры для ${BLD}$(hostname)${CLR}: GATEWAY=${BLD}${auto_gw}${CLR} DEV=${BLD}${auto_dev}${CLR}" + echo -e "Загружены параметры профиля ${BLD}${chosen_profile}${CLR}: GATEWAY=${BLD}${auto_gw}${CLR} DEV=${BLD}${auto_dev}${CLR}" else - echo -e "Определено автоматически: GATEWAY=${BLD}${auto_gw}${CLR} DEV=${BLD}${auto_dev}${CLR}" + echo -e "Новый профиль ${BLD}${chosen_profile}${CLR}. Определено автоматически: GATEWAY=${BLD}${auto_gw}${CLR} DEV=${BLD}${auto_dev}${CLR}" fi echo -e "${GRY}(просто Enter чтобы принять, или введи другое значение)${CLR}" echo "" @@ -79,7 +91,6 @@ case "$choice" in dev="${dev:-$auto_dev}" [ "$local_dns" = "пусто" ] && local_dns="" local_dns="${local_dns:-$saved_local_dns}" - mkdir -p "$HOME/.config/ai-setup" printf 'GATEWAY=%s\nDEV=%s\nLOCAL_DNS=%s\n' "$gw" "$dev" "$local_dns" > "$net_conf" echo "" sudo GATEWAY="$gw" DEV="$dev" LOCAL_DNS="$local_dns" USER_HOME="$HOME" bash scripts/ru-bypass.sh