From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp11.migadu.com ([2001:41d0:403:478a::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms9.migadu.com with LMTPS id WO9MJc3pDmVLfgEA9RJhRA:P1 (envelope-from ) for ; Sat, 23 Sep 2023 15:36:13 +0200 Received: from aspmx1.migadu.com ([2001:41d0:403:478a::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp11.migadu.com with LMTPS id WO9MJc3pDmVLfgEA9RJhRA (envelope-from ) for ; Sat, 23 Sep 2023 15:36:13 +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 48B045D1C7 for ; Sat, 23 Sep 2023 15:36:13 +0200 (CEST) Authentication-Results: aspmx1.migadu.com; dkim=none; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1695476173; 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:resent-cc: resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post; bh=HV8MhY/Tj4V/nGpidkDhwCwBQXiHf2E8E9vNY0jw5Ok=; b=ZpVF4Qd8wC6dcNLPg6quqU+j9/qapsIwMDSuyysTv5I7oyTs15dIIYiUo5MWnVsW5935ZT 8tPJ2XXS5yGr6q56RKR2YrxxVSEDnghe38i3pl1LKAiZwZelQu1oDbleh4Z3Y27wROIL4E vnQX9FK95XCyyZ7uxR0IeM5Vn6v1+kN6vKwCAG9cmFRSgc3wfbywz6MNVGBzmOCN48J6JZ 9B2x3JxyMZVg5dt39y/xTGIOjq+CwTxtrHddn5DkHgjXxbezKJ7qvuFu3PLk+CKp/w1OEm rOxNgIjMoPH2fZASRf3WSNinOdXj4JSBuwXgU5GgwwTrbwUIZ0GUL8wLgKmZcw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1695476173; a=rsa-sha256; cv=none; b=Z96KM63i+IF1xB5pB7u2rqYqhFc31U5Y4D1MQw7FJLva08NQArrfZG7fX9T4nBoOqoui+k sEaIjz1knEuS3PnRuVIa5X6zS3PETrlxHeN8zbBdJ0RmJbzccM0eCbyid1mzWH9vN70O3p cjzsOpKZhm/qrlQb72AgEDJ95MF8m559Hqc1SDqBbp5DuP8HwrzZTvE5d62eWOeDYsdgYw XkL//IacMJZWz2wwAQrJbGh4nBufX2xlMRROGCmvNzLdrYvFtpIv8MGEl1k1SQ6RbNVeCN inM4n9fNbQxmpyCoSJQda8W70Nop74G9E20N5+DdQNhhhg0WcGXHS/kaIs7Rsw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=none Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qk2nZ-0008SM-54; Sat, 23 Sep 2023 09:35:53 -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 ) id 1qk2nX-0008Rz-63 for guix-patches@gnu.org; Sat, 23 Sep 2023 09:35:51 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qk2nW-0001eM-UA for guix-patches@gnu.org; Sat, 23 Sep 2023 09:35:50 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qk2ni-0006B3-3m for guix-patches@gnu.org; Sat, 23 Sep 2023 09:36:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#63985] [PATCH v3 00/11] Service subsystem improvements Resent-From: Bruno Victal Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 23 Sep 2023 13:36:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 63985 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Liliana Marie Prikler Cc: 63985@debbugs.gnu.org, ludo@gnu.org, maxim.cournoyer@gmail.com Received: via spool by 63985-submit@debbugs.gnu.org id=B63985.169547614123704 (code B ref 63985); Sat, 23 Sep 2023 13:36:02 +0000 Received: (at 63985) by debbugs.gnu.org; 23 Sep 2023 13:35:41 +0000 Received: from localhost ([127.0.0.1]:37997 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qk2nM-0006AF-If for submit@debbugs.gnu.org; Sat, 23 Sep 2023 09:35:40 -0400 Received: from smtpmciv1.myservices.hosting ([185.26.107.237]:44014) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qk2nF-0006A0-Mj for 63985@debbugs.gnu.org; Sat, 23 Sep 2023 09:35:39 -0400 Received: from mail1.netim.hosting (unknown [185.26.106.173]) by smtpmciv1.myservices.hosting (Postfix) with ESMTP id BCA8520DF8; Sat, 23 Sep 2023 15:35:10 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail1.netim.hosting (Postfix) with ESMTP id DFAE280095; Sat, 23 Sep 2023 15:35:06 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at mail1.netim.hosting Received: from mail1.netim.hosting ([127.0.0.1]) by localhost (mail1-2.netim.hosting [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id R9cEFaLhYRS0; Sat, 23 Sep 2023 15:35:06 +0200 (CEST) Received: from [192.168.1.116] (unknown [10.192.1.83]) (Authenticated sender: lumen@makinata.eu) by mail1.netim.hosting (Postfix) with ESMTPSA id 5B3E380092; Sat, 23 Sep 2023 15:35:05 +0200 (CEST) Message-ID: <43394365-673f-4058-a11b-74cfef202e30@makinata.eu> Date: Sat, 23 Sep 2023 14:35:04 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Content-Language: en-US References: <5613dc86-54ac-4bdb-b75a-400b1cb124bf@makinata.eu> <6445e508cbc8a9f92d3a54263193936d168cd7cf.camel@gmail.com> From: Bruno Victal In-Reply-To: <6445e508cbc8a9f92d3a54263193936d168cd7cf.camel@gmail.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list 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-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-Migadu-Scanner: mx0.migadu.com X-Migadu-Spam-Score: -4.73 X-Spam-Score: -4.73 X-Migadu-Queue-Id: 48B045D1C7 X-TUID: n3040ZQYxAA+ On 2023-09-16 22:55, Liliana Marie Prikler wrote: > I'm not sure whether serializer options really add much value. You can > use functional programming to define serializers for you and pass those > options in a cleaner way IMHO. The documentation should be updated as > the changes are made. As for the switch to SRFI 171, I'm not sure > whether backwards compatibility with Guile 2.2 is a requirement > somewhere; if it isn't, that change is probably fine. Is SRFI-171 not available in Guile 2.2? Your last remark surprised me though: is Guix not running with Guile 3.0? I was the impression that this was the case since otherwise wouldn't this imply that `spawn' & co. can't be used anywhere? > Even if Guile implemented SRFI 233 now, I'm not sure we could use it > tomorrow. And even once we can use SRFI 233, we can keep backwards- > compatibility be re-exporting things. (…) In that aspect I'm willing to be patient vs. maintaining a temporary (read as: permanent) code though I think that it should be possible to make it backwards-compatible, even if we completely gut out its innards later and replace them with SRFI-233. > (…) The question is how necessary it > will be for us to maintain our own INI format writer. NetworkManager > is one use case, but perhaps we have others (perhaps even in the gnome > world – gdm maybe?) Certainly there are many applications that make use of INI-like files for configuration and for INI ones it would be convenient, though I should caution that there are many things that can look like INI but aren't: * NetworkManager accepts some entries that have append behavior via 'KW += val' and have repetition. In some cases I think the ordering matters too. (Since our define-configuration definition for it doesn't attempt to fully cover every nook and cranny of it I think using INI here doesn't hurt.) * TOML * Files that can have leading entries but without a section. These can be thought to belong to some top level but invisible section yet the generic-ini doesn't handle these. (yet) There's some assumptions I made while writing generic-ini which make it not as generic as imparted by its name and as such, it can only be used in the following conditions: * The ordering of the entries and sections doesn't matter. * Every entry belongs to a section. * (… perhaps more? …) >> Naturally these are no longer relevant if this generic-ini module >> approach is abandoned. > I think we can still upgrade this to define-configuration without a > generic-ini, but see above. That being said, we can certainly split> this into two series (…) Sure. > (…) at the point you currently feel comfortable with > and work from there. > > WDYT? I'm inclined to write-off the generic-ini though as discussed above, there's some demand for some kind of INI format writer so personally I'd be OK with temporarily maintaining this writer if we can really make it an experiment/true to the word “temporary” thing. This would mean that: * It should be only used internally by services living in Guix repository. I'm OK with going around and reworking/replacing usages of it when the time comes to retire it/when guile gets this INI thing natively. (i.e. #:export (…) doesn't mean that I'm intending it to be used outside of the repo with stability promises.) WDYT? -- Furthermore, I consider that nonfree software must be eradicated. Cheers, Bruno.