help-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Questions regarding substitutes with debug output


From: Ricardo Wurmus
Subject: Re: Questions regarding substitutes with debug output
Date: Fri, 29 Apr 2022 18:01:04 +0200
User-agent: mu4e 1.6.10; emacs 28.0.50

Olivier Dion <olivier.dion@polymtl.ca> writes:

> On Fri, 29 Apr 2022, zimoun <zimon.toutoune@gmail.com> wrote:
>> Hi Olivier,
>>
>> On Thu, 28 Apr 2022 at 10:11, Olivier Dion via <help-guix@gnu.org> wrote:
>>> On Thu, 28 Apr 2022, zimoun <zimon.toutoune@gmail.com> wrote:
>>
>>> In my case, I prefer to avoid using package object directly.  As
>>> mentioned in GWL' manual, the version of Guix running GWL and the
>>> version of Guix used by GWL (the inferior) might not be the same.  Thus,
>>> it is not okay for reproducibility in the long term.  In my case, I use
>>> `guix time-machine --channels` as the inferior.
>>
>> You wrote:
>>
>>          I need to specify the package programmatically as a string in
>>          Guile.  More specifically in the process packages field of Guix
>>          Workflow Language.
>>
>> so I do not understand why it would be an issue to deal with the package
>> instead of the specification string.  Because your need seems «to
>> specify the package programmatically». :-)
>
> Because importing the package using use-modules would yield the package
> from the instance of Guix driving the workflow instead of using the
> package of the inferior!  GWL will lookup for package in the inferior
> context when the package is a specification.
>
> Even if I were to import locally defined packages, their dependencies
> would come from the Guix's main channel!

What would you think about WITH-CHANNELS that would accept a list of
channels and evaluate any package reference in its body within an
inferior of those channels?

E.g.

(with-channels %my-channels
  (package
    (name "yay")
    …
    (inputs
      (list foo bar baz)) ;these are all looked up in %my-channels
    …
    (license gpl3+)))

-- 
Ricardo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]