about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/tools/analysis/rizin/jsdec.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/tools/analysis/rizin/jsdec.nix')
-rw-r--r--nixpkgs/pkgs/development/tools/analysis/rizin/jsdec.nix33
1 files changed, 23 insertions, 10 deletions
diff --git a/nixpkgs/pkgs/development/tools/analysis/rizin/jsdec.nix b/nixpkgs/pkgs/development/tools/analysis/rizin/jsdec.nix
index df291d169eb5..a1c0bc7ed67f 100644
--- a/nixpkgs/pkgs/development/tools/analysis/rizin/jsdec.nix
+++ b/nixpkgs/pkgs/development/tools/analysis/rizin/jsdec.nix
@@ -8,28 +8,41 @@
 , openssl
 }:
 
-stdenv.mkDerivation rec {
+let
+  libquickjs = fetchFromGitHub {
+    owner = "frida";
+    repo = "quickjs";
+    rev = "c81f05c9859cea5f83a80057416a0c7affe9b876";
+    hash = "sha256-nAws0ae9kAwvCFcw/yR7XRMwU8EbHoq7kp7iBFpZEZc=";
+  };
+in
+stdenv.mkDerivation (finalAttrs: {
   pname = "jsdec";
-  version = "0.6.0";
+  version = "0.7.0";
 
   src = fetchFromGitHub {
     owner = "rizinorg";
     repo = "jsdec";
-    rev = "v${version}";
-    hash = "sha256-iVaxxPBIJRhZrmejAOL/Fb4k66mGsZOBs7UikgMj5WA=";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-UuFA0YKH+0n4Ec3CTiSUFlKXMY4k+tooaEFJYrj6Law=";
   };
 
-  nativeBuildInputs = [ meson ninja pkg-config ];
-  preConfigure = ''
-    cd p
+  postUnpack = ''
+    cp -r --no-preserve=mode ${libquickjs} $sourceRoot/subprojects/libquickjs
+  '';
+
+  postPatch = ''
+    cp subprojects/packagefiles/libquickjs/* subprojects/libquickjs
   '';
-  mesonFlags = [ "-Djsc_folder=.." ];
+
+  nativeBuildInputs = [ meson ninja pkg-config ];
   buildInputs = [ openssl rizin ];
 
   meta = with lib; {
     description = "Simple decompiler for Rizin";
-    homepage = src.meta.homepage;
+    homepage = finalAttrs.src.meta.homepage;
+    changelog = "${finalAttrs.src.meta.homepage}/releases/tag/${finalAttrs.src.rev}";
     license = with licenses; [ asl20 bsd3 mit ];
     maintainers = with maintainers; [ chayleaf ];
   };
-}
+})