dfhack: 0.47.04-alpha0 -> 0.47.04-r2

As of
56e43a0dde,
dfhack gets its goodies from the directory above the Dwarf_Fortress
executable, which leads to stock Dwarf Fortress and not the built
environment where all the dfhack resources are symlinked to (typically
~/.local/share/df_linux). This causes errors like `tweak is not a
recognized command` to be reported and dfhack to lose some of its
functionality.
This commit is contained in:
Cole Helbling 2020-08-21 13:54:25 -07:00 committed by Jon
parent b6d657adbe
commit 5db4a65384
2 changed files with 18 additions and 5 deletions

View File

@ -53,10 +53,10 @@ let
prerelease = true;
};
"0.47.04" = {
dfHackRelease = "0.47.04-alpha0";
sha256 = "07056k6717mqim9skwjprqplj8jmmli6g4p2c72c8000jwnn2hjy";
xmlRev = "23500e4e9bd1885365d0a2ef1746c321c1dd50aa";
prerelease = true;
dfHackRelease = "0.47.04-r2";
sha256 = "18ppn1dqaxi6ahjzsvb9kw70rvca106a1hibhzc4rxmraypnqb89";
xmlRev = "036b662a1bbc96b4911f3cbe74dfa1243b6459bc";
prerelease = false;
};
};
@ -109,6 +109,19 @@ let
};
patches = [ ./fix-stonesense.patch ];
# As of
# https://github.com/DFHack/dfhack/commit/56e43a0dde023c5a4595a22b29d800153b31e3c4,
# dfhack gets its goodies from the directory above the Dwarf_Fortress
# executable, which leads to stock Dwarf Fortress and not the built
# environment where all the dfhack resources are symlinked to (typically
# ~/.local/share/df_linux). This causes errors like `tweak is not a
# recognized command` to be reported and dfhack to lose some of its
# functionality.
postPatch = ''
sed -i 's@cached_path = path_string.*@cached_path = getenv("DF_DIR");@' library/Process-linux.cpp
'';
nativeBuildInputs = [ cmake perl XMLLibXML XMLLibXSLT fakegit ];
# We don't use system libraries because dfhack needs old C++ ABI.
buildInputs = [ zlib SDL ]

View File

@ -1,6 +1,6 @@
shopt -s extglob
[ -z "$DF_DIR" ] && DF_DIR="${XDG_DATA_HOME:-$HOME/.local/share}/df_linux"
[ -z "$DF_DIR" ] && export DF_DIR="${XDG_DATA_HOME:-$HOME/.local/share}/df_linux"
env_dir="@env@"
exe="$env_dir/@exe@"