biglybt: 3.5.0.0 -> 3.6.0.0
[NixPkgs.git] / pkgs / development / tools / analysis / rizin / rz-ghidra.nix
blobfcc014f9944dcb5963419e3680e0f76965acfe36
1 { lib
2 , stdenv
3 , fetchFromGitHub
4 , cmake
5 # buildInputs
6 , rizin
7 , openssl
8 , pugixml
9 # optional buildInputs
10 , enableCutterPlugin ? true
11 , cutter
12 , qt5compat
13 , qtbase
14 , qtsvg
17 stdenv.mkDerivation (finalAttrs: {
18   pname = "rz-ghidra";
19   version = "0.7.0";
21   src = fetchFromGitHub {
22     owner = "rizinorg";
23     repo = "rz-ghidra";
24     rev = "v${finalAttrs.version}";
25     hash = "sha256-W9VcKrDAh7GNRbE4eyWbtHlsYLmrjBBgVvWNyMUhlDk=";
26     fetchSubmodules = true;
27   };
29   nativeBuildInputs = [ cmake ];
30   buildInputs = [
31     openssl
32     pugixml
33     rizin
34   ] ++ lib.optionals enableCutterPlugin [
35     cutter
36     qt5compat
37     qtbase
38     qtsvg
39   ];
41   dontWrapQtApps = true;
43   cmakeFlags = [
44     "-DUSE_SYSTEM_PUGIXML=ON"
45   ] ++ lib.optionals enableCutterPlugin [
46     "-DBUILD_CUTTER_PLUGIN=ON"
47     "-DCUTTER_INSTALL_PLUGDIR=share/rizin/cutter/plugins/native"
48   ];
50   meta = with lib; {
51     # errors out with undefined symbols from Cutter
52     broken = enableCutterPlugin && stdenv.isDarwin;
53     description = "Deep ghidra decompiler and sleigh disassembler integration for rizin";
54     homepage = finalAttrs.src.meta.homepage;
55     changelog = "${finalAttrs.src.meta.homepage}/releases/tag/${finalAttrs.src.rev}";
56     license = licenses.lgpl3;
57     maintainers = with maintainers; [ chayleaf ];
58     inherit (rizin.meta) platforms;
59   };