GNU bug report logs -
#46031
services: cuirass: Add "simple-cuirass-services".
Previous Next
Reported by: Mathieu Othacehe <othacehe <at> gnu.org>
Date: Fri, 22 Jan 2021 08:52:02 UTC
Severity: normal
Done: Mathieu Othacehe <othacehe <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
Hi,
Mathieu Othacehe <othacehe <at> gnu.org> skribis:
>> I guess the first step would be to provide an a ‘package-channel(s)’
>> procedure that does like ‘package-provenance’, but returns a list of
>> channels.
>
> Seems fine to me. Here's an implementation attached. If it works for
> you, the next step will be to make the "cuirass-jobs" procedure of
> "gnu-system.scm" operate on channels I guess.
But by definition, “gnu-system.scm” is about the 'guix channel.
Intuitively I’d expect channel handling to happen in user code: either
in the user-provided manifest, or in some helper code in Cuirass. WDYT?
> From d44dcd5d153ba0a4627c205f24a0741384f3d301 Mon Sep 17 00:00:00 2001
> From: Mathieu Othacehe <othacehe <at> gnu.org>
> Date: Tue, 23 Feb 2021 14:24:39 +0100
> Subject: [PATCH] describe: Add package-channels.
>
> * guix/describe.scm (package-channels): New procedure.
[...]
> +(define (package-channels package)
> + "Return the list of channels providing PACKAGE or an empty list if it could
> +not be determined."
> + (match (and=> (package-location package) location-file)
> + (#f #f)
The #f return value doesn’t match the docstring.
> + (file
> + (let ((file (if (string-prefix? "/" file)
> + file
> + (search-path %load-path file))))
> + (and file
> + (string-prefix? (%store-prefix) file)
> +
> + (filter-map
> + (lambda (entry)
> + (let ((item (manifest-entry-item entry)))
> + (and (or (string-prefix? item file)
> + (string=? "guix" (manifest-entry-name entry)))
> + (manifest-entry-channel entry))))
> + (current-profile-entries)))))))
To avoid duplication, perhaps you should rewrite ‘package-provenance’ in
terms of ‘package-channels’?
Otherwise LGTM, thanks!
Thanks,
Ludo’.
This bug report was last modified 4 years and 91 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.