Subject: bug#28765: closed (Re: [bug#28765] [PATCH] config: Conditionally configure daemon offload script.)

From: [email-masked] (GNU bug Tracking System)
Date: Wed, 11 Oct 2017 04:19:02 +0000

Your bug report

#28765: [PATCH] config: Conditionally configure daemon offload script.

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
28765: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=28765
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: [bug#28765] [PATCH] config: Conditionally configure daemon offload script.
From: Eric Bavier <[email-masked]>
To: [email-masked] (Ludovic Courtès)
Cc: [email-masked]
Date: Tue, 10 Oct 2017 23:18:31 -0500
List-Id: <debbugs-submit.debbugs.gnu.org>

On Tue, 10 Oct 2017 16:17:46 +0200
[email-masked] (Ludovic Courtès) wrote:

> Eric Bavier <[email-masked]> skribis:
> 
> > On Tue, 10 Oct 2017 08:49:49 +0200
> > [email-masked] (Ludovic Courtès) wrote:
> >  
> >> Hello,
> >> 
> >> Eric Bavier <[email-masked]> skribis:
> >>   
> >> > On Mon, 09 Oct 2017 23:07:10 +0200
> >> > [email-masked] (Ludovic Courtès) wrote:
> >> >    
> >> >> Eric Bavier <[email-masked]> skribis:
> >> >>     
> >> >> > From 984e324370c2c17d8d1a982adf2884112c9e64b7 Mon Sep 17 00:00:00 2001
> >> >> > From: Eric Bavier <[email-masked]>
> >> >> > Date: Mon, 9 Oct 2017 13:58:04 -0500
> >> >> > Subject: [PATCH] config: Conditionally configure daemon offload script.      
> >> >>                    ^
> >> >> Nitpick: rather “build:”, which is for all things build-related.
> >> >>     
> >> >> > * config-daemon.ac (nix/scripts/offload): Configure only if offloading enabled.      
> >> >> 
> >> >> It LGTM, but is it helpful?  guix-daemon does not invoke ‘guix offload’
> >> >> when it’s missing, as can be seen in guix-daemon.cc:
> >> >> 
> >> >>   #ifdef HAVE_DAEMON_OFFLOAD_HOOK
> >> >>         /* Use our build hook for distributed builds by default.  */
> >> >>   …    
> >> >
> >> > Or maybe something like this would be preferable, to avoid exporting
> >> > NIX_BUILD_HOOK if Guix has been configured to disable the daemon
> >> > offload hook?
> >> >
> >> > --- a/build-aux/pre-inst-env.in
> >> > +++ b/build-aux/pre-inst-env.in
> >> > @@ -50,13 +50,9 @@ NIX_LIBEXEC_DIR="@abs_top_builddir@/nix/scripts" # for 'guix-authenticate'
> >> >  export NIX_ROOT_FINDER NIX_SUBSTITUTERS NIX_LIBEXEC_DIR
> >> >  
> >> >  NIX_BUILD_HOOK="$abs_top_builddir/nix/scripts/offload"
> >> > -if [ -x "$NIX_BUILD_HOOK" ]
> >> > -then
> >> > -    export NIX_BUILD_HOOK
> >> > -else
> >> > -    # No offloading support.
> >> > -    unset NIX_BUILD_HOOK
> >> > -fi
> >> > +@BUILD_DAEMON_OFFLOAD_TRUE@export NIX_BUILD_HOOK
> >> > +@BUILD_DAEMON_OFFLOAD_FALSE@# No offloading support.
> >> > +@BUILD_DAEMON_OFFLOAD_FALSE@unset NIX_BUILD_HOOK    
> >> 
> >> It’s nicer (you’re welcome to push this change!), but it’s equivalent to
> >> what’s already here, no?  
> >
> > It's not quite equivalent.  The current situation would end up always
> > exporting NIX_BUILD_HOOK because it is always generated by
> > config.status.  
> 
> Oooh, got it.
> 
> >> Is there a problem that we are trying to solve in the first place, or is
> >> it more about making things nicer?  
> >
> > The problem is libstore/build.cc executing NIX_BUILD_HOOK even if the
> > daemon offload hook is disabled, i.e. when guile-ssh is missing.
> >
> > Make sense?  
> 
> Yes, definitely.
> 
> Then you can definitely commit the pre-inst-env.in patch; the
> config-daemon.ac patch can’t hurt either.

pre-inst-env patch pushed as 7740228e3523e3e0e4c007eb1f1b224575d16574

Subject: [PATCH] config: Conditionally configure daemon offload script.
From: Eric Bavier <[email-masked]>
To: "[email-masked]" <[email-masked]>
Date: Mon, 9 Oct 2017 19:08:21 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

This prevents pre-inst-env from exporting NIX_BUILD_HOOK when guile-ssh is not available.

Eric Bavier, Scientific Libraries, Cray Inc.
From 984e324370c2c17d8d1a982adf2884112c9e64b7 Mon Sep 17 00:00:00 2001
From: Eric Bavier <[email-masked]>
Date: Mon, 9 Oct 2017 13:58:04 -0500
Subject: [PATCH] config: Conditionally configure daemon offload script.

* config-daemon.ac (nix/scripts/offload): Configure only if offloading enabled.
---
 config-daemon.ac | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/config-daemon.ac b/config-daemon.ac
index 42b5981..841e0ac 100644
--- a/config-daemon.ac
+++ b/config-daemon.ac
@@ -159,8 +159,10 @@ if test "x$guix_build_daemon" = "xyes"; then
     [chmod +x nix/scripts/substitute])
   AC_CONFIG_FILES([nix/scripts/guix-authenticate],
     [chmod +x nix/scripts/guix-authenticate])
-  AC_CONFIG_FILES([nix/scripts/offload],
-    [chmod +x nix/scripts/offload])
+  if test "x$guix_build_daemon_offload" = "xyes"; then
+    AC_CONFIG_FILES([nix/scripts/offload],
+      [chmod +x nix/scripts/offload])
+  fi
 fi
 
 AM_CONDITIONAL([BUILD_DAEMON], [test "x$guix_build_daemon" = "xyes"])
-- 
1.8.5.6