Hi folks
Building on what Noé said, since the merge of
https://issues.guix.gnu.org/73073, we can now have both origins and
packages in the same input list without having to use the old
(deprecated) input style. The origin inputs are automatically
assigned a label, which you can override using 'file-name' IIUC.
Here's an example from the gnome-recipes package:
(native-inputs (list desktop-file-utils ;for update-desktop-database
gettext-minimal
`(,glib "bin")
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.gnome.org/GNOME/libgd")
(commit
"c7c7ff4e05d3fe82854219091cf116cce6b19de0")))
(file-name "libgd-checkout")
(sha256
(base32
"16yld0ap7qj1n96h4f2sqkjmibg7xx5xwkqxdfzam2nmyfdlrrrs")))
itstool
pkg-config
python))
Cheers
Jake
On Tue, Jun 24, 2025 at 8:28 AM Noé Lopez <[email protected]> wrote:
>
> Konrad Hinsen <[email protected]> writes:
>
> > Hi everyone,
> >
> > A package I am working on has the unusual property of having its source
> > split into two repositories, for historical reasons. Building it
> > requires a checkout of both these repositories. Is this possible in a
> > Guix package? E.g. having two source repositories? Or downloading one
> > separately?
> >
> > One way I can think of is having a dummy package that simply copies
> > one repository checkout to its output. It would then become an input
> > to the second one that does the actual build. But I am hoping that there
> > is a more straightforward approach.
> >
>
> Hi Konrad,
>
> IIRC, you can use origins directly as inputs:
>
> (inputs
> (list
> `("name" ,(origin …))))
>
> Then you would still have to copy the unpack phase though if its an
> archive.
>
> Have a nice day,
> Noé