GNU bug report logs - #20217
Allow users to use the daemon's default settings

Previous Next

Package: guix;

Reported by: ludo <at> gnu.org (Ludovic Courtès)

Date: Sat, 28 Mar 2015 14:37:02 UTC

Severity: normal

Done: ludo <at> gnu.org (Ludovic Courtès)

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 20217 in the body.
You can then email your comments to 20217 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#20217; Package guix. (Sat, 28 Mar 2015 14:37:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to ludo <at> gnu.org (Ludovic Courtès):
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Sat, 28 Mar 2015 14:37:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: ludo <at> gnu.org (Ludovic Courtès)
To: bug-guix <at> gnu.org
Subject: Allow users to use the daemon's default settings
Date: Sat, 28 Mar 2015 15:36:19 +0100
[Message part 1 (text/plain, inline)]
The message below from guix-devel says it all.

Ludo’.

[Message part 2 (message/rfc822, inline)]
From: ludo <at> gnu.org (Ludovic Courtès)
To: Mark H Weaver <mhw <at> netris.org>
Cc: guix-devel <at> gnu.org
Subject: Using the daemon’s default settings
Date: Mon, 23 Mar 2015 22:11:17 +0100
Mark H Weaver <mhw <at> netris.org> skribis:

> Ludovic Courtès <ludo <at> gnu.org> writes:
>
>> commit 4d58122071bbd7bb56c9658a9bbe7621bf3e423d
>> Author: Ludovic Courtès <ludo <at> gnu.org>
>> Date:   Sun Mar 22 23:43:25 2015 +0100
>>
>>     store: Default to a non-empty list of substituters.
>>     
>>     Fixes <http://bugs.gnu.org/20163>.
>>     Reported by Mark H Weaver <mhw <at> netris.org>.
>>     
>>     * guix/store.scm (%default-substitute-urls): New variable.
>>       (set-build-options): Change default value of #:substitute-urls to
>>       %DEFAULT-SUBSTITUTE-URLS.

[...]

> Does this mean that even if I've configured my daemon to use a different
> set of substitute-urls, when I run 'guix' as root those settings will be
> overridden?

Yes.

> That seems suboptimal.

Right.

> We have a similar problem with the values of --cores and --max-jobs
> passed to guix-daemon being ignored because they are always overridden
> by our client.

Indeed.

> How can we fix these so that the daemon's settings are used unless the
> user specifically asks to override them in the client?

If you look at nix-daemon.cc:543, there’s currently no way for a client
to say “default value.”  The only way for a client to get the daemon’s
default values is to not call the ‘set-build-options’ RPC at all; it’s
all or nothing.

I think the way forward would be to add a new RPC, say
‘set-build-options2’, that would take a list of key/value pairs, where
keys are option names.  Options not mentioned in a ‘set-build-options2’
call would keep their default value.

How does that sound?

Thanks,
Ludo’.


Information forwarded to bug-guix <at> gnu.org:
bug#20217; Package guix. (Wed, 28 Oct 2015 14:37:01 GMT) Full text and rfc822 format available.

Message #8 received at 20217 <at> debbugs.gnu.org (full text, mbox):

From: ludo <at> gnu.org (Ludovic Courtès)
To: 20217 <at> debbugs.gnu.org
Subject: Re: bug#20217: Allow users to use the daemon's default settings
Date: Wed, 28 Oct 2015 15:36:35 +0100
ludo <at> gnu.org (Ludovic Courtès) skribis:

> Mark H Weaver <mhw <at> netris.org> skribis:
>
>> Ludovic Courtès <ludo <at> gnu.org> writes:
>>
>>> commit 4d58122071bbd7bb56c9658a9bbe7621bf3e423d
>>> Author: Ludovic Courtès <ludo <at> gnu.org>
>>> Date:   Sun Mar 22 23:43:25 2015 +0100
>>>
>>>     store: Default to a non-empty list of substituters.
>>>     
>>>     Fixes <http://bugs.gnu.org/20163>.
>>>     Reported by Mark H Weaver <mhw <at> netris.org>.
>>>     
>>>     * guix/store.scm (%default-substitute-urls): New variable.
>>>       (set-build-options): Change default value of #:substitute-urls to
>>>       %DEFAULT-SUBSTITUTE-URLS.
>
> [...]
>
>> Does this mean that even if I've configured my daemon to use a different
>> set of substitute-urls, when I run 'guix' as root those settings will be
>> overridden?
>
> Yes.

This particular issue of substitute URLs is fixed in fb4bf72.

The more general problem remains though: for all the other options, like
max-build-jobs, timeout, etc., the client settings take precedence over
the daemon settings because the ‘set-build-options’ RPC doesn’t provide
a way to say “use default value.”

The fix for that will be either: (1) a ‘set-build-options2’ RPC that has
a way to leave some settings unchanged, or (2) a ‘get-build-options’ RPC.

Option (1) is simpler and more efficient, but option (2) could be
interesting.

Ludo’.




Reply sent to ludo <at> gnu.org (Ludovic Courtès):
You have taken responsibility. (Sun, 15 Jan 2017 14:58:02 GMT) Full text and rfc822 format available.

Notification sent to ludo <at> gnu.org (Ludovic Courtès):
bug acknowledged by developer. (Sun, 15 Jan 2017 14:58:02 GMT) Full text and rfc822 format available.

Message #13 received at 20217-done <at> debbugs.gnu.org (full text, mbox):

From: ludo <at> gnu.org (Ludovic Courtès)
To: 20217-done <at> debbugs.gnu.org
Subject: Re: bug#20217: Allow users to use the daemon's default settings
Date: Sun, 15 Jan 2017 15:57:13 +0100
ludo <at> gnu.org (Ludovic Courtès) skribis:

> ludo <at> gnu.org (Ludovic Courtès) skribis:
>
>> Mark H Weaver <mhw <at> netris.org> skribis:
>>
>>> Ludovic Courtès <ludo <at> gnu.org> writes:
>>>
>>>> commit 4d58122071bbd7bb56c9658a9bbe7621bf3e423d
>>>> Author: Ludovic Courtès <ludo <at> gnu.org>
>>>> Date:   Sun Mar 22 23:43:25 2015 +0100
>>>>
>>>>     store: Default to a non-empty list of substituters.
>>>>     
>>>>     Fixes <http://bugs.gnu.org/20163>.
>>>>     Reported by Mark H Weaver <mhw <at> netris.org>.
>>>>     
>>>>     * guix/store.scm (%default-substitute-urls): New variable.
>>>>       (set-build-options): Change default value of #:substitute-urls to
>>>>       %DEFAULT-SUBSTITUTE-URLS.
>>
>> [...]
>>
>>> Does this mean that even if I've configured my daemon to use a different
>>> set of substitute-urls, when I run 'guix' as root those settings will be
>>> overridden?
>>
>> Yes.
>
> This particular issue of substitute URLs is fixed in fb4bf72.
>
> The more general problem remains though: for all the other options, like
> max-build-jobs, timeout, etc., the client settings take precedence over
> the daemon settings because the ‘set-build-options’ RPC doesn’t provide
> a way to say “use default value.”

Fixed in commit deac976d3d26c7b85b9c90efb424b0aa94f1027c (at last!) by
moving max-build-jobs, build-cores, and max-silent-time to the optional
key/value option list at the end of ‘set-build-options’.

Ludo’.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Mon, 13 Feb 2017 12:24:03 GMT) Full text and rfc822 format available.

This bug report was last modified 7 years and 66 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.