Skip to content

Commit

Permalink
Merge pull request #146713 from SuperSandro2000/keen4
Browse files Browse the repository at this point in the history
  • Loading branch information
SuperSandro2000 authored Nov 30, 2021
2 parents 1841f5f + 046ac66 commit 5d46a56
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 39 deletions.
36 changes: 0 additions & 36 deletions pkgs/games/keen4/builder.sh

This file was deleted.

35 changes: 32 additions & 3 deletions pkgs/games/keen4/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,45 @@

stdenv.mkDerivation {
name = "keen4";
builder = ./builder.sh;

dist = fetchurl {
src = fetchurl {
url = "http://tarballs.nixos.org/keen4.zip";
sha256 = "12rnc9ksl7v6l8wsxvr26ylkafzq80dbsa7yafzw9pqc8pafkhx1";
};

nativeBuildInputs = [ unzip ];

inherit dosbox;
installPhase = ''
mkdir -p $out/share/keen4
mv * $out/share/keen4
mkdir -p $out/bin
cat > $out/bin/keen4 <<EOF
#! $SHELL -e
if test -z "\$HOME"; then
echo "HOME directory not set"
exit 1
fi
# Game wants to write in the current directory, but of course we can't
# let it write in the Nix store. So create symlinks to the game files
# in ~/.keen4 and execute game from there.
mkdir -p \$HOME/.keen4
cd \$HOME/.keen4
ln -sf $out/share/keen4/* .
${dosbox}/bin/dosbox ./KEEN4E.EXE -fullscreen -exit || true
# Cleanup the symlinks.
for i in *; do
if test -L "\$i"; then
rm "\$i"
fi
done
EOF
chmod +x $out/bin/keen4
'';

meta = {
description = "Commander Keen Episode 4: Secret of the Oracle";
Expand Down

0 comments on commit 5d46a56

Please sign in to comment.