about summary refs log tree commit diff
path: root/pkgs/games/humblebundle/ftl.nix
blob: 5fd20a9fdde59a237f40a28cfeded23e2d7294f7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
{ stdenv, fetchHumbleBundle, makeWrapper, SDL, libGL, libdevil, freetype }:

stdenv.mkDerivation rec {
  name = "ftl-${version}";
  version = "1.5.13";

  src = fetchHumbleBundle {
    machineName = "ftlfasterthanlight_soundtrack_linux";
    downloadName = ".tar.gz";
    suffix = "tar.gz";
    md5 = "791e0bc8de73fcdcd5f461a4548ea2d8";
  };

  buildInputs = [ makeWrapper ];

  patchPhase = let
    rpath = stdenv.lib.makeLibraryPath [
      SDL "$out" stdenv.cc.cc libGL libdevil freetype
    ];
  in ''
    patchelf \
      --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
      --set-rpath "${rpath}" data/amd64/bin/FTL
  '';

  installPhase = ''
    install -vD "data/amd64/bin/FTL" "$out/libexec/ftl/FTL"
    install -vD "data/amd64/lib/libbass.so" "$out/lib/libbass.so"
    install -vD "data/amd64/lib/libbassmix.so" "$out/lib/libbassmix.so"

    mkdir -p "$out/bin" "$out/share/ftl"
    cp -vrt "$out/share/ftl" data/resources
    makeWrapper "$out/libexec/ftl/FTL" "$out/bin/ftl" \
      --run "cd '$out/share/ftl'"
  '';

  dontStrip = true;
}