Subject: bug#27017: 'guix package --list-generations' does not handle SIGPIPE properly

From: Alex Vong <[email-masked]>
Date: Mon, 22 May 2017 17:20:02 +0800

Hello guix,

Recently, I find out that running
'guix package --list-generations | head' will give an error. I suspect
that's because 'guix package --list-generations' does not handle SIGPIPE
properly. The output of the command is pasted below:

$ LC_ALL=C guix package --list-generations | head
Generation 86	Apr 30 2017 22:02:29
 + ffmpeg	3.3	out	/gnu/store/ihbs3i1dhy4z345db2a1rhid6fpv2p1y-ffmpeg-3.3
 + youtube-dl	2017.04.14	out	/gnu/store/p04rk5gmd5vknx9hbkq12i49cgympx42-youtube-dl-2017.04.14
 + python-ipython	5.2.2	out	/gnu/store/q6v3xjxhy6gmaby6pdz82a9g5wi8jcqm-python-ipython-5.2.2
 + mpv	0.24.0	out	/gnu/store/f80fh5fp2hbjh2pi4lchrm5zmkmnzx9g-mpv-0.24.0
 + emacs-clojure-mode	5.4.0	out	/gnu/store/69s3hs72j54z94m3vy6h37v3rqhn7dyx-emacs-clojure-mode-5.4.0
 + emacs-emms	4.2	out	/gnu/store/i524h96f504xgf6gfykw7incm58ng4ww-emacs-emms-4.2
 + qemu	2.8.1	out	/gnu/store/ihy8yzv3ww9slvy1639qji4c7sv9b68l-qemu-2.8.1
 + audacity	2.1.3	out	/gnu/store/k04ibjfy8l6a0cz33n8bhyhxhq1c5zd3-audacity-2.1.3
 + minetest	0.4.15	out	/gnu/store/s1a7lvpdspi220fnkadqzamkwzvfv2wx-minetest-0.4.15
guix package: error: scm_flush: Broken pipe
Backtrace:
In unknown file:
   ?: 2 [apply-smob/1 #<catch-closure 5655472fb120> quit 1]
In ice-9/boot-9.scm:
 160: 1 [catch #t #<catch-closure 565547ead2c0> ...]
In unknown file:
   ?: 0 [apply-smob/1 #<catch-closure 565547ead2c0>]

ERROR: In procedure apply-smob/1:
ERROR: In procedure scm_flush: Broken pipe

Cheers,
Alex