diff --git a/pkgs/all-packages.nix b/pkgs/all-packages.nix index a78c36c..4081d2c 100644 --- a/pkgs/all-packages.nix +++ b/pkgs/all-packages.nix @@ -10,4 +10,5 @@ sim65 = pkgs.callPackage ./sim65.nix { }; substituteSubset = pkgs.callPackage ./substitute-subset.nix { }; unbted = pkgs.callPackage ./unbted.nix { }; + bytecode-viewer = pkgs.callPackage ./bytecode-viewer.nix { }; } diff --git a/pkgs/bytecode-viewer.nix b/pkgs/bytecode-viewer.nix new file mode 100644 index 0000000..6b53023 --- /dev/null +++ b/pkgs/bytecode-viewer.nix @@ -0,0 +1,40 @@ +{ stdenv +, lib +, fetchFromGitHub +, jre +, makeWrapper +, maven +}: + +maven.buildMavenPackage rec { + pname = "bytecode-viewer"; + version = "2.12"; + + src = fetchFromGitHub { + owner = "Konloch"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-opAUmkEcWPOrcxAL+I1rBQXwHmvzbu0+InTnsg9r+z8="; + }; + + mvnHash = "sha256-gmERhg7SJACJk2L/l8fF1LkG7q4WAJOJA8qnHMV5Ubc="; + + nativeBuildInputs = [ makeWrapper ]; + + installPhase = '' + mkdir -pv $out/share/java $out/bin + cp target/Bytecode-Viewer-${version}.jar $out/share/java/${pname}.jar + + makeWrapper ${jre}/bin/java $out/bin/bytecode-viewer \ + --add-flags "-Djava.security.manager=allow" \ + --add-flags "-jar $out/share/java/${pname}.jar" + ''; + + meta = with lib; { + homepage = "https://github.com/Konloch/bytecode-viewer"; + description = "A Java 8+ Jar & Android APK Reverse Engineering Suite (Decompiler, Editor, Debugger & More) "; + license = licenses.gpl3; + platforms = platforms.all; # Uses a 'universal' jar + maintainers = with maintainers; [ infinidoge ]; + }; +}