Hi,

Hilton Chain <[email protected]> skribis:

>> What’s the end goal?  To support single-command program execution like
>> in the ‘nix shell’ examples you gave?  (I’m asking because there’s
>> nothing equivalent to “flake references” in Guix, AIUI.)
>
> Yes, so it'll be more convenient to use a package or a procedure from a 
> channel
> temporarily, at the same time allowing specifying the commit and branch to 
> use.

OK.  This is one of the goals I mentioned in
<https://guix.gnu.org/blog/2026/time-travel-without-borders/>.

> Speaking of commit or branch, it would be nice to support channel selection in
> ‘--url=’, ‘--commit=’, and ‘--branch=’ as well.

Agreed.  I *think* someone sent a patch for this long ago, not sure.

>> Yes, and ‘.guix-channel’ is fundamentally something very different from
>> what one specifies in ‘channels.scm’.

[...]

> ‘.guix-channel’ already contains most information for a ‘channels.scm’ when 
> the
> channel declares its dependencies.  What I think is, why not add more into
> ‘.guix-channel’ so it contains all information for a ‘channels.scm’?

I’m not sure ‘.guix-channel’ is the right thing, because it serves a
different purpose, but OTOH it could contain “non-normative” info for
use by this channel discovery mechanism you have in mind.  (That could
also include preferred substitute server URLs and corresponding keys.)

Now, I wouldn’t want to replicate Nix behavior bit for bit, because it
essentially amounts to “curl | sh”, as I wrote in the blog post above.
Instead, we want to encourage at least TOFU-style policies for channels.
Something to keep in mind.

Ludo’.

Reply via email to