Subject: [bug#47989] [PATCH] channels: Add a #:system argument to channel-instances->manifest.

From: Christopher Baines <[email-masked]>
Date: Mon, 03 May 2021 22:35:49 +0100

Ludovic Courtès <[email-masked]> writes:

> Christopher Baines <[email-masked]> skribis:
>
>> This allows computing a manifest for a specific system. Previously this was
>> possible, but only through changing %current-system, which caused the
>> derivation to be computed using that system as well (so computing a derivation
>> for aarch64-linux on x86_64-linux would require running aarch64-linux code).
>
> I remember discussing it, but I wonder if I was confused.
>
> I think you can always do the equivalent of (say):
>
>   guix time-machine -- build -s armhf-linux hello -d
>
> … where Guix itself is built natively but it then computes a derivation
> for a different architecture.
>
> The equivalent code would be roughly:
>
>   (let ((inferior (inferior-for-channels …)))
>     (inferior-package-derivation store
>                                  (car (lookup-inferior-packages inferior "hello"))
>                                  "armhf-linux"))
>
> Does that make sense?

Not really, this is just about manifests for channel instances, so
nothing to do with package derivations as far as I'm aware.