From bd4f314bbacaaa56751be3a4769f2082be747d24 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 15 Jan 2022 14:59:49 +0100 Subject: gnu: tree: Fix problem with no output when fd3 is present. * gnu/packages/patches/tree-disable-stddata.patch: New file. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. * gnu/packages/admin.scm (tree)[source](patches): New field. --- gnu/local.mk | 3 ++- gnu/packages/admin.scm | 1 + gnu/packages/patches/tree-disable-stddata.patch | 16 ++++++++++++++++ 3 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/tree-disable-stddata.patch diff --git a/gnu/local.mk b/gnu/local.mk index f72d2680af..0eed20e7af 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1859,8 +1859,9 @@ dist_patch_DATA = \ gnu/packages/patches/tootle-glib-object-naming.patch \ gnu/packages/patches/tootle-reason-phrase.patch \ %D%/packages/patches/tor-sandbox-i686.patch \ - %D%/packages/patches/transcode-ffmpeg.patch \ + %D%/packages/patches/transcode-ffmpeg.patch \ %D%/packages/patches/transmission-honor-localedir.patch \ + %D%/packages/patches/tree-disable-stddata.patch \ %D%/packages/patches/tremc-fix-decodestring.patch \ %D%/packages/patches/trytond-add-egg-modules-to-path.patch \ %D%/packages/patches/trytond-add-guix_trytond_path.patch \ diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index f11374a439..0dec988d6a 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -2401,6 +2401,7 @@ recover lost partitions and/or make non-booting disks bootable again.") (uri (string-append "http://mama.indstate.edu/users/ice/tree/src/tree-" version ".tgz")) + (patches (search-patches "tree-disable-stddata.patch")) (sha256 (base32 "0f92vx6gpz7v29wi9clklzah57v7lgx5kv0m1w4b9xjc35d9qcz3")))) (build-system gnu-build-system) diff --git a/gnu/packages/patches/tree-disable-stddata.patch b/gnu/packages/patches/tree-disable-stddata.patch new file mode 100644 index 0000000000..52ca6e25f4 --- /dev/null +++ b/gnu/packages/patches/tree-disable-stddata.patch @@ -0,0 +1,16 @@ +Tree 2.0.0 and later will write its output in JSON format on fd3 if +present, instead of the requested output on fd1, which breaks e.g. +'password-store' tests. Disable for now; upstream has been notified. + +diff --git a/tree.c b/tree.c +--- a/tree.c ++++ b/tree.c +@@ -133,7 +133,7 @@ int main(int argc, char **argv) + mb_cur_max = 1; + #endif + +-#ifdef __linux__ ++#if 0 + // Output JSON automatically to "stddata" if present: + if (fcntl(STDDATA_FILENO, F_GETFD) >= 0) { + Jflag = noindent = TRUE; -- cgit v1.2.3