From fbb9ad64977aff229565b124a40d85e616c52b01 Mon Sep 17 00:00:00 2001 From: mariusdjen Date: Tue, 14 Apr 2026 15:12:36 +0200 Subject: [PATCH] fix: create ~/.ssh before saving language preference vpskit crashed on fresh machines where ~/.ssh did not exist yet: save_lang_preference() wrote the language file without creating the parent directory, and set -e killed the script before the menu appeared. Create the directory (700 perms) before writing. --- lang.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lang.sh b/lang.sh index 261f386..6503f92 100644 --- a/lang.sh +++ b/lang.sh @@ -44,13 +44,17 @@ choose_language() { save_lang_preference() { local code="$1" - local settings_file + local settings_file settings_dir if [ "${OS:-}" = "windows" ]; then settings_file="$USERPROFILE/.ssh/.vpskit-settings" else settings_file="$HOME/.ssh/.vpskit-settings" fi + settings_dir="$(dirname "$settings_file")" + mkdir -p "$settings_dir" + chmod 700 "$settings_dir" 2>/dev/null || true + if [ ! -f "$settings_file" ]; then printf 'LANG="%s"\n' "$code" > "$settings_file" chmod 600 "$settings_file"