Subject: [bug#28487] [PATCH] cuirass: Add gnu-system build spec.

From: [email-masked] (Ludovic Courtès)
Date: Tue, 26 Sep 2017 10:18:44 +0200

Hello!

Jan Nieuwenhuizen <[email-masked]> skribis:

> * build-aux/cuirass/gnu-system.scm: New file.  Combines
> build-aux/hydra/gnu-system.scm, guix-cuirass/examples/gnu-system.scm and supports
> building a named subset.
>
>      (let ((spec #~((#:name . "guix")
>                     (#:url . "git://git.savannah.gnu.org/guix.git")
>                     (#:load-path . ".")
>                     (#:file . "build-aux/cuirass/gnu-system.scm")
>                     (#:proc . hydra-jobs)
>                     (#:arguments (subset . ("hello" "grep")))
>                     (#:branch . "master"))))
>        (service cuirass-service-type
>                 (cuirass-configuration
>                  (specifications #~(list '#$spec)))))

I like this but… while we’re at it, could we arrange to have a single
file that works for both Hydra and Cuirass?

Concretely, we currently have these two files:

  https://git.savannah.gnu.org/cgit/guix.git/tree/build-aux/hydra/gnu-system.scm
  https://git.savannah.gnu.org/cgit/guix/maintenance.git/tree/hydra/cuirass-jobs.scm

There are very close to one another.  The main difference is that one
returns an alist with symbols, whereas the other returns an alist with
keywords.

If we could instead add, say, build-aux/hydra/gnu-system-cuirass.scm,
which simply loads gnu-system.scm and “converts” the resulting alist
appropriately, that would be awesome.

I understand this is not quite what you were asking for ;-), but it
would achieve the same result.

How does that sound?

Thanks,
Ludo’.