From fe6c0ff6b2bbd1f1b1485d32867536fdf9042d3e Mon Sep 17 00:00:00 2001 From: Nikolay Korotkiy Date: Wed, 22 Jul 2020 11:39:55 +0300 Subject: [PATCH 1/2] hyx: 0.1.5 -> 2020-06-09 --- pkgs/tools/text/hyx/default.nix | 9 ++++----- pkgs/tools/text/hyx/no-wall-by-default.patch | 11 ----------- 2 files changed, 4 insertions(+), 16 deletions(-) delete mode 100644 pkgs/tools/text/hyx/no-wall-by-default.patch diff --git a/pkgs/tools/text/hyx/default.nix b/pkgs/tools/text/hyx/default.nix index 83fdabb8f46f..6553e935fe8e 100644 --- a/pkgs/tools/text/hyx/default.nix +++ b/pkgs/tools/text/hyx/default.nix @@ -1,15 +1,14 @@ { lib, stdenv, fetchurl }: stdenv.mkDerivation rec { - name = "hyx-0.1.5"; + pname = "hyx"; + version = "2020-06-09"; src = fetchurl { - url = "https://yx7.cc/code/hyx/${name}.tar.xz"; - sha256 = "0gd8fbdyw12jwffa5dgcql4ry22xbdhqdds1qwzk1rkcrkgnc1mg"; + url = "https://yx7.cc/code/hyx/hyx-${lib.replaceStrings [ "-" ] [ "." ] version}.tar.xz"; + sha256 = "1x8dmll93hrnj24kn5knpwj36y6r1v2ygwynpjwrg2hwd4c1a8hi"; }; - patches = [ ./no-wall-by-default.patch ]; - installPhase = '' install -vD hyx $out/bin/hyx ''; diff --git a/pkgs/tools/text/hyx/no-wall-by-default.patch b/pkgs/tools/text/hyx/no-wall-by-default.patch deleted file mode 100644 index 48ee20eff179..000000000000 --- a/pkgs/tools/text/hyx/no-wall-by-default.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- hyx-0.1.5.org/Makefile 2018-06-02 17:14:37.000000000 +0100 -+++ hyx-0.1.5/Makefile 2018-11-10 09:25:49.569961762 +0000 -@@ -1,7 +1,7 @@ - - all: CFLAGS ?= -O2 -Wl,-s \ - -Wl,-z,relro,-z,now -fpic -pie -D_FORTIFY_SOURCE=2 -fstack-protector-all --all: CFLAGS += -std=c99 -pedantic -Wall -Wextra -DNDEBUG -+all: CFLAGS += -std=c99 -DNDEBUG - all: hyx - - debug: CFLAGS ?= -O0 -g \ From f585a26878ea415e3b2c65b34fe1bdf5e5559795 Mon Sep 17 00:00:00 2001 From: Nikolay Korotkiy Date: Wed, 22 Jul 2020 12:35:54 +0300 Subject: [PATCH 2/2] hyx: enable on darwin --- pkgs/tools/text/hyx/default.nix | 16 +++++++++++++-- pkgs/tools/text/hyx/memstream.patch | 31 +++++++++++++++++++++++++++++ 2 files changed, 45 insertions(+), 2 deletions(-) create mode 100644 pkgs/tools/text/hyx/memstream.patch 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; }; } diff --git a/pkgs/tools/text/hyx/memstream.patch b/pkgs/tools/text/hyx/memstream.patch new file mode 100644 index 000000000000..a02509ced762 --- /dev/null +++ b/pkgs/tools/text/hyx/memstream.patch @@ -0,0 +1,31 @@ +diff -Naur hyx-2020.06.09.org/Makefile hyx-2020.06.09/Makefile +--- hyx-2020.06.09.org/Makefile 2020-06-09 15:19:50.000000000 +0300 ++++ hyx-2020.06.09/Makefile 2020-07-22 11:46:40.000000000 +0300 +@@ -1,6 +1,6 @@ + + all: CFLAGS ?= -O2 -Wl,-s \ +- -Wl,-z,relro,-z,now -fpic -pie -D_FORTIFY_SOURCE=2 -fstack-protector-all ++ -D_FORTIFY_SOURCE=2 -fstack-protector-all + all: CFLAGS += -std=c99 -pedantic -Wall -Wextra -DNDEBUG + all: hyx + +@@ -13,7 +13,7 @@ + hyx: *.h *.c + $(CC) \ + $(CFLAGS) \ +- hyx.c common.c blob.c history.c view.c input.c \ ++ hyx.c common.c blob.c history.c view.c input.c memstream.c \ + -o hyx + + clean: +diff -Naur hyx-2020.06.09.org/view.c hyx-2020.06.09/view.c +--- hyx-2020.06.09.org/view.c 2020-06-09 15:19:50.000000000 +0300 ++++ hyx-2020.06.09/view.c 2020-07-22 11:49:09.000000000 +0300 +@@ -4,6 +4,7 @@ + #include "view.h" + #include "input.h" + #include "ansi.h" ++#include "memstream.h" + + #include + #include