all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Wiktor Żelazny" <wz@freeshell.de>
To: help-guix@gnu.org
Subject: Re: guix time-machine, broken hash in an old package definition, a workaround?
Date: Wed, 20 Jan 2021 13:26:02 +0100	[thread overview]
Message-ID: <20210120122602.la6nckvozvdkwfnh@wzguix> (raw)
In-Reply-To: <86czxz9aoa.fsf@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 3313 bytes --]

On Wed, Jan 20, 2021 at 11:15:17AM +0100, zimoun wrote:

> Cool if Microsoft support long time archive of CRAN packages.  Well, it
> seems possible to use it as fallback.

Hi,

Thanks for the review. You could say the same thing about Software
Heritage. You never know. I was considering starting a new thread
questioning the sufficiency of the manifest and channels to reproduce an
environment (you can find this kind of statement in Konrad Hinsen’s
“Reproducible computations with Guix” last year’s GuixHPC blog post, for
instance). Looks like you also want to archive the source code, just in
case.

> >    (packages->manifest
> >     (list (first (lookup-inferior-packages inferior "r-foreign" "0.8-75-fixed"))
> >           (specification->package "r")))
>
> Here, the package “r-foreign” come from d81fb2a and so it is built using
> the R build system from d81fb2a.

I do want d81fb2a r-foreign be built by d81fb2a R build system.

> However, the package “r” come from the current Guix, i.e., the Guix when
> the manifest is called.

It is called from the time machine, so it’s also d81fb2a, right? That’s
what I want.

> Specifying --commit and --channels is redundant.  Other said, the
> --commit is not necessary because it is already provided by your
> ’channel-specs.scm’.  But that’s a detail. :-)

Thanks. I thought that --channels referred to the package definitions,
whereas --commit to the guix version that processes them (yes, I know
that the definitions are a part of guix, but still).

Does `environment -C` imply `environment --pure`, as well?

> By “chance”, the file ’channel-specs.scm’ and ’manifest.scm’ points to
> the same commit.

This is intentional. I want to have an environment reflecting the
d81fb2a state of things, so that’s why I’m consistent with the commit.

> However, the inferior in ’manifest.scm’ is not necessary.

Why? If it’s not there, you’re facing the hash mismatch problem, aren’t
you? Please, explain.

> Inferiors in ’manifest.scm’ are used when you want to put some packages
> from different Guix commits in the same profile.  And it is not what you
> want here; if I understand correctly your problem.

If a tool designed for some purpose turns out to be suitable for other
purposes, as well, I see no reason for not using it for latter. It’s a
bit like Unix philosophy.

I use an inferior to substitute a guix package also in my config.scm. I
added some patch or something (I don’t remember), so the definition is
loaded from another channel, rather than another guix commit. Maybe I
even borrowed this trick from someone who had been showing it on this
mailing list.

   (define wz-channel
     (cons* (channel
             (name 'guix-wz)
             (url "file:///home/w/guix/guix-wz-git"))
            %default-channels))

   (define spectrwm-wz
     (first
      (lookup-inferior-packages
       (inferior-for-channels wz-channel)
       "spectrwm-wz" "3.2.0")))  ; I should upgrade it, I guess

   (packages (append (list
                      ;; dadada
                      spectrwm-wz)
                     %base-packages))

It works for me. If there are better solutions, I’ll be happy to learn.

WŻ

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 963 bytes --]

  reply	other threads:[~2021-01-20 12:26 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-13 13:22 guix time-machine, broken hash in an old package definition, a workaround? Wiktor Żelazny
2021-01-13 16:24 ` zimoun
2021-01-13 19:28   ` Wiktor Żelazny
2021-01-13 18:57 ` Leo Famulari
2021-01-13 19:37   ` Wiktor Żelazny
2021-01-13 20:44     ` Leo Famulari
2021-01-14  8:30       ` Wiktor Żelazny
2021-01-14  9:48         ` zimoun
2021-01-14 19:00           ` Wiktor Żelazny
2021-01-14 20:29             ` zimoun
2021-01-15 20:18               ` Wiktor Żelazny
2021-01-15 20:48                 ` zimoun
2021-01-18  8:57                   ` Wiktor Żelazny
2021-01-18  9:11                     ` Wiktor Żelazny
2021-01-20  9:35                 ` Wiktor Żelazny
2021-01-20 10:15                   ` zimoun
2021-01-20 12:26                     ` Wiktor Żelazny [this message]
2021-01-20 15:03                       ` zimoun
2021-01-22 11:36                         ` Wiktor Żelazny
2021-01-22 16:29                           ` zimoun

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

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210120122602.la6nckvozvdkwfnh@wzguix \
    --to=wz@freeshell.de \
    --cc=help-guix@gnu.org \
    /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 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.