diff options
Diffstat (limited to 'pkgs/games/commandergenius/default.nix')
-rw-r--r-- | pkgs/games/commandergenius/default.nix | 54 |
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; + }; +} |