From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <guix-devel-bounces+larch=yhetil.org@gnu.org>
Received: from mp10.migadu.com ([2001:41d0:306:2d92::])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	by ms9.migadu.com with LMTPS
	id IAC+IVt4BWVuIwEAG6o9tA:P1
	(envelope-from <guix-devel-bounces+larch=yhetil.org@gnu.org>)
	for <larch@yhetil.org>; Sat, 16 Sep 2023 11:41:47 +0200
Received: from aspmx1.migadu.com ([2001:41d0:306:2d92::])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	by mp10.migadu.com with LMTPS
	id IAC+IVt4BWVuIwEAG6o9tA
	(envelope-from <guix-devel-bounces+larch=yhetil.org@gnu.org>)
	for <larch@yhetil.org>; Sat, 16 Sep 2023 11:41:47 +0200
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 3FF5846EC8
	for <larch@yhetil.org>; Sat, 16 Sep 2023 11:41:47 +0200 (CEST)
Authentication-Results: aspmx1.migadu.com;
	dkim=pass header.d=gnu.org header.s=fencepost-gnu-org header.b=iIIpcTnS;
	spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org";
	dmarc=pass (policy=none) header.from=gnu.org
ARC-Seal: i=1; s=key1; d=yhetil.org; t=1694857307; a=rsa-sha256; cv=none;
	b=BYTm0UMMQOGk116DTJaDE0oUDyAMEvCAzrAPR8yQuaH8SKo2gHkwmd8Mm9y7NVDLgD1pRe
	+g8YQxk1syfkVUR+haItfipQ9uGKjVeJn1G7J3T5X5nlrbAkkSPU49eA+tlu1iug5A+4i1
	KaNDboMhpQYeXmkYDExPHnkeLbUfT5t1XB0mTFMjD7qUo+kfqFVutre90CiKUk0H+NHI1k
	WB2kO9+A4RJb++a85PqKWbsadNiHtZXpU4YcvFcC6UWg0LJCJ7C77+aa9bL/BcqKBEmqJg
	gUashH5T6sVAnjWh9kyJLsl9eNQSwXFW3CaqBxeEaLY+77a0RF5JYNrDmv0e5g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org;
	s=key1; t=1694857307;
	h=from:from:sender:sender:reply-to:subject:subject:date:date:
	 message-id:message-id:to:to:cc:cc:mime-version:mime-version:
	 content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references:list-id:list-help:
	 list-unsubscribe:list-subscribe:list-post:dkim-signature;
	bh=0B3g57T6eoFFWdLuXQzrYm3w8N3e9ISNDntSz3EPIPo=;
	b=FMCv1eRCiEur1Fuii6lGRIrzwgFFV/KI7jYDXkbUFMZrTEbI4qP5FkOcb8oSHHFL7brO/k
	vlAJ287xyLc8DOSAWb7H6F/zjgI2MvSuWHZrih1AqS8WLZlTzacrLS7FHqNUN3o1u2KhVN
	waRlTembQSYCMM8JE+WNQzpAsDSaVNJr6v3IYHjeYd6/SyQ+6k23qC1COsKQ3h9cwqIIIR
	FkU5K3bsxv5nL5llt2syeLgZY1n4qZl1vVYi3Z7xH0jzUKqLm/K0CYPw0vxfT6C14SMpFp
	YInWfnVcIu8GLEy9cl6svGSYEcI5nd1tcal2sNK/OTbk+DzCmgj7jLnzY0klbA==
ARC-Authentication-Results: i=1;
	aspmx1.migadu.com;
	dkim=pass header.d=gnu.org header.s=fencepost-gnu-org header.b=iIIpcTnS;
	spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org";
	dmarc=pass (policy=none) header.from=gnu.org
