about summary refs log tree commit diff
path: root/pkgs/os-specific/darwin/dockutil/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/os-specific/darwin/dockutil/default.nix')
-rw-r--r--pkgs/os-specific/darwin/dockutil/default.nix27
1 files changed, 16 insertions, 11 deletions
diff --git a/pkgs/os-specific/darwin/dockutil/default.nix b/pkgs/os-specific/darwin/dockutil/default.nix
index d937ce8fd12a5..5e4187f07280f 100644
--- a/pkgs/os-specific/darwin/dockutil/default.nix
+++ b/pkgs/os-specific/darwin/dockutil/default.nix
@@ -1,24 +1,29 @@
-{ lib, stdenv, fetchFromGitHub }:
-
+{ lib, stdenv, fetchurl, libarchive, p7zip }:
 stdenv.mkDerivation rec {
   pname = "dockutil";
-  version = "2.0.5";
+  version = "3.0.2";
 
-  src = fetchFromGitHub {
-    owner  = "kcrawford";
-    repo   = "dockutil";
-    rev    = version;
-    sha256 = "sha256-8tDkueCTCtvxc7owp3K9Tsrn4hL79CM04zBNv7AcHgA=";
+  src = fetchurl {
+    url =
+      "https://github.com/kcrawford/dockutil/releases/download/${version}/dockutil-${version}.pkg";
+    sha256 = "175137ea747e83ed221d60b18b712b256ed31531534cde84f679487d337668fd";
   };
 
   dontBuild = true;
 
+  nativeBuildInputs = [ libarchive p7zip ];
+
+  unpackPhase = ''
+    7z x $src
+    bsdtar -xf Payload~
+  '';
+
   installPhase = ''
     runHook preInstall
-
     mkdir -p $out/bin
-    install -Dm755 scripts/dockutil -t $out/bin
-
+    mkdir -p $out/usr/local/bin
+    install -Dm755 usr/local/bin/dockutil -t $out/usr/local/bin
+    ln -rs $out/usr/local/bin/dockutil $out/bin/dockutil
     runHook postInstall
   '';