nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ lib, stdenv, fetchFromGitLab, SDL2, SDL2_image, pkg-config
2, libvorbis, libGL, boost, cmake, zlib, curl, SDL2_mixer, python3
3}:
4
5stdenv.mkDerivation rec {
6 pname = "commandergenius";
7 version = "2.3.3";
8
9 src = fetchFromGitLab {
10 owner = "Dringgstein";
11 repo = "Commander-Genius";
12 rev = "v${version}";
13 sha256 = "04nb23wwvc3yywz3cr6gvn02fa7psfs22ssg4wk12s08z1azvz3h";
14 };
15
16 buildInputs = [ SDL2 SDL2_image SDL2_mixer libGL boost libvorbis zlib curl python3 ];
17
18 preConfigure = ''
19 export cmakeFlags="$cmakeFlags -DCMAKE_INSTALL_PREFIX=$out -DSHAREDIR=$out/share"
20 export makeFlags="$makeFlags DESTDIR=$(out)"
21 '';
22
23 nativeBuildInputs = [ cmake pkg-config ];
24
25 postPatch = ''
26 NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE $(sdl2-config --cflags)"
27 sed -i 's,APPDIR games,APPDIR bin,' src/install.cmake
28 '';
29
30 meta = with lib; {
31 description = "Modern Interpreter for the Commander Keen Games";
32 longDescription = ''
33 Commander Genius is an open-source clone of
34 Commander Keen which allows you to play
35 the games, and some of the mods
36 made for it. All of the original data files
37 are required to do so
38 '';
39 homepage = "https://github.com/gerstrong/Commander-Genius";
40 maintainers = with maintainers; [ hce ];
41 license = licenses.gpl2;
42 platforms = platforms.linux;
43 };
44}