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

From: Jan Nieuwenhuizen <[email-masked]>
Date: Wed, 27 Sep 2017 22:32:32 +0200

Ludovic Courtès writes:

>> Anyway, what I proposed was close and attached is a tested, working
>> version (that may need some work, see below).
>
> Oh good points, thanks for testing!

np...as I'm using this myself it's nice if it works ;-)

> BTW, there’s “make hydra-jobs.scm”, which I occasionally use to test
> gnu-system.scm (it spits a raw alist, which is enough to make sure that
> it works.)  We could similarly add “make cuirass-jobs.scm” eventually.

...looked into this briefly but this would mean adding some option to
evaluate.scm, something like

    ;; Without further ado...
    (match (command-line)
-     ((command file)
+     ((command file cuirass? ...))
...
-        (match ((module-ref %user-module 'hydra-jobs) store '())
+        (match ((module-ref %user-module
+           (if (equal? cuirass? "cuirass") cuirass-jobs 'hydra-jobs)
?           store '())

> Yes, separate patch for clarity: first patch does the Hydra/Cuirass
> split, second patch adds the ability to select a list of packages.
>
> Would that be OK?

Sure, done.

>> +  #:export (<license>
>
> I prefer not to export record type descriptors in general, because that
> exposes too much of the internals

Sure, I agree.  Using license? and accessors now.

As an aside: Interesting, I've been using GOOPS a lot with match and we have
standardised on only matching class/record type, like so

    (match o
      (($ <license>) ...)

so I was wondering why you didn't export <license>.  Now it makes sense:
you simply cannot use record destructors if you don't export <..> in the
first place.  For GOOPS that's a bit different, you don't have class?
for each <class>.

> Anyway, with this fixed, OK to push.

Thanks, pushed with all this fixed to master as 516b53828e90018126b79e7600cae9aa531e06d7

> After that we should update the config on berlin.guixsd.org to use this
> file directly.

Ricardo: ping?

> Thanks a lot!

Thank you!  Most welcome,
janneke

-- 
Jan Nieuwenhuizen <[email-masked]> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com