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 <noelo...@free.fr> wrote: > > Konrad Hinsen <konrad.hin...@fastmail.net> 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é