100 lines
2.1 KiB
Nix
100 lines
2.1 KiB
Nix
{
|
|
autoPatchelfHook,
|
|
copyDesktopItems,
|
|
dbus,
|
|
fetchurl,
|
|
fontconfig,
|
|
freetype,
|
|
lib,
|
|
libGLU,
|
|
libxkbcommon,
|
|
makeDesktopItem,
|
|
stdenv,
|
|
unzip,
|
|
wayland,
|
|
xcbutilimage,
|
|
xcbutilkeysyms,
|
|
xcbutilrenderutil,
|
|
xcbutilwm,
|
|
openssl,
|
|
qt6,
|
|
}:
|
|
stdenv.mkDerivation rec {
|
|
pname = "binaryninja";
|
|
version = "5.1.8104";
|
|
|
|
src = ./binaryninja_linux_stable_personal.zip;
|
|
|
|
icon = fetchurl {
|
|
url = "https://raw.githubusercontent.com/Vector35/binaryninja-api/448f40be71dffa86a6581c3696627ccc1bdf74f2/docs/img/logo.png";
|
|
hash = "sha256-TzGAAefTknnOBj70IHe64D6VwRKqIDpL4+o9kTw0Mn4=";
|
|
};
|
|
|
|
desktopItems = [
|
|
(makeDesktopItem {
|
|
name = "com.vector35.binaryninja";
|
|
desktopName = "Binary Ninja Personal";
|
|
comment = "A Reverse Engineering Platform";
|
|
exec = "binaryninja";
|
|
icon = "binaryninja";
|
|
mimeTypes = [
|
|
"application/x-binaryninja"
|
|
"x-scheme-handler/binaryninja"
|
|
];
|
|
categories = [ "Utility" ];
|
|
})
|
|
];
|
|
|
|
nativeBuildInputs = [
|
|
unzip
|
|
autoPatchelfHook
|
|
copyDesktopItems
|
|
qt6.wrapQtAppsHook
|
|
];
|
|
|
|
buildInputs = [
|
|
dbus
|
|
fontconfig
|
|
freetype
|
|
libGLU
|
|
libxkbcommon
|
|
stdenv.cc.cc.lib
|
|
wayland
|
|
xcbutilimage
|
|
xcbutilkeysyms
|
|
xcbutilrenderutil
|
|
xcbutilwm
|
|
openssl
|
|
qt6.qtbase
|
|
qt6.qtdeclarative
|
|
qt6.qtshadertools
|
|
qt6.qtsvg
|
|
];
|
|
|
|
installPhase = ''
|
|
runHook preInstall
|
|
mkdir -p $out/
|
|
cp -R . $out/
|
|
|
|
mkdir $out/bin
|
|
ln -s $out/binaryninja $out/bin/binaryninja
|
|
|
|
install -Dm644 ${icon} $out/share/icons/hicolor/256x256/apps/binaryninja.png
|
|
|
|
runHook postInstall
|
|
'';
|
|
|
|
meta = {
|
|
changelog = "https://binary.ninja/changelog/#${lib.replaceStrings [ "." ] [ "-" ] version}";
|
|
description = "Interactive decompiler, disassembler, debugger";
|
|
homepage = "https://binary.ninja/";
|
|
license = {
|
|
fullName = "Binary Ninja Personal Software License";
|
|
url = "https://docs.binary.ninja/about/license.html#non-commercial-student-license-named";
|
|
free = false;
|
|
};
|
|
mainProgram = "binaryninja";
|
|
platforms = [ "x86_64-linux" ];
|
|
};
|
|
}
|