Received: from localhost ([::1] helo=lists1p.gnu.org)
	by lists.gnu.org with esmtp (Exim 4.90_1)
	(envelope-from <guix-devel-bounces@gnu.org>)
	id 1qhRnn-00022n-C9; Sat, 16 Sep 2023 05:41:23 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <othacehe@gnu.org>) id 1qhRnk-00022Y-BY
 for guix-devel@gnu.org; Sat, 16 Sep 2023 05:41:20 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <othacehe@gnu.org>)
 id 1qhRnk-0000Lo-3G; Sat, 16 Sep 2023 05:41:20 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To:
 From; bh=0B3g57T6eoFFWdLuXQzrYm3w8N3e9ISNDntSz3EPIPo=; b=iIIpcTnStex27qcRqn+X
 HGgp5Tx7JfSlCKNPs1S+VCJD1cztx2f6jaFOV0QTf0mcIVPr9aYQkcmTUg0ng3LlUcwSIK34/vpmb
 Zi0lurdB18S2CYt4TIx6bNkbLtyfWfngTTuYz+mEh08Xsa4fkmncRqrTjWgW0tG89OoWEvIfbaGP6
 IXZltVwn5GAc3UAplvRKvRsZ8GnMbEHvOA2zBtymZ4vivvj1GGqHgFH5lAxgdyVX7bPkHPNqsMdk8
 hRsQQxKdJs8Q/L6xCyQuzBC2frdsNdRZKsUQicv/ZuVn2f04C1fQOkRUKP6V/7qS05XBZ91Du/LJ3
 6b8mQtCjvoLrvg==;
From: Mathieu Othacehe <othacehe@gnu.org>
To: Christopher Baines <mail@cbaines.net>
Cc: Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@gnu.org>,  guix-devel@gnu.org
Subject: Re: Implementing the guix-dameon in Guile
References: <875y4et4up.fsf@cbaines.net> <87il8cc27p.fsf@gnu.org>
Date: Sat, 16 Sep 2023 11:41:17 +0200
In-Reply-To: <87il8cc27p.fsf@gnu.org> ("Ludovic =?utf-8?Q?Court=C3=A8s=22'?=
 =?utf-8?Q?s?= message of "Thu, 14 Sep 2023 15:29:46 +0200")
Message-ID: <87a5tmqwua.fsf@gnu.org>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-BeenThere: guix-devel@gnu.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Development of GNU Guix and the GNU System distribution."
 <guix-devel.gnu.org>
List-Unsubscribe: <https://lists.gnu.org/mailman/options/guix-devel>,
 <mailto:guix-devel-request@gnu.org?subject=unsubscribe>
List-Archive: <https://lists.gnu.org/archive/html/guix-devel>
List-Post: <mailto:guix-devel@gnu.org>
List-Help: <mailto:guix-devel-request@gnu.org?subject=help>
List-Subscribe: <https://lists.gnu.org/mailman/listinfo/guix-devel>,
 <mailto:guix-devel-request@gnu.org?subject=subscribe>
Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org
Sender: guix-devel-bounces+larch=yhetil.org@gnu.org
X-Migadu-Flow: FLOW_IN
X-Migadu-Country: US
X-Migadu-Spam-Score: -8.14
X-Spam-Score: -8.14
X-Migadu-Queue-Id: 3FF5846EC8
X-Migadu-Scanner: mx2.migadu.com
X-TUID: aG0OEAlfps5G


Hey Chris,

Congrats on getting the grant! I'm sure it will lead to a lot of
positive things. I tried it myself a couple years ago, for
the exact same subject, without success.=20

> I imagine the daemon could be structured as a set of actors (it=E2=80=99s=
 really
> my thing these days ;-)), with an eye on facilitating code sharing and
> interaction with the Coordinator, Cuirass, and all that.

I think this point is really important here. If the offload mechanism of
the existing guix-daemon was scaling correctly, with a better API, we
would probably never had to develop the Cuirass remote worker and the
Build Coordinator mechanisms.

Perhaps, part of the Build Coordinator code could be one day integrated
inside the new guix-daemon so that we can only use one offload mechanism
for all use cases. Users of the current "guix offload" as well as CI
tools could rely upon a unique offload mechanism.

The three other points I had in mind when proposing the subject to NLNet
were to:

- Fix the sqlite contention issues that have been observed on Berlin and
  other machines with huge local databases.

- Remove the GC lock: I think it has been done on recent nix-daemon.

- Add support for unprivileged daemon.

I don't know if it fits your plans but thought it could be interesting
to share that.

Good luck,

Mathieu