guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#43494] [PATCH 2/4] services: guix: Add guix-build-coordinator-servi


From: Ludovic Courtès
Subject: [bug#43494] [PATCH 2/4] services: guix: Add guix-build-coordinator-service-type.
Date: Fri, 18 Sep 2020 22:20:58 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)

Christopher Baines <mail@cbaines.net> skribis:

> * gnu/services/guix.scm (<guix-build-coordinator-configuration>): New record
> type.
> (guix-build-coordinator-configuration, guix-build-coordinator-configuration?,
> guix-build-coordinator-configuration-package,
> guix-build-coordinator-configuration-user,
> guix-build-coordinator-configuration-group,
> guix-build-coordinator-configuration-datastore-uri-string,
> guix-build-coordinator-configuration-agent-communication-uri-string,
> guix-build-coordinator-configuration-client-communication-uri-string,
> guix-build-coordinator-configuration-allocation-strategy,
> guix-build-coordinator-configuration-hooks,
> guix-build-coordinator-configuration-guile,
> make-guix-build-coordinator-start-script,
> guix-build-coordinator-shepherd-services, guix-build-coordinator-activation,
> guix-build-coordinator-account): New procedures.
> (guix-build-coordinator-service-type): New variable.
> * gnu/tests/guix.scm (%test-guix-build-coordinator): New variable.
> * doc/guix.texi (Guix Services): Document it.

Yay!

> +@subsubheading Guix Build Coordinator
> +The @uref{https://git.cbaines.net/guix/build-coordinator/,Guix Build
> +Coordinator} aids in building derivations.  The Guix Daemon is still
                     ^
Maybe something like: “in distributing derivation builds among machines
running an @dfn{agent}”.

Also, s/Guix Daemon/build daemon/ or similar.

(In general I’m in favor of avoiding “brands” in documentation and
concept names.)

Maybe add a “@quotation Note” stating that it’s work in progress and
subject to change.

> +(define* (make-guix-build-coordinator-start-script database-uri-string
> +                                                   allocation-strategy
> +                                                   pid-file
> +                                                   
> guix-build-coordinator-package
> +                                                   #:key
> +                                                   
> agent-communication-uri-string
> +                                                   
> client-communication-uri-string
> +                                                   (hooks '())
> +                                                   (guile guile-3.0))
> +  (program-file
> +   "start-guix-build-coordinator"
> +   (with-extensions (cons guix-build-coordinator-package
> +                          ;; This is a poorly constructed Guile load path,
> +                          ;; since it contains things that aren't Guile
> +                          ;; libraries, but it means that the Guile libraries
> +                          ;; needed for the Guix Build Coordinator don't need
> +                          ;; to be individually specified here.
> +                          (map second (package-inputs
> +                                       guix-build-coordinator-package)))

Perhaps there should eventually be a ‘guix-build-coordinator’ command in
the package itself?

Otherwise LGTM, thanks!

One thing we discussed on IRC is the name and ways to set up one’s
monitor so that
guix-build-coordinator-configuration-client-communication-uri-string
fits on one line.  :-)

An idea that came to mind was “(Guix) dispatch(er)”, which is
synonymous.  You could use the (guix dispatch …) name space.
Food for thought!  (No rush, of course!)

Ludo’.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]