about summary refs log tree commit diff
path: root/pkgs/development/tools/java
diff options
context:
space:
mode:
authorWeijia Wang <9713184+wegank@users.noreply.github.com>2023-04-28 22:25:30 +0300
committerWeijia Wang <9713184+wegank@users.noreply.github.com>2023-04-28 22:25:30 +0300
commitab4d4f6fd55a2d17f3bd125ed08de2564525ea2d (patch)
tree9fab9cb9e241e5109129febb2dfc1d523923bbac /pkgs/development/tools/java
parent4f9626b6dd098154c6e0ead13855fe01a8829186 (diff)
jprofiler: darwin: 11.1.4 -> 13.0.2
Diffstat (limited to 'pkgs/development/tools/java')
-rw-r--r--pkgs/development/tools/java/jprofiler/default.nix23
1 files changed, 13 insertions, 10 deletions
diff --git a/pkgs/development/tools/java/jprofiler/default.nix b/pkgs/development/tools/java/jprofiler/default.nix
index e6f0232fe6818..f4c5df10386e3 100644
--- a/pkgs/development/tools/java/jprofiler/default.nix
+++ b/pkgs/development/tools/java/jprofiler/default.nix
@@ -4,7 +4,7 @@
 , makeWrapper
 , makeDesktopItem
 , copyDesktopItems
-, undmg
+, _7zz
 , jdk
 }:
 
@@ -12,9 +12,7 @@ let
   inherit (stdenv.hostPlatform) system;
   pname = "jprofiler";
 
-  # 11.1.4 is the last version which can be unpacked by undmg
-  # See: https://github.com/matthewbauer/undmg/issues/9
-  version = if stdenv.isLinux then "13.0.2" else "11.1.4";
+  version = "13.0.2";
   nameApp = "JProfiler";
 
   meta = with lib; {
@@ -33,7 +31,7 @@ let
     sha256 = "sha256-x9I7l2ctquCqUymtlQpFXE6+u0Yg773qE6MvAxvCaEE=";
   } else fetchurl {
     url = "https://download-gcdn.ej-technologies.com/jprofiler/jprofiler_macos_${lib.replaceStrings ["."] ["_"]  version}.dmg";
-    sha256 = "sha256-WDMGrDsMdY1//WMHgr+/YKSxHWt6A1dD1Pd/MuDOaz8=";
+    sha256 = "sha256-CpuFmvszMZA1+1A51swWA3maK8I8RQEYo8Z3A/CQSlA=";
   };
 
   srcIcon = fetchurl {
@@ -80,15 +78,20 @@ let
   darwin = stdenv.mkDerivation {
     inherit pname version src;
 
-    # Archive extraction via undmg fails for this particular version.
-    nativeBuildInputs = [ makeWrapper undmg ];
+    nativeBuildInputs = [ makeWrapper _7zz ];
 
-    sourceRoot = "${nameApp}.app";
+    unpackPhase = ''
+      runHook preUnpack
+      7zz x $src -x!JProfiler/\[\]
+      runHook postUnpack
+    '';
+
+    sourceRoot = "${nameApp}";
 
     installPhase = ''
       runHook preInstall
-      mkdir -p $out/{Applications/${nameApp}.app,bin}
-      cp -R . $out/Applications/${nameApp}.app
+      mkdir -p $out/{Applications,bin}
+      cp -R ${nameApp}.app $out/Applications/
       makeWrapper $out/Applications/${nameApp}.app/Contents/MacOS/JavaApplicationStub $out/bin/${pname}
       runHook postInstall
     '';