diff options
Diffstat (limited to 'pkgs/games/zandronum/bin.nix')
-rw-r--r-- | pkgs/games/zandronum/bin.nix | 39 |
1 files changed, 15 insertions, 24 deletions
diff --git a/pkgs/games/zandronum/bin.nix b/pkgs/games/zandronum/bin.nix index 453f7dc1c1db..cf46877ef713 100644 --- a/pkgs/games/zandronum/bin.nix +++ b/pkgs/games/zandronum/bin.nix @@ -18,10 +18,9 @@ , zlib }: -assert stdenv.system == "x86_64-linux"; - stdenv.mkDerivation rec { name = "zandronum-2.1.2"; + src = fetchurl { url = "http://zandronum.com/downloads/zandronum2.1.2-linux-x86_64.tar.bz2"; sha256 = "1f5aw2m8c0bl3lrvi2k3rrzq3q9x1ikxnxxjgh3k9qvanfn7ykbk"; @@ -49,38 +48,30 @@ stdenv.mkDerivation rec { phases = [ "unpackPhase" "installPhase" ]; - unpackPhase = '' - tar xf $src - ''; + sourceRoot = "."; installPhase = '' mkdir -p $out/bin - mkdir -p $out/share - cp * $out/share - - patchelf --set-interpreter ${stdenv.glibc}/lib/ld-linux-x86-64.so.2 $out/share/zandronum - patchelf --set-interpreter ${stdenv.glibc}/lib/ld-linux-x86-64.so.2 $out/share/zandronum-server + mkdir -p $out/share/zandronum + cp *.so *.pk3 zandronum zandronum-server $out/share/zandronum - cat > $out/bin/zandronum << EOF - #!/bin/sh + patchelf \ + --set-interpreter $(cat ${stdenv.cc}/nix-support/dynamic-linker) \ + --set-rpath $libPath:$out/share/zandronum \ + $out/share/zandronum/zandronum + patchelf \ + --set-interpreter $(cat ${stdenv.cc}/nix-support/dynamic-linker) \ + --set-rpath $libPath \ + $out/share/zandronum/zandronum-server - LD_LIBRARY_PATH=$libPath:$out/share $out/share/zandronum "\$@" - EOF - - cat > $out/bin/zandronum-server << EOF - #!/bin/sh - - LD_LIBRARY_PATH=$libPath:$out/share $out/share/zandronum-server "\$@" - EOF - - chmod +x "$out/bin/zandronum" - chmod +x "$out/bin/zandronum-server" + ln -s $out/share/zandronum/zandronum $out/bin/zandronum + ln -s $out/share/zandronum/zandronum-server $out/bin/zandronum-server ''; meta = { homepage = http://zandronum.com/; description = "multiplayer oriented port, based off Skulltag, for Doom and Doom II by id Software. Binary version for online play."; maintainer = [ stdenv.lib.maintainers.lassulus ]; + platforms = [ "x86_64-linux" ]; }; } - |