From 40bd7a625a7ce7c8fa05af29d088943be1154a44 Mon Sep 17 00:00:00 2001 From: Donatas Abraitis Date: Sun, 5 Jan 2020 16:34:40 +0200 Subject: [PATCH] packaging: Redirect stderr to /dev/null in %post action (frr.spec.in) Solves: ``` /usr/bin/sed: couldn't write 40 items to stdout: Broken pipe /usr/bin/sed: couldn't write 40 items to stdout: Broken pipe /usr/bin/sed: couldn't write 40 items to stdout: Broken pipe /usr/bin/sed: couldn't write 40 items to stdout: Broken pipe /usr/bin/sed: couldn't write 40 items to stdout: Broken pipe /usr/bin/sed: couldn't write 40 items to stdout: Broken pipe /usr/bin/sed: couldn't write 40 items to stdout: Broken pipe ``` This happens because `grep -q` returns immediately after first match and closes the pipe while sed has more output to write. Signed-off-by: Donatas Abraitis --- redhat/frr.spec.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/redhat/frr.spec.in b/redhat/frr.spec.in index be3b83bf8..670bc6f4c 100644 --- a/redhat/frr.spec.in +++ b/redhat/frr.spec.in @@ -444,7 +444,7 @@ zebra_spec_add_service () { # Add port /etc/services entry if it isn't already there if [ -f %{_sysconfdir}/services ] && \ - ! %__sed -e 's/#.*$//' %{_sysconfdir}/services | %__grep -wq $1 ; then + ! %__sed -e 's/#.*$//' %{_sysconfdir}/services 2>/dev/null | %__grep -wq $1 ; then echo "$1 $2 # $3" >> %{_sysconfdir}/services fi } -- 2.39.2