summary refs log tree commit diff
path: root/pkgs/applications/editors/supertux-editor/default.nix
blob: dc18bd694c696842c6a29d47c39948c4cd3a4f81 (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
39
40
{ stdenv, fetchFromGitHub, mono, gtk-sharp-2_0, pkgconfig, makeWrapper, gnome2, gtk2 }:
stdenv.mkDerivation {
  version = "git-2014-08-20";
  pname = "supertux-editor";

  src = fetchFromGitHub {
    owner = "SuperTux";
    repo = "supertux-editor";
    rev = "0c666e8ccc7daf9e9720fe79abd63f8fa979c5e5";
    sha256 = "08y5haclgxvcii3hpdvn1ah8qd0f3n8xgxxs8zryj02b8n7cz3vx";
  };

  nativeBuildInputs = [ pkgconfig ];
  buildInputs = [mono gtk-sharp-2_0 makeWrapper gnome2.libglade gtk2 ];

  installPhase = ''
    mkdir -p $out/bin $out/lib/supertux-editor
    cp *.{dll,dll.config,exe} $out/lib/supertux-editor
    makeWrapper "${mono}/bin/mono" $out/bin/supertux-editor \
      --add-flags "$out/lib/supertux-editor/supertux-editor.exe" \
      --prefix MONO_GAC_PREFIX : ${gtk-sharp-2_0} \
      --suffix LD_LIBRARY_PATH : $(echo $NIX_LDFLAGS | sed 's/ -L/:/g;s/ -rpath /:/g;s/-rpath //')

    makeWrapper "${mono}/bin/mono" $out/bin/supertux-editor-debug \
      --add-flags "--debug $out/lib/supertux-editor/supertux-editor.exe" \
      --prefix MONO_GAC_PREFIX : ${gtk-sharp-2_0} \
      --suffix LD_LIBRARY_PATH : $(echo $NIX_LDFLAGS | sed 's/ -L/:/g;s/ -rpath /:/g;s/-rpath //')
  '';

  # Always needed on Mono, otherwise nothing runs
  dontStrip = true;

  meta = with stdenv.lib; {
    description = "Level editor for SuperTux";
    homepage = "https://github.com/SuperTux/supertux-editor";
    license = licenses.gpl3Plus;
    maintainers = with maintainers; [ mathnerd314 ];
    platforms = platforms.linux;
  };
}