* Wrap %default-guix-channel inside channel-with-substitutes-available by default?
@ 2021-06-29 20:12 Mekeor Melire
0 siblings, 0 replies; 4+ messages in thread
From: Mekeor Melire @ 2021-06-29 20:12 UTC (permalink / raw)
To: guix-devel
I think, by default, the focus should be on speeding up Guix (and
specifically `guix pull`). I suggest to wrap %default-guix-channel
inside channel-with-substitutes-available, like this:
(define %default-channels
(list (channel-with-substitutes-available
%default-guix-channel
"https://ci.guix.gnu.org")))
This way, beginners would enjoy a little speed-up, and sophisticated
users could still use (list %default-guix-channel).
What do you think?
^ permalink raw reply [flat|nested] 4+ messages in thread
* Wrap %default-guix-channel inside channel-with-substitutes-available by default?
@ 2021-06-29 21:50 Leo Prikler
2021-06-30 8:11 ` Mathieu Othacehe
0 siblings, 1 reply; 4+ messages in thread
From: Leo Prikler @ 2021-06-29 21:50 UTC (permalink / raw)
To: mekeor; +Cc: guix-devel
I think the potential to confuse new users with this enabled by default
is higher than without it. Assume that Alice just sent a bug report to
Guix, that has been closed or has otherwise been made aware of some bug
affecting a software she uses, for which a fix has been pushed.
Naturally, she's going to run `guix pull' to test it out, and… not see
any difference to the system she currently had.
I think we do have the obligation to clearly document channels-with-
substitutes-available and make it so that this particular piece of
documentation can easily be found by everyone who is potentially
affected by slow-downs. Perhaps we might even want to include an
option in the installer to set up /etc/guix/channels.scm to only use
channels with available substitutes. But using it as a default without
communicating this fact to the users would be a poor idea in my
opinion.
Regards,
Leo
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Wrap %default-guix-channel inside channel-with-substitutes-available by default?
2021-06-29 21:50 Wrap %default-guix-channel inside channel-with-substitutes-available by default? Leo Prikler
@ 2021-06-30 8:11 ` Mathieu Othacehe
2021-06-30 8:25 ` Leo Prikler
0 siblings, 1 reply; 4+ messages in thread
From: Mathieu Othacehe @ 2021-06-30 8:11 UTC (permalink / raw)
To: Leo Prikler; +Cc: mekeor, guix-devel
Hello,
> I think we do have the obligation to clearly document channels-with-
> substitutes-available and make it so that this particular piece of
> documentation can easily be found by everyone who is potentially
> affected by slow-downs. Perhaps we might even want to include an
> option in the installer to set up /etc/guix/channels.scm to only use
> channels with available substitutes. But using it as a default without
> communicating this fact to the users would be a poor idea in my
> opinion.
I fear that a lot of users are not aware of this mechanism and do not
really understand why "guix pull" sometimes starts building stuff.
We could maybe proceed this way:
1. Enable the channel-with-substitutes-available snippet by default.
2. Add a command line option --without-available-substitutes.
3. Add a new info message when the fetched commit is not the latest
commit, to minimize the risk you are mentioning above. Something like:
Skipping N new commits that do not have any available substitutes, use
the --without-available-substitutes option to update anyway.
WDYT?
Thanks,
Mathieu
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Wrap %default-guix-channel inside channel-with-substitutes-available by default?
2021-06-30 8:11 ` Mathieu Othacehe
@ 2021-06-30 8:25 ` Leo Prikler
0 siblings, 0 replies; 4+ messages in thread
From: Leo Prikler @ 2021-06-30 8:25 UTC (permalink / raw)
To: Mathieu Othacehe; +Cc: mekeor, guix-devel
Am Mittwoch, den 30.06.2021, 10:11 +0200 schrieb Mathieu Othacehe:
> Hello,
>
> > I think we do have the obligation to clearly document channels-
> > with-
> > substitutes-available and make it so that this particular piece of
> > documentation can easily be found by everyone who is potentially
> > affected by slow-downs. Perhaps we might even want to include an
> > option in the installer to set up /etc/guix/channels.scm to only
> > use
> > channels with available substitutes. But using it as a default
> > without
> > communicating this fact to the users would be a poor idea in my
> > opinion.
>
> I fear that a lot of users are not aware of this mechanism and do not
> really understand why "guix pull" sometimes starts building stuff.
>
> We could maybe proceed this way:
>
> 1. Enable the channel-with-substitutes-available snippet by default.
>
> 2. Add a command line option --without-available-substitutes.
>
> 3. Add a new info message when the fetched commit is not the latest
> commit, to minimize the risk you are mentioning above. Something
> like:
>
> Skipping N new commits that do not have any available substitutes,
> use the --without-available-substitutes option to update anyway.
I don't think such verbosity leads to a good result, compare the
infamous ". $GUIX_PROFILE/etc/profile" blurb. I think we should
instead have --with-available-substitutes(*), so that we have
--with-available-substitutes: Only pull stuff, that can be substituted
(default): Pull the latest, don't care about substitutes
--without-substitutes: Pull the latest, never substitute
I think having default in the middle here and no potential for
confusion between --without-available-substitutes and --without-
substitutes is preferable. WDYT?
Regards,
Leo
(*) Things get a little more complicated if you add other channels. Of
course Guix CI only hosts the main channel, but what if someone has
Guix Past along with a CI that builds Guix Past (or the same setup
without substitutes)? When should this logic pull Guix Past and which
commit?
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2021-06-30 8:26 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-06-29 21:50 Wrap %default-guix-channel inside channel-with-substitutes-available by default? Leo Prikler
2021-06-30 8:11 ` Mathieu Othacehe
2021-06-30 8:25 ` Leo Prikler
-- strict thread matches above, loose matches on Subject: below --
2021-06-29 20:12 Mekeor Melire
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.