1 file changed +94
-0
lines changed Original file line number Diff line number Diff line change
1
+ {
2
+ autoPatchelfHook ,
3
+ copyDesktopItems ,
4
+ dbus ,
5
+ fetchurl ,
6
+ fontconfig ,
7
+ freetype ,
8
+ lib ,
9
+ libGLU ,
10
+ libxkbcommon ,
11
+ makeDesktopItem ,
12
+ stdenv ,
13
+ unzip ,
14
+ wayland ,
15
+ xcbutilimage ,
16
+ xcbutilkeysyms ,
17
+ xcbutilrenderutil ,
18
+ xcbutilwm ,
19
+ } :
20
+ stdenv . mkDerivation rec {
21
+ pname = "binaryninja-free" ;
22
+ version = "4.2.6455" ;
23
+
24
+ src = fetchurl {
25
+ url = "https://web.archive.org/web/20241209150225/https://cdn.binary.ninja/installers/binaryninja_free_linux.zip" ;
26
+ hash = "sha256-NOVuLmko8iYcJ/0fr0DNw7xPEC8EhT/SzcFWtNmjlYI=" ;
27
+ } ;
28
+
29
+ icon = fetchurl {
30
+ url = "https://raw.githubusercontent.com/Vector35/binaryninja-api/448f40be71dffa86a6581c3696627ccc1bdf74f2/docs/img/logo.png" ;
31
+ hash = "sha256-TzGAAefTknnOBj70IHe64D6VwRKqIDpL4+o9kTw0Mn4=" ;
32
+ } ;
33
+
34
+ desktopItems = [
35
+ ( makeDesktopItem {
36
+ name = "com.vector35.binaryninja" ;
37
+ desktopName = "Binary Ninja Free" ;
38
+ comment = "A Reverse Engineering Platform" ;
39
+ exec = "binaryninja" ;
40
+ icon = "binaryninja" ;
41
+ mimeTypes = [
42
+ "application/x-binaryninja"
43
+ "x-scheme-handler/binaryninja"
44
+ ] ;
45
+ categories = [ "Utility" ] ;
46
+ } )
47
+ ] ;
48
+
49
+ nativeBuildInputs = [
50
+ unzip
51
+ autoPatchelfHook
52
+ copyDesktopItems
53
+ ] ;
54
+
55
+ buildInputs = [
56
+ dbus
57
+ fontconfig
58
+ freetype
59
+ libGLU
60
+ libxkbcommon
61
+ stdenv . cc . cc . lib
62
+ wayland
63
+ xcbutilimage
64
+ xcbutilkeysyms
65
+ xcbutilrenderutil
66
+ xcbutilwm
67
+ ] ;
68
+
69
+ installPhase = ''
70
+ runHook preInstall
71
+ mkdir -p $out/
72
+ cp -R . $out/
73
+
74
+ mkdir $out/bin
75
+ ln -s $out/binaryninja $out/bin/binaryninja
76
+
77
+ install -Dm644 ${ icon } $out/share/icons/hicolor/256x256/apps/binaryninja.png
78
+
79
+ runHook postInstall
80
+ '' ;
81
+
82
+ meta = {
83
+ description = "Interactive decompiler, disassembler, debugger" ;
84
+ homepage = "https://binary.ninja/" ;
85
+ license = {
86
+ fullName = "Binary Ninja Free Software License" ;
87
+ url = "https://docs.binary.ninja/about/license.html#free-license" ;
88
+ free = false ;
89
+ } ;
90
+ mainProgram = "binaryninja" ;
91
+ maintainers = with lib . maintainers ; [ scoder12 ] ;
92
+ platforms = [ "x86_64-linux" ] ;
93
+ } ;
94
+ }
0 commit comments