From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Kost Subject: Re: (Geiser or guile bug) Guix-daemon output is missing Date: Thu, 10 Sep 2015 00:24:02 +0300 Message-ID: <871te7s2vh.fsf@gmail.com> References: <87d1xvx6lb.fsf@gmail.com> <87lhcj44qc.fsf@gnu.org> <87613jsfnw.fsf@gmail.com> <87bndbs68l.fsf@gnu.org> 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]:38916) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZZmqc-0002kX-ES for guix-devel@gnu.org; Wed, 09 Sep 2015 17:24:11 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZZmqZ-0004t6-9C for guix-devel@gnu.org; Wed, 09 Sep 2015 17:24:06 -0400 In-Reply-To: <87bndbs68l.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Wed, 09 Sep 2015 22:11:22 +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-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Ludovic =?utf-8?Q?Court=C3=A8s?= Cc: guix-devel@gnu.org Ludovic Court=C3=A8s (2015-09-09 23:11 +0300) wrote: > Alex Kost skribis: > >> As a workaround for this issue it was proposed=C2=B9 to transform >> =E2=80=98current-build-output-port=E2=80=99 into a procedure (I have che= cked that it >> solves the problem). What do you think about it? Perhaps to make sure >> that the port will be always the same define it like this: >> >> (define current-build-output-port (memoize current-error-port)) >> >> Is it acceptable? > > No, =E2=80=98current-build-output-port=E2=80=99 should remain a SRFI-39 p= arameter so > that callers can easily rebind it. > > However, perhaps the guix.el code could do: > > (current-build-output-port (current-error-port)) > > at startup; would that be doable? (IMO it would be so ugly, that I should say: "no") Do you mean at startup of Guix REPL? If you remember the point is to add an emacs command to build the package in the current Geiser REPL (not Guix REPL). So to prevent this disappearing of the build output, (current-build-output-port (current-error-port)) should be evaluated in the *Geiser REPL*. We can make a workaround just for =E2=80=98build-packag= e=E2=80=99 procedure by putting this port assigning in it, but the only way to make a global solution is to get rid of the top-level setting of =E2=80=98current-build-output-port=E2=80=99, for example by: (define current-build-output-port (make-parameter #f)) and bind it to current-error-port in =E2=80=98process-stderr=E2=80=99, but = I suppose this is also undesired, right? --=20 Alex