about summary refs log tree commit diff
path: root/pkgs/tools/text/hyx/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/tools/text/hyx/default.nix')
-rw-r--r--pkgs/tools/text/hyx/default.nix16
1 files changed, 14 insertions, 2 deletions
diff --git a/pkgs/tools/text/hyx/default.nix b/pkgs/tools/text/hyx/default.nix
index 6553e935fe8e..c2b055be7df9 100644
--- a/pkgs/tools/text/hyx/default.nix
+++ b/pkgs/tools/text/hyx/default.nix
@@ -1,5 +1,11 @@
 { lib, stdenv, fetchurl }:
-
+let
+  # memstream — POSIX memory streams for BSD
+  memstream = fetchurl {
+    url = "https://piumarta.com/software/memstream/memstream-0.1.tar.gz";
+    sha256 = "0kvdb897g7nyviaz72arbqijk2g2wa61cmi3l5yh48rzr49r3a3a";
+  };
+in
 stdenv.mkDerivation rec {
   pname = "hyx";
   version = "2020-06-09";
@@ -9,6 +15,12 @@ stdenv.mkDerivation rec {
     sha256 = "1x8dmll93hrnj24kn5knpwj36y6r1v2ygwynpjwrg2hwd4c1a8hi";
   };
 
+  postUnpack = lib.optionalString stdenv.isDarwin ''
+    tar --strip=1 -C $sourceRoot -xf ${memstream} --wildcards "memstream-0.1/memstream.[hc]"
+  '';
+
+  patches = lib.optional stdenv.isDarwin ./memstream.patch;
+
   installPhase = ''
     install -vD hyx $out/bin/hyx
   '';
@@ -18,6 +30,6 @@ stdenv.mkDerivation rec {
     homepage = "https://yx7.cc/code/";
     license = licenses.mit;
     maintainers = with maintainers; [ fpletz ];
-    platforms = platforms.linux;
+    platforms = with platforms; linux ++ darwin;
   };
 }