diff options
-rw-r--r-- | lib/maintainers.nix | 1 | ||||
-rw-r--r-- | pkgs/games/commandergenius/default.nix | 54 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 2 |
3 files changed, 57 insertions, 0 deletions
diff --git a/lib/maintainers.nix b/lib/maintainers.nix index 3d83a0a3a1c0..a3540deb4072 100644 --- a/lib/maintainers.nix +++ b/lib/maintainers.nix @@ -163,6 +163,7 @@ guibert = "David Guibert <david.guibert@gmail.com>"; havvy = "Ryan Scheel <ryan.havvy@gmail.com>"; hbunke = "Hendrik Bunke <bunke.hendrik@gmail.com>"; + hce = "Hans-Christian Esperer <hc@hcesperer.org>"; henrytill = "Henry Till <henrytill@gmail.com>"; hiberno = "Christian Lask <hiberno@hiberno.net>"; hinton = "Tom Hinton <t@larkery.com>"; 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; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3d848de8a6d8..adf8d7fe6439 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -15347,6 +15347,8 @@ in cockatrice = qt5.callPackage ../games/cockatrice { }; + commandergenius = callPackage ../games/commandergenius { }; + confd = callPackage ../tools/system/confd { }; construoBase = lowPrio (callPackage ../games/construo { |