From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: =?utf-8?Q?=E2=80=98guix_publish=E2=80=99?= now compresses archives Date: Thu, 21 Jul 2016 14:43:14 +0200 Message-ID: <87k2gfnov1.fsf@gnu.org> References: <878twytwlp.fsf@gnu.org> <87wpkf711j.fsf@igalia.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:38168) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bQDJy-0002N8-P5 for guix-devel@gnu.org; Thu, 21 Jul 2016 08:43:26 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bQDJt-0004ZY-VQ for guix-devel@gnu.org; Thu, 21 Jul 2016 08:43:22 -0400 In-Reply-To: <87wpkf711j.fsf@igalia.com> (Andy Wingo's message of "Thu, 21 Jul 2016 12:12:08 +0200") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Andy Wingo Cc: guix-devel Andy Wingo skribis: > On Tue 19 Jul 2016 00:22, ludo@gnu.org (Ludovic Court=C3=A8s) writes: > >> To recap, the difficulty with all this is that we couldn=E2=80=99t just = call out >> the =E2=80=98gzip=E2=80=99 command because =E2=80=98guix publish=E2=80= =99 uses threads, and threads and >> fork(2) don=E2=80=99t go together well. > > FWIW open-pipe or open-process from (ice-9 popen) should work reliably. > The child is carefully written to be async-signal-safe before the > execve(). Yes, but =E2=80=98filtered-output-port=E2=80=99, used by =E2=80=98compresse= d-output-port=E2=80=99 in (guix utils) is not implemented in terms of (ice-9 popen). Ludo=E2=80=99.