biome: 1.9.2 -> 1.9.3
[NixPkgs.git] / pkgs / applications / misc / bloodhound / default.nix
blob175b293c9d885d19c79afda7b166ca5f1d8fe3b3
1 { lib
2 , stdenv
3 , fetchzip
4 , makeWrapper
5 , alsa-lib
6 , at-spi2-atk
7 , at-spi2-core
8 , atk
9 , cairo
10 , cups
11 , dbus
12 , expat
13 , fontconfig
14 , freetype
15 , gdk-pixbuf
16 , glib
17 , gtk3
18 , libGL
19 , libappindicator-gtk3
20 , libdrm
21 , libnotify
22 , libpulseaudio
23 , libuuid
24 , libxcb
25 , libxkbcommon
26 , libxshmfence
27 , mesa
28 , nspr
29 , nss
30 , pango
31 , systemd
32 , udev
33 , unzip
34 , xdg-utils
35 , xorg
37 stdenv.mkDerivation (finalAttrs: {
38   pname = "bloodhound";
39   version = "4.3.1";
41   src = fetchzip {
42     url = "https://github.com/BloodHoundAD/BloodHound/releases/download/v${finalAttrs.version}/BloodHound-linux-x64.zip";
43     hash = "sha256-gGfZ5Mj8rmz3dwKyOitRExkgOmSVDOqKpPxvGlE4izw=";
44   };
46   rpath = lib.makeLibraryPath [
47     alsa-lib
48     at-spi2-atk
49     at-spi2-core
50     atk
51     cairo
52     cups
53     dbus
54     expat
55     fontconfig
56     freetype
57     gdk-pixbuf
58     glib
59     gtk3
60     libGL
61     libappindicator-gtk3
62     libdrm
63     libnotify
64     libpulseaudio
65     libuuid
66     libxcb
67     libxkbcommon
68     mesa
69     nspr
70     nss
71     pango
72     systemd
73     stdenv.cc.cc.lib
74     udev
75     xorg.libX11
76     xorg.libXScrnSaver
77     xorg.libXcomposite
78     xorg.libXcursor
79     xorg.libXdamage
80     xorg.libXext
81     xorg.libXfixes
82     xorg.libXi
83     xorg.libXrandr
84     xorg.libXrender
85     xorg.libXtst
86     xorg.libxkbfile
87     xorg.libxshmfence
88   ];
90   buildInputs = [
91     gtk3 # needed for GSETTINGS_SCHEMAS_PATH
92   ];
94   nativeBuildInputs = [ makeWrapper unzip ];
96   dontBuild = true;
98   installPhase = ''
99     runHook preInstall
100     mkdir -p $out/{bin,/lib/BloodHound}
101     mv * $out/lib/BloodHound
102     chmod +x $out/lib/BloodHound/BloodHound
104     patchelf --set-interpreter ${stdenv.cc.bintools.dynamicLinker} \
105        $out/lib/BloodHound/BloodHound --set-rpath ${finalAttrs.rpath}:$out/lib/BloodHound \
106        --add-needed libudev.so # Needed to fix trace trap (core dump)
108     makeWrapper $out/lib/BloodHound/BloodHound $out/bin/BloodHound \
109       --prefix XDG_DATA_DIRS : $GSETTINGS_SCHEMAS_PATH \
110       --suffix PATH : ${lib.makeBinPath [xdg-utils]} \
111       --append-flags "--in-process-gpu" # fix for sandbox issues
113     runHook postInstall
114   '';
116   meta = with lib; {
117     description = "Active Directory reconnaissance and attack path management tool";
118     homepage = "https://github.com/BloodHoundAD/BloodHound";
119     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
120     changelog = "https://github.com/BloodHoundAD/BloodHound/releases/tag/v${finalAttrs.version}";
121     downloadPage = "https://github.com/BloodHoundAD/BloodHound/releases";
122     license = licenses.gpl3Plus;
123     maintainers = with maintainers; [ akechishiro ];
124     platforms = [ "x86_64-linux" ];
125     mainProgram = "BloodHound";
126   };