biglybt: 3.5.0.0 -> 3.6.0.0
[NixPkgs.git] / pkgs / development / tools / misc / gf / default.nix
blob47b20cfe92e5d2affb4aef88b7a240456799d8bb
1 { lib
2 , stdenv
3 , makeWrapper
4 , fetchFromGitHub
5 , libX11
6 , pkg-config
7 , gdb
8 , freetype
9 , freetypeSupport ? true
10 , extensions ? [ ]
13 stdenv.mkDerivation {
14   pname = "gf";
15   version = "unstable-2023-08-09";
17   src = fetchFromGitHub {
18     repo = "gf";
19     owner = "nakst";
20     rev = "4190211d63c1e5378a9e841d22fa2b96a1099e68";
21     hash = "sha256-28Xgw/KxwZ94r/TXsdISeUtXHSips4irB0D+tEefMYE=";
22   };
24   nativeBuildInputs = [ makeWrapper pkg-config ];
25   buildInputs = [ libX11 gdb ]
26     ++ lib.optional freetypeSupport freetype;
28   patches = [
29     ./build-use-optional-freetype-with-pkg-config.patch
30   ];
32   postPatch = lib.forEach extensions (ext: ''
33       cp ${ext} ./${ext.name or (builtins.baseNameOf ext)}
34   '');
36    preConfigure = ''
37      patchShebangs build.sh
38    '';
40   buildPhase = ''
41     runHook preBuild
42     extra_flags=-DUI_FREETYPE_SUBPIXEL ./build.sh
43     runHook postBuild
44   '';
46   installPhase = ''
47     runHook preInstall
48     mkdir -p "$out/bin"
49     cp gf2 "$out/bin/"
50     runHook postInstall
51   '';
53   postFixup = ''
54     wrapProgram $out/bin/gf2 --prefix PATH : ${lib.makeBinPath[ gdb ]}
55   '';
57   meta = with lib; {
58     description = "A GDB Frontend";
59     homepage = "https://github.com/nakst/gf";
60     license = licenses.mit;
61     platforms = platforms.linux;
62     mainProgram = "gf2";
63     maintainers = with maintainers; [ _0xd61 ];
64   };