summaryrefslogtreecommitdiff
path: root/pkgs/games/dwarf-fortress/wrapper/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/games/dwarf-fortress/wrapper/default.nix')
-rw-r--r--pkgs/games/dwarf-fortress/wrapper/default.nix31
1 files changed, 11 insertions, 20 deletions
diff --git a/pkgs/games/dwarf-fortress/wrapper/default.nix b/pkgs/games/dwarf-fortress/wrapper/default.nix
index 55f08c328558..8fe83273dc4a 100644
--- a/pkgs/games/dwarf-fortress/wrapper/default.nix
+++ b/pkgs/games/dwarf-fortress/wrapper/default.nix
@@ -9,11 +9,12 @@
gawk,
dwarf-fortress,
dwarf-therapist,
+ SDL2_mixer,
enableDFHack ? false,
dfhack,
enableSoundSense ? false,
soundSense,
- jdk,
+ jre,
expect,
xvfb-run,
writeText,
@@ -181,7 +182,7 @@ lib.throwIf (enableTWBT' && !enableDFHack) "dwarf-fortress: TWBT requires DFHack
"dwarf-fortress: text mode and TWBT are mutually exclusive"
stdenv.mkDerivation
- rec {
+ {
pname = "dwarf-fortress";
version = dwarf-fortress.dfVersion;
@@ -195,6 +196,7 @@ lib.throwIf (enableTWBT' && !enableDFHack) "dwarf-fortress: TWBT requires DFHack
mkdir = "${coreutils}/bin/mkdir";
printf = "${coreutils}/bin/printf";
uname = "${coreutils}/bin/uname";
+ SDL2_mixer = "${SDL2_mixer}/lib/libSDL2_mixer.so";
};
runDF = ./dwarf-fortress.in;
@@ -233,7 +235,7 @@ lib.throwIf (enableTWBT' && !enableDFHack) "dwarf-fortress: TWBT requires DFHack
+ lib.optionalString enableSoundSense ''
substitute $runSoundSense $out/bin/soundsense \
--subst-var-by stdenv_shell ${stdenv.shell} \
- --subst-var-by jre ${jdk.jre} \
+ --subst-var-by jre ${jre} \
--subst-var dfInit
chmod 755 $out/bin/soundsense
'';
@@ -246,28 +248,17 @@ lib.throwIf (enableTWBT' && !enableDFHack) "dwarf-fortress: TWBT requires DFHack
installCheckPhase =
let
- commonExpectStatements =
- fmod:
- lib.optionalString isAtLeast50 ''
- expect "Loading audio..."
- ''
- + lib.optionalString (!fmod && isAtLeast50) ''
- expect "Failed to load fmod, trying SDL_mixer"
- ''
- + lib.optionalString isAtLeast50 ''
- expect "Audio loaded successfully!"
- ''
- + ''
- expect "Loading bindings from data/init/interface.txt"
- '';
+ commonExpectStatements = ''
+ expect "Loading bindings from data/init/interface.txt"
+ '';
dfHackExpectScript = writeText "dfhack-test.exp" (
''
spawn env NIXPKGS_DF_OPTS=debug xvfb-run $env(out)/bin/dfhack
''
- + commonExpectStatements false
+ + commonExpectStatements
+ ''
expect "DFHack is ready. Have a nice day!"
- expect "DFHack version ${version}"
+ expect "DFHack version ${dfhack'.version}"
expect "\[DFHack\]#"
send -- "lua print(os.getenv('out'))\r"
expect "$env(out)"
@@ -281,7 +272,7 @@ lib.throwIf (enableTWBT' && !enableDFHack) "dwarf-fortress: TWBT requires DFHack
''
spawn env NIXPKGS_DF_OPTS=debug,${lib.optionalString fmod "fmod"} xvfb-run $env(out)/bin/dwarf-fortress
''
- + commonExpectStatements fmod
+ + commonExpectStatements
+ ''
exit 0
''