summary refs log tree commit diff
path: root/pkgs/games/commandergenius
diff options
context:
space:
mode:
authorHans-Christian Esperer <hc@hcesperer.org>2016-07-13 19:24:18 +0200
committerHans-Christian Esperer <hc@hcesperer.org>2016-07-15 12:54:52 +0200
commit88154e2877c1f85029894507deb20e51d07069b1 (patch)
treecf4a8433451c1b1d3718cdbad665df515b28879d /pkgs/games/commandergenius
parent2ad0a84751c64ca30e06ea3d591660b841a3778f (diff)
downloadnixlib-88154e2877c1f85029894507deb20e51d07069b1.tar
nixlib-88154e2877c1f85029894507deb20e51d07069b1.tar.gz
nixlib-88154e2877c1f85029894507deb20e51d07069b1.tar.bz2
nixlib-88154e2877c1f85029894507deb20e51d07069b1.tar.lz
nixlib-88154e2877c1f85029894507deb20e51d07069b1.tar.xz
nixlib-88154e2877c1f85029894507deb20e51d07069b1.tar.zst
nixlib-88154e2877c1f85029894507deb20e51d07069b1.zip
commandergenius: init at 194beta
Diffstat (limited to 'pkgs/games/commandergenius')
-rw-r--r--pkgs/games/commandergenius/default.nix54
1 files changed, 54 insertions, 0 deletions
diff --git a/pkgs/games/commandergenius/default.nix b/pkgs/games/commandergenius/default.nix
new file mode 100644
index 000000000000..007167dc696c
--- /dev/null
+++ b/pkgs/games/commandergenius/default.nix
@@ -0,0 +1,54 @@
+{ lib, stdenv, fetchFromGitHub, SDL2, SDL2_image, pkgconfig
+, libvorbis, libogg, mesa, boost, curl, zlib, cmake }:
+
+
+stdenv.mkDerivation rec {
+  name = "commandergenius-${version}";
+  version = "194beta";
+
+  src = fetchFromGitHub {
+    owner = "gerstrong";
+    repo = "Commander-Genius";
+    rev = "v${version}";
+    sha256 = "0qxqzlmadxklrhxilbqj7y94fmbv0byj6vgpl59lb77lgs4y4x47";
+  };
+
+  buildInputs = [ SDL2 SDL2_image pkgconfig libvorbis libogg mesa boost curl zlib cmake ];
+
+  patchPhase = ''
+    cat >> lib/GsKit/CMakeLists.txt <<EOF
+    execute_process(COMMAND sdl2-config --cflags
+      OUTPUT_VARIABLE CFLAGS)
+    string(REGEX REPLACE "^-I" "" CFLAGS2 \''${CFLAGS})
+    string(REGEX REPLACE " .*" "" SDLINC \''${CFLAGS2})
+    INCLUDE_DIRECTORIES(\''${SDLINC})
+    EOF
+  '';
+
+  configurePhase = ''
+    cmake -DUSE_SDL2=yes -DBUILD_TARGET=LINUX -DCMAKE_INSTALL_PREFIX:PATH=$out -DCPACK_PACKAGE_INSTALL_DIRECTORY=$out
+    sed -i 's_/usr/share_$out_g' cmake_install.cmake
+    sed -i 's_/usr/share_$out_g' src/cmake_install.cmake
+  '';
+
+  installTargets = [ ];
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp src/CGeniusExe $out/bin
+  '';
+
+  meta = {
+    description = "Modern Interpreter for the Commander Keen Games";
+    longdescription = ''
+      Commander Genius is an open-source clone of
+      Commander Keen which allows you to play
+      the games, and some of the mods
+      made for it. All of the original data files
+      are required to do so
+    '';
+    homepage = "https://github.com/gerstrong/Commander-Genius";
+    maintainers = with stdenv.lib.maintainers; [ hce ]; 
+    license = stdenv.lib.licenses.gpl2;
+  };
+}