summary refs log tree commit diff
diff options
context:
space:
mode:
authorJörg Thalheim <Mic92@users.noreply.github.com>2018-01-18 15:36:30 +0000
committerGitHub <noreply@github.com>2018-01-18 15:36:30 +0000
commit1706698b1c052f575935afc8550dce13a7c7426a (patch)
tree1721041dcab0addf68b10a5caeb4c1ce91261142
parent3b21d4d4bcdad86f01f87811066a5d44639321da (diff)
parente3b0d095913e2fa140925b5ff6d998b34c938334 (diff)
downloadnixlib-1706698b1c052f575935afc8550dce13a7c7426a.tar
nixlib-1706698b1c052f575935afc8550dce13a7c7426a.tar.gz
nixlib-1706698b1c052f575935afc8550dce13a7c7426a.tar.bz2
nixlib-1706698b1c052f575935afc8550dce13a7c7426a.tar.lz
nixlib-1706698b1c052f575935afc8550dce13a7c7426a.tar.xz
nixlib-1706698b1c052f575935afc8550dce13a7c7426a.tar.zst
nixlib-1706698b1c052f575935afc8550dce13a7c7426a.zip
Merge pull request #33824 from peterhoeg/u/physfs
physfs: 2.0.3 -> 3.0.1
-rw-r--r--pkgs/development/libraries/physfs/default.nix50
-rw-r--r--pkgs/games/d1x-rebirth/default.nix24
-rw-r--r--pkgs/games/d2x-rebirth/default.nix24
-rw-r--r--pkgs/games/dxx-rebirth/default.nix43
-rw-r--r--pkgs/games/lincity/ng.nix54
-rw-r--r--pkgs/top-level/all-packages.nix18
6 files changed, 125 insertions, 88 deletions
diff --git a/pkgs/development/libraries/physfs/default.nix b/pkgs/development/libraries/physfs/default.nix
index 43bcef0f2d3c..e29af17f35df 100644
--- a/pkgs/development/libraries/physfs/default.nix
+++ b/pkgs/development/libraries/physfs/default.nix
@@ -1,23 +1,41 @@
-{stdenv, fetchurl, cmake}:
+{ stdenv, fetchurl, cmake, doxygen
+, zlib }:
 
