44 lines
1.0 KiB
Nix
44 lines
1.0 KiB
Nix
{
|
|
lib,
|
|
fetchFromGitHub,
|
|
buildGhidraExtension,
|
|
ghidra,
|
|
ant,
|
|
}:
|
|
let
|
|
version = "2.3.1";
|
|
in
|
|
buildGhidraExtension {
|
|
pname = "wasm";
|
|
inherit version;
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "nneonneo";
|
|
repo = "ghidra-wasm-plugin";
|
|
rev = "v${version}";
|
|
hash = "sha256-aoSMNzv+TgydiXM4CbvAyu/YsxmdZPvpkZkYEE3C+V4=";
|
|
};
|
|
|
|
nativeBuildInputs = [ ant ];
|
|
|
|
configurePhase = ''
|
|
runHook preConfigure
|
|
|
|
# this doesn't really compile, it compresses sinc into sla
|
|
pushd data
|
|
ant -f build.xml -Dghidra.install.dir=${ghidra}/lib/ghidra sleighCompile
|
|
popd
|
|
|
|
runHook postConfigure
|
|
'';
|
|
|
|
meta = {
|
|
description = "Ghidra Wasm plugin with disassembly and decompilation support";
|
|
homepage = "https://github.com/nneonneo/ghidra-wasm-plugin";
|
|
downloadPage = "https://github.com/nneonneo/ghidra-wasm-plugin/releases/tag/v${version}";
|
|
changelog = "https://github.com/nneonneo/ghidra-wasm-plugin/releases/tag/v${version}";
|
|
license = lib.licenses.gpl3;
|
|
maintainers = [ lib.maintainers.BonusPlay ];
|
|
};
|
|
}
|