1{ lib
2, stdenv
3, fetchFromGitHub
4, SDL2
5, SDL2_image
6, rtaudio
7, rtmidi
8, glew
9, alsa-lib
10, cmake
11, pkg-config
12}:
13
14stdenv.mkDerivation rec {
15 pname = "theforceengine";
16 version = "1.09.540";
17
18 src = fetchFromGitHub {
19 owner = "luciusDXL";
20 repo = "TheForceEngine";
21 rev = "v${version}";
22 sha256 = "sha256-s54X6LZdk7daIlQPHyRBxc8MLS6bzkkypi4m1m+xK80=";
23 };
24
25 nativeBuildInputs = [
26 cmake
27 pkg-config
28 ];
29
30 buildInputs = [
31 SDL2
32 SDL2_image
33 rtaudio
34 rtmidi
35 glew
36 alsa-lib
37 ];
38
39 prePatch = ''
40 # use nix store path instead of hardcoded /usr/share for support data
41 substituteInPlace TheForceEngine/TFE_FileSystem/paths-posix.cpp \
42 --replace "/usr/share" "$out/share"
43 '';
44
45 meta = with lib; {
46 description = "Modern \"Jedi Engine\" replacement supporting Dark Forces, mods, and in the future Outlaws.";
47 homepage = "https://theforceengine.github.io";
48 license = licenses.gpl2Only;
49 maintainers = with maintainers; [ devusb ];
50 platforms = [ "x86_64-linux" ];
51 };
52}