summary refs log tree commit diff
path: root/pkgs/games/xsokoban
diff options
context:
space:
mode:
authorJoachim Fasting <joachifm@fastmail.fm>2015-05-01 16:56:53 +0200
committerJoachim Fasting <joachifm@fastmail.fm>2015-11-24 14:45:15 +0100
commit241515a6b75b1618e8c1eba0a7ff48f27f7757a1 (patch)
tree8d40ca38985a8ba415fd07bb0ad586f94ecd68fb /pkgs/games/xsokoban
parent048f00a9dceb2e1098d8309c9378e1aae55bf7d4 (diff)
downloadnixpkgs-241515a6b75b1618e8c1eba0a7ff48f27f7757a1.tar
nixpkgs-241515a6b75b1618e8c1eba0a7ff48f27f7757a1.tar.gz
nixpkgs-241515a6b75b1618e8c1eba0a7ff48f27f7757a1.tar.bz2
nixpkgs-241515a6b75b1618e8c1eba0a7ff48f27f7757a1.tar.lz
nixpkgs-241515a6b75b1618e8c1eba0a7ff48f27f7757a1.tar.xz
nixpkgs-241515a6b75b1618e8c1eba0a7ff48f27f7757a1.tar.zst
nixpkgs-241515a6b75b1618e8c1eba0a7ff48f27f7757a1.zip
xsokoban: reimplement using mkDerivation
Diffstat (limited to 'pkgs/games/xsokoban')
-rw-r--r--pkgs/games/xsokoban/default.nix65
1 files changed, 30 insertions, 35 deletions
diff --git a/pkgs/games/xsokoban/default.nix b/pkgs/games/xsokoban/default.nix
index 9d442329a24..e6686a658a9 100644
--- a/pkgs/games/xsokoban/default.nix
+++ b/pkgs/games/xsokoban/default.nix
@@ -1,51 +1,46 @@
-a @ {libX11, xproto, libXpm, libXt, ...} :
-let
-  fetchurl = a.fetchurl;
+{ stdenv, fetchurl, libX11, xproto, libXpm, libXt }:
+
+stdenv.mkDerivation rec {
+  name = "xsokoban-${version}";
+  version = "3.3c";
 
-  version = a.lib.attrByPath ["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";
+    url = "http://www.cs.cornell.edu/andru/release/${name}.tar.gz";
     sha256 = "006lp8y22b9pi81x1a9ldfgkl1fbmkdzfw0lqw5y9svmisbafbr9";
   };
 
-  inherit buildInputs;
-  configureFlags = [];
-
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["preConfigure" "doConfigure" "preBuild" "doMakeInstall"];
+  buildInputs = [ libX11 xproto libXpm libXt ];
 
-  preConfigure = a.fullDepEntry (''
+  preConfigure = ''
     sed -e 's/getline/my_getline/' -i score.c
-    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${a.libXpm}/include/X11"
+    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${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 ".xsokoban-score"' >> config.h
-    echo '#define LOCKFILE ".xsokoban-score-lock"' >> config.h
+    cat >>config.h <<EOF
+    #define HERE "@nixos-packaged"
+    #define WWW 0
+    #define OWNER "'$(whoami)'"
+    #define ROOTDIR "'$out/lib/xsokoban'"
+    #define ANYLEVEL 1
+    #define SCOREFILE ".xsokoban-score"
+    #define LOCKFILE ".xsokoban-score-lock"
+    EOF
 
-    sed -e 's/getpass[(][^)]*[)]/PASSWORD/' -i main.c
-    sed -e '/if [(]owner[)]/iowner=1;' -i main.c
-  '') ["minInit" "doUnpack"];
+    sed -i main.c \
+      -e 's/getpass[(][^)]*[)]/PASSWORD/' \
+      -e '/if [(]owner[)]/iowner=1;'
+  '';
 
-  preBuild = a.fullDepEntry (''
-    sed -e "s@/usr/local/@$out/@" -i Makefile
-    sed -e "s@ /bin/@ @" -i Makefile
+  preBuild = ''
+    sed -i Makefile \
+      -e "s@/usr/local/@$out/@" \
+      -e "s@ /bin/@ @"
     mkdir -p $out/bin $out/share $out/man/man1 $out/lib
-  '') ["minInit" "doConfigure" "defEnsureDir"];
+  '';
 
-  name = "xsokoban-" + version;
-  meta = {
+  meta = with stdenv.lib; {
     description = "X sokoban";
-    license = a.stdenv.lib.licenses.publicDomain;
-    maintainers = [ a.stdenv.lib.maintainers.raskin ];
+    license = licenses.publicDomain;
+    maintainers = [ maintainers.raskin ];
   };
 }