-stdenv.mkDerivation rec {
-  name = "physfs-2.0.3";
+let
+  generic = version: sha256:
+  stdenv.mkDerivation rec {
+    name = "physfs-${version}";
 
-  src = fetchurl {
-    url = "${meta.homepage}/downloads/${name}.tar.bz2";
-    sha256 = "0sbbyqzqhyf0g68fcvvv20n3928j0x6ik1njmhn1yigvq2bj11na";
-  };
+    src = fetchurl {
+      url = "${meta.homepage}/downloads/${name}.tar.bz2";
+      inherit sha256;
+    };
+
+    nativeBuildInputs = [ cmake doxygen ];
+
+    buildInputs = [ zlib ];
 
-  nativeBuildInputs = [ cmake ];
+    enableParallelBuilding = true;
 
-  patchPhase = ''
-    sed s,-Werror,, -i CMakeLists.txt
-  '';
+    patchPhase = ''
+      sed s,-Werror,, -i CMakeLists.txt
+    '';
 
-  meta = {
-    homepage = http://icculus.org/physfs/;
-    description = "Library to provide abstract access to various archives";
-    license = stdenv.lib.licenses.free;
-    platforms = stdenv.lib.platforms.linux;
+    doInstallCheck = true;
+
+    installCheckPhase = ''
+      ./test_physfs --version
+    '';
+
+    meta = with stdenv.lib; {
+      homepage = http://icculus.org/physfs/;
+      description = "Library to provide abstract access to various archives";
+      license = licenses.free;
+      platforms = platforms.linux;
+    };
   };
+
+in {
+  physfs_2 = generic "2.0.3" "0sbbyqzqhyf0g68fcvvv20n3928j0x6ik1njmhn1yigvq2bj11na";
+  physfs   = generic "3.0.1" "1wgj2zqpnfbnyyi1i7bq5pshcc9n5cvwlpzp8im67nb8662ryyxp";
 }
diff --git a/pkgs/games/d1x-rebirth/default.nix b/pkgs/games/d1x-rebirth/default.nix
deleted file mode 100644
index 52aec1b8a590..000000000000
--- a/pkgs/games/d1x-rebirth/default.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{stdenv, fetchurl, scons, pkgconfig, SDL, mesa, physfs, SDL_mixer }:
-
-stdenv.mkDerivation rec {
-  name = "d1x-rebirth-0.58.1";
-  src = fetchurl {
-    url = "http://www.dxx-rebirth.com/download/dxx/d1x-rebirth_v0.58.1-src.tar.gz";
-    sha256 = "13p3nfqaa78h6bl0k8mdsn90ai99wbqaj6qlsjsgsn8imficivsv";
-  };
-
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ scons SDL mesa physfs SDL_mixer ];
-
-  installPhase = ''
-    scons prefix=$out install
-  '';
-
-  meta = {
-    homepage = http://www.dxx-rebirth.com/;
-    description = "Source Port of the Descent 1 engine";
-    license = stdenv.lib.licenses.unfree;
-    platforms = with stdenv.lib.platforms; linux;
-    maintainers = with stdenv.lib.maintainers; [viric];
-  };
-}
diff --git a/pkgs/games/d2x-rebirth/default.nix b/pkgs/games/d2x-rebirth/default.nix
deleted file mode 100644
index 566b6f8cc82d..000000000000
--- a/pkgs/games/d2x-rebirth/default.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{stdenv, fetchurl, scons, pkgconfig, SDL, mesa, physfs, SDL_mixer }:
-
-stdenv.mkDerivation rec {
-  name = "d2x-rebirth-0.58.1";
-  src = fetchurl {
-    url = "http://www.dxx-rebirth.com/download/dxx/d2x-rebirth_v0.58.1-src.tar.gz";
-    sha256 = "08mg831afc1v068c0ds70lhmxk8a54494jls7s9hwf02ffhv3sx8";
-  };
-
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ scons SDL mesa physfs SDL_mixer ];
-
-  installPhase = ''
-    scons prefix=$out install
-  '';
-
-  meta = {
-    homepage = http://www.dxx-rebirth.com/;
-    description = "Source Port of the Descent 2 engine";
-    license = stdenv.lib.licenses.unfree;
-    platforms = with stdenv.lib.platforms; linux;
-    maintainers = with stdenv.lib.maintainers; [viric];
-  };
-}
diff --git a/pkgs/games/dxx-rebirth/default.nix b/pkgs/games/dxx-rebirth/default.nix
new file mode 100644
index 000000000000..9645a89b3b2c
--- /dev/null
+++ b/pkgs/games/dxx-rebirth/default.nix
@@ -0,0 +1,43 @@
+{ stdenv, fetchurl, scons, pkgconfig
+, SDL, SDL_mixer, mesa, physfs
+}:
+
+let
+  music = fetchurl {
+    url = "http://www.dxx-rebirth.com/download/dxx/res/d2xr-sc55-music.dxa";
+    sha256 = "05mz77vml396mff43dbs50524rlm4fyds6widypagfbh5hc55qdc";
+  };
+
+in stdenv.mkDerivation rec {
+  name = "dxx-rebirth-${version}";
+  version = "0.59.100";
+
+  src = fetchurl {
+    url = "http://www.dxx-rebirth.com/download/dxx/dxx-rebirth_v${version}-src.tar.gz";
+    sha256 = "0m9k34zyr8bbni9szip407mffdpwbqszgfggavgqjwq0k9c1w7ka";
+  };
+
+  nativeBuildInputs = [ pkgconfig scons ];
+
+  buildInputs = [ mesa physfs SDL SDL_mixer ];
+
+  enableParallelBuilding = true;
+
+  installPhase = ''
+    runHook preInstall
+
+    scons prefix=$out install
+    install -Dm644 ${music} $out/share/games/dxx-rebirth/d2xr-sc55-music.dxa
+    install -Dm644 -t $out/share/doc/dxx-rebirth *.txt
+
+    runHook postInstall
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Source Port of the Descent 1 and 2 engines";
+    homepage = http://www.dxx-rebirth.com/;
+    license = licenses.free;
+    maintainers = with maintainers; [ viric ];
+    platforms = with platforms; linux;
+  };
+}
diff --git a/pkgs/games/lincity/ng.nix b/pkgs/games/lincity/ng.nix
index 28fd6fe6e501..8004aa9931de 100644
--- a/pkgs/games/lincity/ng.nix
+++ b/pkgs/games/lincity/ng.nix
@@ -1,41 +1,55 @@
-{stdenv, fetchgit
-, zlib, jam, pkgconfig, gettext, libxml2, libxslt, xproto, libX11, mesa, SDL
-, SDL_mixer, SDL_image, SDL_ttf, SDL_gfx, physfs, autoconf, automake, libtool
+{ stdenv, fetchFromGitHub, autoreconfHook, jam, pkgconfig
+, zlib, libxml2, libxslt, xproto, libX11, mesa, SDL
+, SDL_mixer, SDL_image, SDL_ttf, SDL_gfx, physfs
 }:
+
 stdenv.mkDerivation rec {
   name = "lincity-ng-${version}";
   version = "2.9beta.20170715";
 
-  src = fetchgit {
-    url = "https://github.com/lincity-ng/lincity-ng";
-    rev = "0c19714b811225238f310633e59f428934185e6b";
+  src = fetchFromGitHub {
+    owner  = "lincity-ng";
+    repo   = "lincity-ng";
+    rev    = "0c19714b811225238f310633e59f428934185e6b";
     sha256 = "1gaj9fq97zmb0jsdw4rzrw34pimkmkwbfqps0glpqij4w3srz5f3";
   };
 
   hardeningDisable = [ "format" ];
 
   nativeBuildInputs = [
-    jam autoconf automake libtool pkgconfig
+    autoreconfHook jam pkgconfig
   ];
 
   buildInputs = [
-    zlib gettext libxml2 libxslt xproto libX11 mesa SDL SDL_mixer SDL_image
+    zlib libxml2 libxslt xproto libX11 mesa SDL SDL_mixer SDL_image
     SDL_ttf SDL_gfx physfs
   ];
 
-   preConfigure = ''
-     ./autogen.sh
-   '';
+  autoreconfPhase = ''
+    ./autogen.sh
+  '';
+
+  buildPhase = ''
+    runHook preBuild
+
+    AR='ar r' jam -j $NIX_BUILD_CORES
+
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    touch CREDITS
+    AR='ar r' jam install
 
-   installPhase = ''
-     touch CREDITS
-     AR='ar r' jam install
-   '';
+    runHook postInstall
+  '';
 
-  meta = {
-    description = ''City building game'';
-    license = stdenv.lib.licenses.gpl2;
-    platforms = stdenv.lib.platforms.linux;
-    maintainers = [stdenv.lib.maintainers.raskin];
+  meta = with stdenv.lib; {
+    description = "City building game";
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ raskin ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 03003605e7d3..85cf34ef9586 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -10501,7 +10501,9 @@ with pkgs;
 
   phonon-backend-vlc = callPackage ../development/libraries/phonon/backends/vlc.nix {};
 
-  physfs = callPackage ../development/libraries/physfs { };
+  inherit (callPackage ../development/libraries/physfs { })
+    physfs_2
+    physfs;
 
   pipelight = callPackage ../tools/misc/pipelight {
     stdenv = stdenv_32bit;
@@ -18084,6 +18086,7 @@ with pkgs;
   asc = callPackage ../games/asc {
     lua = lua5_1;
     libsigcxx = libsigcxx12;
+    physfs = physfs_2;
   };
 
   astromenace = callPackage ../games/astromenace { };
@@ -18191,9 +18194,13 @@ with pkgs;
 
   dwarf-therapist = dwarf-fortress-packages.dwarf-therapist;
 
-  d1x_rebirth = callPackage ../games/d1x-rebirth { };
+  dxx-rebirth = callPackage ../games/dxx-rebirth {
+    physfs = physfs_2;
+  };
+
+  d1x_rebirth = dxx-rebirth;
 
-  d2x_rebirth = callPackage ../games/d2x-rebirth { };
+  d2x_rebirth = dxx-rebirth;
 
   easyrpg-player = callPackage ../games/easyrpg-player { };
 
@@ -18329,7 +18336,10 @@ with pkgs;
 
   lincity = callPackage ../games/lincity {};
 
-  lincity_ng = callPackage ../games/lincity/ng.nix {};
+  lincity_ng = callPackage ../games/lincity/ng.nix {
+    # https://github.com/lincity-ng/lincity-ng/issues/25
+    physfs = physfs_2;
+  };
 
   liquidwar = callPackage ../games/liquidwar {
     guile = guile_1_8;