ansible-later: 2.0.22 -> 2.0.23
[NixPkgs.git] / pkgs / games / bugdom / default.nix
blob75bcad2f0db17e2a4c660304d33b3636f6a43a88
1 { lib, stdenv, fetchFromGitHub, SDL2, IOKit, Foundation, cmake, makeWrapper }:
3 stdenv.mkDerivation rec {
4   pname = "bugdom";
5   version = "1.3.2";
7   src = fetchFromGitHub {
8     owner = "jorio";
9     repo = pname;
10     rev = version;
11     sha256 = "sha256-pgms2mipW1zol35LVCuU5+7mN7CBiVGFvu1CJ3CrGU0=";
12     fetchSubmodules = true;
13   };
15   postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
16     # Expects SDL2.framework in specific location, which we don't have
17     # Passing this in cmakeFlags doesn't work because the path is hard-coded for Darwin
18     substituteInPlace cmake/FindSDL2.cmake \
19       --replace 'set(SDL2_LIBRARIES' 'set(SDL2_LIBRARIES "${SDL2}/lib/libSDL2.dylib") #'
20   '';
22   buildInputs = [
23     SDL2
24   ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
25     IOKit
26     Foundation
27   ];
29   nativeBuildInputs = [
30     cmake
31     makeWrapper
32   ];
34   cmakeFlags = lib.optionals stdenv.hostPlatform.isDarwin [
35     "-DCMAKE_OSX_ARCHITECTURES=${stdenv.hostPlatform.darwinArch}"
36     # Expects SDL2.framework in specific location, which we don't have
37     "-DSDL2_INCLUDE_DIRS=${SDL2.dev}/include/SDL2"
38   ];
40   installPhase = ''
41     runHook preInstall
43   '' + (if stdenv.hostPlatform.isDarwin then ''
44     mkdir -p $out/{bin,Applications}
45     mv {,$out/Applications/}Bugdom.app
46     ln -s $out/{Applications/Bugdom.app/Contents/MacOS,bin}/Bugdom
47   '' else ''
48     mkdir -p $out/share/bugdom
49     mv Data $out/share/bugdom
50     install -Dm755 {.,$out/bin}/Bugdom
51     wrapProgram $out/bin/Bugdom --run "cd $out/share/bugdom"
52   '') + ''
54     runHook postInstall
55   '';
57   meta = with lib; {
58     description = "A port of Bugdom, a 1999 Macintosh game by Pangea Software, for modern operating systems";
59     homepage = "https://github.com/jorio/Bugdom";
60     license = with licenses; [ cc-by-sa-40 ];
61     maintainers = with maintainers; [ lux ];
62     mainProgram = "Bugdom";
63     platforms = platforms.unix;
64   };