From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id cEo2AHxml2ISqQAAbAwnHQ (envelope-from ) for ; Wed, 01 Jun 2022 15:15:40 +0200 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id +E0PAHxml2JMPAEAauVa8A (envelope-from ) for ; Wed, 01 Jun 2022 15:15:40 +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 825672B02F for ; Wed, 1 Jun 2022 15:15:39 +0200 (CEST) Received: from localhost ([::1]:36258 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nwOCI-00031P-3P for larch@yhetil.org; Wed, 01 Jun 2022 09:15:38 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:57478) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nwO7r-0006Eb-3a for bug-guix@gnu.org; Wed, 01 Jun 2022 09:11:04 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:56104) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nwO7q-0005nS-9g for bug-guix@gnu.org; Wed, 01 Jun 2022 09:11:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1nwO7q-0002hx-1J for bug-guix@gnu.org; Wed, 01 Jun 2022 09:11:02 -0400 X-Loop: help-debbugs@gnu.org Subject: bug#54786: Installation tests are failing Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Wed, 01 Jun 2022 13:11:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 54786 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: othacehe@gnu.org, 54786@debbugs.gnu.org Received: via spool by 54786-submit@debbugs.gnu.org id=B54786.165408904410367 (code B ref 54786); Wed, 01 Jun 2022 13:11:01 +0000 Received: (at 54786) by debbugs.gnu.org; 1 Jun 2022 13:10:44 +0000 Received: from localhost ([127.0.0.1]:50001 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nwO7X-0002h9-Hl for submit@debbugs.gnu.org; Wed, 01 Jun 2022 09:10:43 -0400 Received: from mail-qt1-f169.google.com ([209.85.160.169]:41892) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nwO7T-0002go-JC for 54786@debbugs.gnu.org; Wed, 01 Jun 2022 09:10:42 -0400 Received: by mail-qt1-f169.google.com with SMTP id x20so1075958qtp.8 for <54786@debbugs.gnu.org>; Wed, 01 Jun 2022 06:10:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version:content-transfer-encoding; bh=DcZIpGEOWfdxnELt1b62WU5tDcLBJAPMwLeFIAEgHrw=; b=mTYPLJgJ5EVqLbCa+ycAU3Pw586cT3u4yCb5QvaYl1hU9MDqd+Ms3AUipOrMLuCIOH wYG5yJ+QX021jw0ZM/AfeXcFAC9yDNfjyXVZt60OvDe2YUp9FQw06HVZEf+i/EhDzS99 e74qK4C3t2gHbVSRMTg38nYZjAMlN5gCm9qalWu3WM9WBRZ2ktQU2CNrYbYIrpyaiM8W 9s1OjY7Ax9tT8wAEh49Pa0mCNB87pqOAjrl+Ovr4Fn1QxJZYoVeRHCUDTQIdE6uvsVtV +IV27gMd8kh0Oo60f3uPslgFrV1g60jLdrm5yKZFFhax17+I33hDOZmQ/oMlYSW60xrz HLjQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version:content-transfer-encoding; bh=DcZIpGEOWfdxnELt1b62WU5tDcLBJAPMwLeFIAEgHrw=; b=mlvxV9HCfgs1ySGbgPZG8v5JbFx3yTH+Y8M28ZUdMfeda5j96AEMwSO0nLlwOY3n1M RJn/dc80wsRZjF3lo7oiD5zfACUEzzyz+wgnd0F+oRCYWyrMhrYA0L4X/6TQ1N8scz/X M/klxD9edaOnfrmuyI1ct21POvZhKIzNhFOEa6BmK4nXtiOuYO06c0BYjrlp0JImAhAb qy2H8KrRfgRMPlIJA8TfZ893BzC+zKNEbPk1bsqLs/uQvyerDC18D4WWr0iTrzXTo1ca MWr65q6akb+x+Bi58k+PtOCvVnjx9+q+4vJ2rBIQpbOgVFIVfPOWApvv7fQwGjlipQnL onGg== X-Gm-Message-State: AOAM530hayFzfoJgl50b/gcPaoElMogKMB0uzPAydZXwwr9zJsmwZABC ZUe9/ZK/KJQIMQiuDDSTtQo= X-Google-Smtp-Source: ABdhPJx9xRVnsBlGCcuiniUlQF3hFKKwuZ6OFOfhi/bF4+ucW4zBLpLd/4fz4BzPaesDyZgSb5g2wg== X-Received: by 2002:a05:622a:118f:b0:2f9:2187:c9d with SMTP id m15-20020a05622a118f00b002f921870c9dmr44627062qtk.538.1654089034013; Wed, 01 Jun 2022 06:10:34 -0700 (PDT) Received: from hurd (dsl-154-171.b2b2c.ca. [66.158.154.171]) by smtp.gmail.com with ESMTPSA id y14-20020a05622a164e00b00304c13ec6c8sm1212323qtj.30.2022.06.01.06.10.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 01 Jun 2022 06:10:33 -0700 (PDT) From: Maxim Cournoyer References: <878rql9wh9.fsf@gnu.org> <20220531164407.13914-1-maxim.cournoyer@gmail.com> <87o7zcwvy6.fsf_-_@gnu.org> Date: Wed, 01 Jun 2022 09:10:31 -0400 In-Reply-To: <87o7zcwvy6.fsf_-_@gnu.org> ("Ludovic =?UTF-8?Q?Court=C3=A8s?="'s message of "Wed, 01 Jun 2022 11:54:09 +0200") Message-ID: <878rqgr0l4.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-guix@gnu.org List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+larch=yhetil.org@gnu.org Sender: "bug-Guix" X-Migadu-Flow: FLOW_IN X-Migadu-To: larch@yhetil.org X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1654089339; 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:dkim-signature; bh=DcZIpGEOWfdxnELt1b62WU5tDcLBJAPMwLeFIAEgHrw=; b=TXjLmgKpFtlWinjAyGZI1PekH4rLQOVAcYAR8kfODftfs27Xlt3oHdjmZ+AMko1/7aVMY2 ij1eKHg/1wwya5poAzxj3H30Nwg8PM+wCLVOleiuJhH1WHAE2kGDp3EV9p7br/H4FAH9r2 Yxc/TxpQgc8H7nEMqs41GjnnYq7vOSViuweNOpkE23seeCyQLV82vPDj89krBWIaL4Q9MS 60oJi1uSJsrptfE83hu0qDwYPcR6qtosY08s6w0PqZVDunFhQwFHSXHrlkocp+aswlwak1 Hqw3X1BVt2fPm7hgzaLtVxQ05+4am04R5wxdIvB23iP3RuwcWl8H1OrNVEEPww== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1654089339; a=rsa-sha256; cv=none; b=jByA24Yaok8k2J7mrfx/Ipf+fn2IxN8PIdMW1q4fvgNEjXDbuYsWMnErc16cwjUuM2L//2 XGhAHKxNn8ZWSIUh4DzPdQ5hx65K11ZeLMlff0IkRS5lKGFtD1wITMfmOn4SJGGt5w9AJ3 obHIRSm7qLn+LfhEP/b5XAOQIUJpzKpDLMyl0OAKMzNgS11zdLULeVOkEGFNU3poERksrB oc6pfl5x4rtsO6WvqbsJ16YgS4dYe6dbT7Nxjd91eqPxZPvqVOK79bCnLlSRWKjs38wrov DEzJX2ufy02HT7wpj8atKSkxdkXlPT2PudqqD9flgcY/iTprRqEymzO/s6KgVQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=mTYPLJgJ; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "bug-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-guix-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: 5.67 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=mTYPLJgJ; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "bug-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-guix-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: 825672B02F X-Spam-Score: 5.67 X-Migadu-Scanner: scn0.migadu.com X-TUID: j4UtkfzF220g Hi Ludovic, Ludovic Court=C3=A8s writes: > Hi Maxim, > > Maxim Cournoyer skribis: > >> gnu/build/dbus-service.scm | 212 ++++++++++++++++ >> gnu/build/jami-service.scm | 390 +++++------------------------ >> gnu/local.mk | 1 + >> gnu/packages/glib.scm | 19 +- >> gnu/services/telephony.scm | 500 +++++++++++++++++-------------------- >> gnu/tests/telephony.scm | 412 +++++++++++++++--------------- >> 6 files changed, 726 insertions(+), 808 deletions(-) >> create mode 100644 gnu/build/dbus-service.scm > > Before going further, I=E2=80=99d like to understand: this does more than= just > fix the Jami system tests, right? > > It would have been nice to have surgical changes to =E2=80=9Cjust=E2=80= =9D fix the > tests, along the lines of , > possibly followed by a rework of the whole machinery, if that=E2=80=99s > possible. It's not really possible unfortunately, because the rework from talking to the D-Bus API via the 'dbus-send' binary to using Guile AC/D-bus was needed or at least simplified fixing the issues. Going back trying to make it work the way it was would be new work that'd end up being scrapped anyway with a subsequent commit making use of the Guile D-Bus library, so I'm not interested in pursuing it. > Besides, I think we should talk to Jami upstream (which shouldn=E2=80=99t= be too > hard :-)). It doesn=E2=80=99t seem reasonable to me to have 800+ lines o= f code > in the distro to start one service. Usually the =E2=80=98start=E2=80=99 = and =E2=80=98stop=E2=80=99 > methods are between 2 and 10 lines of code. > > What do you think is missing upstream so that starting Jami is > simpler? 1) Lack of D-Bus support in Shepherd to easily start D-Bus services. The upstream systemd service definition for the Jami daemon (jamid) is this: --8<---------------cut here---------------start------------->8--- # net.jami.daemon.service [D-BUS Service] Name=3Dcx.ring.Ring Exec=3D@LIBDIR@/jamid --8<---------------cut here---------------end--------------->8--- But that's nearly not where the complexity of our jami-service-type lies. Rather, it's in the following: 2) The lack of a way to declaratively configure Jami and the need to use D-Bus API to issue commands to Jami non-interactively. For example, to have Jami import an account it's necessary to go via either a) the GUI or b) the D-Bus API The Jami service in Guix makes use of b), which introduces the need for some Scheme bindings wrapping the low-level D-Bus interface. Perhaps such bindings could live in Jami itself. The second point (2) could be addressed upstream, but since it's a rather niche use case (the common use case is simply running the client GUI), is already achievable via D-Bus, and would probably require a considerable amount of work in Jami itself, I think we can keep it as is for now, as a Guix System exclusive feature ;-). Note that even if Jami could be configured via configuration files, we'd still want to be able to communicate with it via D-Bus to maintain the possible actions currently available in our Shepherd service (listing/enabling/disable accounts, etc.), so it'd only really help to reduce the start slot, and that's it. We'd still need most of the D-Bus bindings, so it wouldn't help that much anyway. I hope that clarifies how our jami-service-type is both complex but also unique. Happy video-conferencing! Maxim