Merge pull request #271469 from atorres1985-contrib/ytree

ytree: 2.05 -> 2.06
This commit is contained in:
Peder Bergebakken Sundt 2023-12-07 00:43:16 +01:00 committed by GitHub
commit da4f80ad22
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 85 additions and 42 deletions

View File

@ -1,40 +0,0 @@
{ lib, stdenv
, fetchurl
, ncurses
, readline
}:
stdenv.mkDerivation rec {
pname = "ytree";
version = "2.05";
src = fetchurl {
url = "https://han.de/~werner/${pname}-${version}.tar.gz";
sha256 = "sha256-jPixUeSRO1t/epHf/VxzBhBqQkd+xE5x1ix19mq2Glc=";
};
buildInputs = [
ncurses
readline
];
# don't save timestamp, in order to improve reproducibility
postPatch = ''
substituteInPlace Makefile --replace 'gzip' 'gzip -n'
'';
installFlags = [ "DESTDIR=${placeholder "out"}" ];
preInstall = ''
mkdir -p $out/bin $out/share/man/man1
'';
meta = with lib; {
description = "A curses-based file manager similar to DOS Xtree(TM)";
homepage = "https://www.han.de/~werner/ytree.html";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ AndersonTorres ];
platforms = with platforms; unix;
};
}
# TODO: X11 support

View File

@ -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

View File

@ -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

View File

@ -3027,8 +3027,6 @@ with pkgs;
xplorer = callPackage ../applications/file-managers/xplorer { };
ytree = callPackage ../applications/file-managers/ytree { };
johnny-reborn-engine = callPackage ../applications/misc/johnny-reborn { };
johnny-reborn = callPackage ../applications/misc/johnny-reborn/with-data.nix { };