Merge pull request #252 from aclist/fix/setup-whitespaces
Some checks failed
Mirror to Codeberg / mirror-to-codeberg (push) Has been cancelled

fix: whitespaces during setup
This commit is contained in:
aclist 2025-12-28 00:03:40 +09:00 committed by GitHub
commit 52f36e0d0a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 33 additions and 6 deletions

View File

@ -5,6 +5,10 @@ labels: ["bug"]
assignees:
- aclist
body:
- type: markdown
attributes:
value: |
### WARNING: When posting log/config data, redact any sensitive information like API keys.
- type: checkboxes
id: kb
attributes:

View File

@ -5,6 +5,10 @@ labels: ["troubleshooting"]
assignees:
- aclist
body:
- type: markdown
attributes:
value: |
### WARNING: When posting log/config data, redact any sensitive information like API keys.
- type: dropdown
id: device
attributes:

View File

@ -1,5 +1,10 @@
# Changelog
## [5.8.1] 2025-12-27
## Fixed
- Path discovery during first-time setup when parsing filepaths with whitespaces
- First-time setup dialog continuously triggering when DayZ install path had whitespaces in it
## [5.8.0] 2025-07-06
## Added
- Filter servers by official/unofficial status

View File

@ -1,7 +1,7 @@
#!/usr/bin/env bash
set -o pipefail
version=5.8.0
version=5.8.1
#CONSTANTS
aid=221100
@ -488,7 +488,7 @@ migrate_files(){
}
stale_symlinks(){
local game_dir="$steam_path/steamapps/common/DayZ"
for l in $(find "$game_dir" -xtype l); do
for l in "$(find "$game_dir" -xtype l)"; do
logger DEBUG "Updating stale symlink '$l'"
unlink "$l"
done
@ -851,12 +851,26 @@ file_picker(){
}
find_library_folder(){
local search_path="$1"
steam_path="$(python3 "$helpers_path/vdf2json.py" -i "$1/steamapps/libraryfolders.vdf" \
| jq -r '.libraryfolders[]|select(.apps|has("221100")).path')"
if [[ ! $? -eq 0 ]] || [[ -z $steam_path ]]; then
readarray -t paths < <(python3 "$helpers_path/vdf2json.py" -i "$1/steamapps/libraryfolders.vdf" \
| jq -r '.libraryfolders[]|select(.apps|has("221100")).path')
if [[ ! $? -eq 0 ]]; then
logger WARN "Failed to parse Steam path using '$search_path'"
return 1
fi
if [[ ${#paths[@]} -eq 0 ]]; then
logger WARN "No valid VDF paths in '$search_path'"
return 1
fi
if [[ ${#paths[@]} -gt 1 ]]; then
for path in "${paths[@]}"; do
if [[ -d "$path" ]]; then
steam_path="$path"
break
fi
done
else
steam_path="${paths[0]}"
fi
logger INFO "Steam path resolved to: $steam_path"
}
create_config(){
@ -938,7 +952,7 @@ varcheck(){
source "$config_file"
local workshop_dir="$steam_path/steamapps/workshop/content/$aid"
local game_dir="$steam_path/steamapps/common/DayZ"
if [[ ! -d $steam_path ]] || [[ ! -d $game_dir ]] || [[ ! $(find $game_dir -type f) ]]; then
if [[ ! -d $steam_path ]] || [[ ! -d $game_dir ]] || [[ ! $(find "$game_dir" -type f) ]]; then
logger WARN "DayZ path resolved to '$game_dir'"
logger WARN "Workshop path resolved to '$workshop_dir'"
qdialog "$msg2" "Yes" "Exit"