From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
To: Ian Eure <ian@retrospec.tv>
Cc: guix-devel <guix-devel@gnu.org>, 72686@debbugs.gnu.org
Subject: bug#72686: Impossible to remove all offload machines
Date: Fri, 03 Jan 2025 00:02:09 +0900 [thread overview]
Message-ID: <87wmfd45u6.fsf@gmail.com> (raw)
In-Reply-To: <87ldwzmdfi.fsf@retrospec.tv> (Ian Eure's message of "Sun, 01 Dec 2024 11:05:37 -0800")
Hi Ian,
Ian Eure <ian@retrospec.tv> writes:
[...]
> Apologies for the silence, life stuff has been eating most of my free
> time, but I have a bit of bandwidth to spend on this problem again.
As you can see, you are not alone :-).
> I took a swing at this, it wasn’t as difficult as I expected. While
> this approach gives a smooth upgrade path for those who’ve configured
> channels in a stateful way switching to declarative configuration,
> it’s possibly bumpy for those already using a declarative config. If
> a machine with declarative channels is reconfigured, the channels will
> be duplicated from /etc/guix/channels.scm to
> /etc/guix/channels-declarative.scm. Using `delete-duplicates' on the
> merged channels should avoid major problems, but I think it still
> needs a loud entry in news and manual action (deleting
> /etc/guix/channels.scm) to upgrade. Given that both approaches will
> require manual action, I’m a bit inclined to go with the simpler, and
> take over the existing file. That said, I think the failure mode of
> the simpler approach (stomping on channels a user may have configured)
> is undeniably worse than potentially duplicating channels or
> continuing to pull in old ones unexpectedly. Do either of you have a
> strong opinion or more information which would help guide this
> decision?
I still like the option to leave a handcrafted channels.scm alone; I
don't think this imperative variant will be obsolete in the future; it's
still useful to experiment quickly, avoiding costly reconfigure just to
change some bits about a new offload machine.
> The root issue at work behind all these problems is that activation
> code only sees the desired target config, rather than the current and
> target configs. Comparing the current and target configs would allow
> the code to more precisely compute the needd change to move from one
> state to the next. I think that could be a good change to make,
> though it’s obviously going to be much more involved, and IMO will
> require discussion outside the scope of this specific bug.
The activation is just a script, so if it's useful to check
the current value, it should be OK to do so.
> I have a draft patch series I hope to send up soon, but need to get
> Guix System up in a VM to test first. It does separate declarative
> channels into their own config, but doesn’t do the same for build
> machines. While I think many fewer users configure build machines
> than channels, it’s probably a good idea to use the same approach for
> both channels and machines.
Yes, it'd be nice to have a uniform approach. The acl file could
benefit from the same treatment, I believe (that, and 'guix authorize'
should validate that we're not adding the same key multiple times --
warn something along "key XXXX is already authorized".
--
Thanks,
Maxim
prev parent reply other threads:[~2025-01-02 15:03 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-08-17 16:40 Impossible to remove all offload machines Ian Eure
2024-09-14 14:55 ` bug#72686: " Maxim Cournoyer
2024-09-15 3:24 ` Ian Eure
2024-09-15 3:53 ` Ian Eure
2024-09-15 19:06 ` Tomas Volf
2024-09-19 0:35 ` Ian Eure
2024-09-22 2:26 ` Maxim Cournoyer
2024-12-01 19:05 ` Ian Eure
2025-01-02 15:02 ` Maxim Cournoyer [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87wmfd45u6.fsf@gmail.com \
--to=maxim.cournoyer@gmail.com \
--cc=72686@debbugs.gnu.org \
--cc=guix-devel@gnu.org \
--cc=ian@retrospec.tv \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).