1
0
Fork 0
mirror of https://github.com/aclist/dztui.git synced 2024-12-29 13:52:03 +01:00

Compare commits

..

1 commit

Author SHA1 Message Date
aclist
f1865ef1f0
Merge 34b3d3bc8c into e6b5e40bb2 2024-12-16 14:50:02 +09:00
3 changed files with 5 additions and 18 deletions

View file

@ -3,11 +3,6 @@
## [5.6.0-beta.18] 2024-12-14 ## [5.6.0-beta.18] 2024-12-14
### Added ### Added
- Open Steam workshop subscriptions - Open Steam workshop subscriptions
### Fixed
- Empty dialog popups if user manually deletes local mods while application is running
- Abort DayZ path discovery if VDF if Steam files are not synched
### Changed
- Admonish user to restart Steam in error dialog if DayZ path could not be found
## [5.6.0-beta.17] 2024-12-14 ## [5.6.0-beta.17] 2024-12-14
### Added ### Added

View file

@ -581,7 +581,7 @@ fetch_helpers_by_sum(){
["ui.py"]="0e3845ef150ee9863f9160c62dbb24f9" ["ui.py"]="0e3845ef150ee9863f9160c62dbb24f9"
["query_v2.py"]="55d339ba02512ac69de288eb3be41067" ["query_v2.py"]="55d339ba02512ac69de288eb3be41067"
["vdf2json.py"]="2f49f6f5d3af919bebaab2e9c220f397" ["vdf2json.py"]="2f49f6f5d3af919bebaab2e9c220f397"
["funcs"]="a9745fa5cc2f007bddf0d30032845fbd" ["funcs"]="4c1480fcfae15c4bc1c02a337d1de488"
["lan"]="c62e84ddd1457b71a85ad21da662b9af" ["lan"]="c62e84ddd1457b71a85ad21da662b9af"
) )
local author="aclist" local author="aclist"
@ -747,7 +747,7 @@ find_library_folder(){
local search_path="$1" local search_path="$1"
steam_path="$(python3 "$helpers_path/vdf2json.py" -i "$1/steamapps/libraryfolders.vdf" \ steam_path="$(python3 "$helpers_path/vdf2json.py" -i "$1/steamapps/libraryfolders.vdf" \
| jq -r '.libraryfolders[]|select(.apps|has("221100")).path')" | jq -r '.libraryfolders[]|select(.apps|has("221100")).path')"
if [[ ! $? -eq 0 ]] || [[ -z $steam_path ]]; then if [[ ! $? -eq 0 ]]; then
logger WARN "Failed to parse Steam path using '$search_path'" logger WARN "Failed to parse Steam path using '$search_path'"
return 1 return 1
fi fi
@ -800,7 +800,7 @@ create_config(){
find_library_folder "$default_steam_path" find_library_folder "$default_steam_path"
if [[ -z $steam_path ]]; then if [[ -z $steam_path ]]; then
logger raise_error "Steam path was empty" logger raise_error "Steam path was empty"
zenity --question --text="DayZ not found or not installed at the Steam library given. NOTE: if you recently installed DayZ or moved its location, you MUST restart Steam first for these changes to synch." --ok-label="Choose path manually" --cancel-label="Exit" zenity --question --text="DayZ not found or not installed at the Steam library given." --ok-label="Choose path manually" --cancel-label="Exit"
if [[ $? -eq 0 ]]; then if [[ $? -eq 0 ]]; then
logger INFO "User selected file picker" logger INFO "User selected file picker"
file_picker file_picker

View file

@ -353,13 +353,12 @@ list_mods(){
local name local name
local base_dir local base_dir
local size local size
local mods
if [[ -z $(installed_mods) ]] || [[ -z $(find $workshop_dir -maxdepth 2 -name "*.cpp" | grep .cpp) ]]; then if [[ -z $(installed_mods) ]] || [[ -z $(find $workshop_dir -maxdepth 2 -name "*.cpp" | grep .cpp) ]]; then
printf "No mods currently installed or incorrect path set." printf "No mods currently installed or incorrect path set."
logger WARN "Found no locally installed mods" logger WARN "Found no locally installed mods"
return 1 return 1
else else
mods=$(for dir in $(find $game_dir/* -maxdepth 1 -type l); do for dir in $(find $game_dir/* -maxdepth 1 -type l); do
symlink=$(basename $dir) symlink=$(basename $dir)
sep="␞" sep="␞"
name=$(awk -F\" '/name/ {print $2}' "${dir}/meta.cpp") name=$(awk -F\" '/name/ {print $2}' "${dir}/meta.cpp")
@ -367,14 +366,7 @@ list_mods(){
size=$(du -s "$(readlink -f "$game_dir/$symlink")" | awk '{print $1}') size=$(du -s "$(readlink -f "$game_dir/$symlink")" | awk '{print $1}')
size=$(python3 -c "n=($size/1024) +.005; print(round(n,4))") size=$(python3 -c "n=($size/1024) +.005; print(round(n,4))")
LC_NUMERIC=C printf "%s$sep%s$sep%s$sep%3.3f\n" "$name" "$symlink" "$base_dir" "$size" LC_NUMERIC=C printf "%s$sep%s$sep%s$sep%3.3f\n" "$name" "$symlink" "$base_dir" "$size"
done | sort -k1) done | sort -k1
# user may have manually pruned mods out-of-band
# handle directory detritus but no actual mods
if [[ -z $mods ]]; then
printf "No mods currently installed or incorrect path set."
return 1
fi
echo "$mods"
fi fi
} }
installed_mods(){ installed_mods(){