From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id uCakGEoYZV8OdAAA0tVLHw (envelope-from ) for ; Fri, 18 Sep 2020 20:27:54 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id CNqVFEoYZV+3BwAA1q6Kng (envelope-from ) for ; Fri, 18 Sep 2020 20:27:54 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id DBC439404C5 for ; Fri, 18 Sep 2020 20:27:53 +0000 (UTC) Received: from localhost ([::1]:48584 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kJMtW-0004AI-Ka for larch@yhetil.org; Fri, 18 Sep 2020 16:22:10 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:43020) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kJMtO-00048X-CD for guix-patches@gnu.org; Fri, 18 Sep 2020 16:22:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:32984) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kJMtO-000311-2G for guix-patches@gnu.org; Fri, 18 Sep 2020 16:22:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kJMtN-0005qr-VG for guix-patches@gnu.org; Fri, 18 Sep 2020 16:22:01 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#43494] [PATCH 2/4] services: guix: Add guix-build-coordinator-service-type. Resent-From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 18 Sep 2020 20:22:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43494 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Christopher Baines Cc: 43494@debbugs.gnu.org Received: via spool by 43494-submit@debbugs.gnu.org id=B43494.160046047022430 (code B ref 43494); Fri, 18 Sep 2020 20:22:01 +0000 Received: (at 43494) by debbugs.gnu.org; 18 Sep 2020 20:21:10 +0000 Received: from localhost ([127.0.0.1]:44530 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kJMsY-0005pi-B4 for submit@debbugs.gnu.org; Fri, 18 Sep 2020 16:21:10 -0400 Received: from eggs.gnu.org ([209.51.188.92]:35840) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kJMsV-0005pU-SA for 43494@debbugs.gnu.org; Fri, 18 Sep 2020 16:21:09 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:56360) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kJMsQ-0002s3-Gb; Fri, 18 Sep 2020 16:21:02 -0400 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=45402 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kJMsO-0007V7-Fb; Fri, 18 Sep 2020 16:21:01 -0400 From: Ludovic =?UTF-8?Q?Court=C3=A8s?= References: <20200918184042.22660-1-mail@cbaines.net> <20200918184042.22660-2-mail@cbaines.net> Date: Fri, 18 Sep 2020 22:20:58 +0200 In-Reply-To: <20200918184042.22660-2-mail@cbaines.net> (Christopher Baines's message of "Fri, 18 Sep 2020 19:40:40 +0100") Message-ID: <87a6xmvnth.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Spam-Score: -3.3 (---) X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Spam-Score: -1.01 X-TUID: tucw4lXhfDXj Christopher Baines skribis: > * gnu/services/guix.scm (): New rec= ord > type. > (guix-build-coordinator-configuration, guix-build-coordinator-configurati= on?, > 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-activati= on, > 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: =E2=80=9Cin distributing derivation builds among mach= ines running an @dfn{agent}=E2=80=9D. Also, s/Guix Daemon/build daemon/ or similar. (In general I=E2=80=99m in favor of avoiding =E2=80=9Cbrands=E2=80=9D in do= cumentation and concept names.) Maybe add a =E2=80=9C@quotation Note=E2=80=9D stating that it=E2=80=99s wor= k in progress and subject to change. > +(define* (make-guix-build-coordinator-start-script database-uri-string > + allocation-strategy > + pid-file > + guix-build-coordinato= r-package > + #:key > + agent-communication-u= ri-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 pat= h, > + ;; since it contains things that aren't Guile > + ;; libraries, but it means that the Guile libr= aries > + ;; 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 =E2=80=98guix-build-coordinator=E2=80= =99 command in the package itself? Otherwise LGTM, thanks! One thing we discussed on IRC is the name and ways to set up one=E2=80=99s monitor so that guix-build-coordinator-configuration-client-communication-uri-string fits on one line. :-) An idea that came to mind was =E2=80=9C(Guix) dispatch(er)=E2=80=9D, which = is synonymous. You could use the (guix dispatch =E2=80=A6) name space. Food for thought! (No rush, of course!) Ludo=E2=80=99.