guix-devel
[Top][All Lists]
Advanced

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

Re: Store channel specification in profile


From: zimoun
Subject: Re: Store channel specification in profile
Date: Wed, 8 Jan 2020 20:31:16 +0100

Hi Pierre,

On Wed, 8 Jan 2020 at 16:17, Pierre Neidhardt <address@hidden> wrote:

> >  a. keep the file <your-profile>/manifest as it is today; and add
> > options to convert it to regular manifests and channels.
> >  b. improve the format of this file to obtain consistent manifests.
> >
> > and c. improve what the --manifest option accepts.
>
> Agreed.
>
> > From my perspective, the option b. is a better path because it remove
> > layers and complexity.
>
> I thought you meant "do all 3 options".  How would option b. alone be enough?

I agree and I am on this wavelength. Maybe we had some noise in
previous emails. :-)


> >> Should we not change the format, should we add a command line option to
> >> convert manifest to "manifest specifications" (those that work with
> >> `-manifest')?  How do we include the provenance in manifest specifications?
> >
> > The provenance of what?
>
> How do we include the "provenance" field from manifest into "manifest
> specifications"?

I read "channel" instead of "provenance".



> > Basically an entry looks like:
> >
> > --8<---------------cut here---------------start------------->8---
> >      ("diffoscope"
> >       "131"
> >       "out"
> >       "/gnu/store/h8zr4rxhvpikv9p07kdjkf2dsrja35wm-diffoscope-131"
> >       (propagated-inputs ())
> >       (search-paths ())
> >       (properties
> >         (provenance
> >           (repository
> >             (version 0)
> >             (url "https://git.savannah.gnu.org/git/guix.git";)
> >             (branch "master")
> >             (commit
> >               "b5d4d5b9bcf267fddd02fcc14b88eac0bebf979f")))))
> > --8<---------------cut here---------------end--------------->8---
>
> The above is not very human friendly.  Each entry should be something
> like plist with default values, so that the user does not have to write
> "out" every time.
>
> What about this:
>
> ("diffoscope"
>  :version "131"
>  :output "doc" ; "out" is the default.
>  :provenance (repository ...))
>
> Questions:
>
> - Do manifests really need the store path?

I do not see why neither.

Maybe in this scenario: you build a profile with --manifest=foo.scm,
then you send me this foo.scm manifest file and <profile>/manifest.
With these, I instantiate a profile with --manifest=foo.scm and I can
"challenge" against what you have by comparing my hashes to your
hashes.

> - Same question about propagated-inputs.  Aren't they already encoded in
>   the package definition?  Why repeating them here?

I agree.


All the best,
simon



reply via email to

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