about summary refs log tree commit diff
path: root/pkgs/by-name/yt
diff options
context:
space:
mode:
authorAnderson Torres <torres.anderson.85@protonmail.com>2023-12-01 12:41:06 -0300
committerAnderson Torres <torres.anderson.85@protonmail.com>2023-12-01 12:44:16 -0300
commite6ab988be0c19258652dca0c81c6964725bba324 (patch)
tree000dd58b17c5b29d7c525a6235565fccf4b26590 /pkgs/by-name/yt
parentbb595d0a8a9058e4140e7cc11254a13197f2f543 (diff)
ytree: migrate to by-name
Diffstat (limited to 'pkgs/by-name/yt')
-rw-r--r--pkgs/by-name/yt/ytree/0001-use-prefix-and-gzip-n.diff39
-rw-r--r--pkgs/by-name/yt/ytree/package.nix46
2 files changed, 85 insertions, 0 deletions
diff --git a/pkgs/by-name/yt/ytree/0001-use-prefix-and-gzip-n.diff b/pkgs/by-name/yt/ytree/0001-use-prefix-and-gzip-n.diff
new file mode 100644
index 0000000000000..7a682ce7e4c60
--- /dev/null
+++ b/pkgs/by-name/yt/ytree/0001-use-prefix-and-gzip-n.diff
@@ -0,0 +1,39 @@
+diff -Naur ytree-2.06-old/Makefile ytree-2.06-new/Makefile
+--- ytree-2.06-old/Makefile	2023-11-26 06:15:34.000000000 -0300
++++ ytree-2.06-new/Makefile	2023-12-01 12:25:36.641958285 -0300
+@@ -11,13 +11,13 @@
+ # ADD_CFLAGS: Add -DVI_KEYS if you want vi-cursor-keys
+ #
+ 
+-DESTDIR     = /usr
++PREFIX      = /usr
+ 
+ ADD_CFLAGS  = -O # -DVI_KEYS
+ 
+-BINDIR      = $(DESTDIR)/bin
+-MANDIR      = $(DESTDIR)/share/man/man1
+-MANESDIR    = $(DESTDIR)/share/man/es/man1
++BINDIR      = $(DESTDIR)$(PREFIX)/bin
++MANDIR      = $(DESTDIR)$(PREFIX)/share/man/man1
++MANESDIR    = $(DESTDIR)$(PREFIX)/share/man/es/man1
+ 
+ 
+ # Uncomment the lines for your system (default is linux)
+@@ -224,14 +224,14 @@
+ 
+ install:	$(MAIN)
+ 		install $(MAIN) $(BINDIR)
+-		gzip -9c ytree.1 > ytree.1.gz
++		gzip -n -9c ytree.1 > ytree.1.gz
+ 		if [ -d $(MANDIR) ]; then install -m 0644 ytree.1.gz  $(MANDIR)/; fi
+-		gzip -9c ytree.1.es > ytree.1.es.gz
++		gzip -n -9c ytree.1.es > ytree.1.es.gz
+ 		if [ -d $(MANESDIR) ]; then install -m 0644 ytree.1.es.gz $(MANESDIR)/; fi
+ 
+ clean:
+ 		rm -f core *.o *~ *.orig *.bak 
+-		
++
+ clobber:	clean
+ 		rm -f $(MAIN) ytree.1.es.gz ytree.1.gz
+ 
diff --git a/pkgs/by-name/yt/ytree/package.nix b/pkgs/by-name/yt/ytree/package.nix
new file mode 100644
index 0000000000000..6307d39b6629d
--- /dev/null
+++ b/pkgs/by-name/yt/ytree/package.nix
@@ -0,0 +1,46 @@
+{ lib
+, stdenv
+, fetchurl
+, ncurses
+, readline
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "ytree";
+  version = "2.06";
+
+  src = fetchurl {
+    url = "https://han.de/~werner/ytree-${finalAttrs.version}.tar.gz";
+    hash = "sha256-QRqI779ZnnytVUC7A7Zt0zyWexRwBnp+CVQcNvnvWeY=";
+  };
+
+  patches = [
+    # Two fixups (because diff files can't be smaller):
+    # - Create PREFIX instead of using DESTDIR
+    # - use gzip without timestamp, to improve reproducibility
+    ./0001-use-prefix-and-gzip-n.diff
+  ];
+
+  buildInputs = [
+    ncurses
+    readline
+  ];
+
+  makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
+
+  installFlags = [ "PREFIX=${placeholder "out"}" ];
+
+  preInstall = ''
+    mkdir -p $out/bin $out/share/man/man1
+  '';
+
+  meta = {
+    homepage = "https://www.han.de/~werner/ytree.html";
+    description = "A curses-based file manager similar to DOS Xtree(TM)";
+    license = with lib.licenses; [ gpl2Plus ];
+    mainProgram = "ytree";
+    maintainers = with lib.maintainers; [ AndersonTorres ];
+    platforms = lib.platforms.unix;
+  };
+})
+# TODO: X11 support