summary refs log tree commit diff
path: root/pkgs/games/xsokoban
diff options
context:
space:
mode:
authorMichael Raskin <7c6f434c@mail.ru>2009-01-11 22:05:19 +0000
committerMichael Raskin <7c6f434c@mail.ru>2009-01-11 22:05:19 +0000
commit490c7d417e193b1008d3dbe72a2860d6b6c21d7d (patch)
tree79737428c8f7ee6c451bf0870abe12526b9f9e1e /pkgs/games/xsokoban
parent7807b747745dcd2031f50f5bee54bd87188d1450 (diff)
downloadnixpkgs-490c7d417e193b1008d3dbe72a2860d6b6c21d7d.tar
nixpkgs-490c7d417e193b1008d3dbe72a2860d6b6c21d7d.tar.gz
nixpkgs-490c7d417e193b1008d3dbe72a2860d6b6c21d7d.tar.bz2
nixpkgs-490c7d417e193b1008d3dbe72a2860d6b6c21d7d.tar.lz
nixpkgs-490c7d417e193b1008d3dbe72a2860d6b6c21d7d.tar.xz
nixpkgs-490c7d417e193b1008d3dbe72a2860d6b6c21d7d.tar.zst
nixpkgs-490c7d417e193b1008d3dbe72a2860d6b6c21d7d.zip
Added XSokoban
svn path=/nixpkgs/trunk/; revision=13737
Diffstat (limited to 'pkgs/games/xsokoban')
-rw-r--r--pkgs/games/xsokoban/default.nix48
1 files changed, 48 insertions, 0 deletions
diff --git a/pkgs/games/xsokoban/default.nix b/pkgs/games/xsokoban/default.nix
new file mode 100644
index 00000000000..733c7646a6e
--- /dev/null
+++ b/pkgs/games/xsokoban/default.nix
@@ -0,0 +1,48 @@
+a :  
+let 
+  fetchurl = a.fetchurl;
+
+  version = a.lib.getAttr ["version"] "3.3c" a; 
+  buildInputs = with a; [
+    a.libX11 a.xproto a.libXpm a.libXt
+  ];
+in
+rec {
+  src = fetchurl {
+    url = "http://www.cs.cornell.edu/andru/release/xsokoban-${version}.tar.gz";
+    sha256 = "006lp8y22b9pi81x1a9ldfgkl1fbmkdzfw0lqw5y9svmisbafbr9";
+  };
+
+  inherit buildInputs;
+  configureFlags = [];
+
+  /* doConfigure should be removed if not needed */
+  phaseNames = ["preConfigure" "doConfigure" "preBuild" "doMakeInstall"];
+
+  preConfigure = a.FullDepEntry (''
+    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${a.libXpm}/include/X11"
+    for i in  $NIX_CFLAGS_COMPILE; do echo $i; ls ''${i#-I}; done
+    chmod a+rw config.h
+    echo '#define HERE "@nixos-packaged"' >> config.h
+    echo '#define WWW 0' >> config.h
+    echo '#define OWNER "'$(whoami)'"' >> config.h
+    echo '#define ROOTDIR "'$out/lib/xsokoban'"' >> config.h
+    echo '#define ANYLEVEL 1' >> config.h
+    echo '#define SCOREFILE "/tmp/.xsokoban-score"' >> config.h
+    echo '#define LOCKFILE "/tmp/.xsokoban-score-lock"' >> config.h
+
+    sed -e 's/getpass[(][^)]*[)]/PASSWORD/' -i main.c
+    sed -e '/if [(]owner[)]/iowner=1;' -i main.c
+  '') ["minInit" "doUnpack"];
+      
+  preBuild = a.FullDepEntry (''
+    sed -e "s@/usr/local/@$out/@" -i Makefile
+    sed -e "s@ /bin/@ @" -i Makefile 
+    ensureDir $out/bin $out/share $out/man/man1 $out/lib
+  '') ["minInit" "doConfigure" "defEnsureDir"];
+
+  name = "xsokoban-" + version;
+  meta = {
+    description = "X sokoban";
+  };
+}