From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id EAuXNOGtw1+EdgAA0tVLHw (envelope-from ) for ; Sun, 29 Nov 2020 14:19:13 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id ICNzMOGtw19qFQAAB5/wlQ (envelope-from ) for ; Sun, 29 Nov 2020 14:19:13 +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 A0288940466 for ; Sun, 29 Nov 2020 14:19:08 +0000 (UTC) Received: from localhost ([::1]:52870 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kjNXf-0002gX-JC for larch@yhetil.org; Sun, 29 Nov 2020 09:19:07 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:46042) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kjNXa-0002gQ-4z for guix-patches@gnu.org; Sun, 29 Nov 2020 09:19:02 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:38555) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kjNXZ-00017Y-SS for guix-patches@gnu.org; Sun, 29 Nov 2020 09:19:01 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kjNXZ-0001dM-Nf for guix-patches@gnu.org; Sun, 29 Nov 2020 09:19:01 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#44800] [PATCH v2 1/3] Add Avahi support. Resent-From: Mathieu Othacehe Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 29 Nov 2020 14:19:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 44800 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 44800@debbugs.gnu.org Received: via spool by 44800-submit@debbugs.gnu.org id=B44800.16066595146212 (code B ref 44800); Sun, 29 Nov 2020 14:19:01 +0000 Received: (at 44800) by debbugs.gnu.org; 29 Nov 2020 14:18:34 +0000 Received: from localhost ([127.0.0.1]:50099 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kjNX7-0001c7-Uj for submit@debbugs.gnu.org; Sun, 29 Nov 2020 09:18:34 -0500 Received: from eggs.gnu.org ([209.51.188.92]:55996) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kjNX6-0001br-4g for 44800@debbugs.gnu.org; Sun, 29 Nov 2020 09:18:33 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:33874) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kjNX0-0000wR-GA; Sun, 29 Nov 2020 09:18:26 -0500 Received: from [2a01:e0a:19b:d9a0:1000:9314:5b51:f241] (port=41366 helo=cervin) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kjNX0-00007p-03; Sun, 29 Nov 2020 09:18:26 -0500 From: Mathieu Othacehe References: <20201124132145.217751-1-othacehe@gnu.org> <20201124132145.217751-2-othacehe@gnu.org> <87k0u6spcj.fsf@gnu.org> Date: Sun, 29 Nov 2020 15:18:24 +0100 In-Reply-To: <87k0u6spcj.fsf@gnu.org> ("Ludovic =?UTF-8?Q?Court=C3=A8s?="'s message of "Fri, 27 Nov 2020 18:04:44 +0100") Message-ID: <87k0u4qma7.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-Migadu-Flow: FLOW_IN X-Migadu-Spam-Score: -2.78 X-Scanner: ns3122888.ip-94-23-21.eu Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=pass (policy=none) header.from=gnu.org; 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-TUID: nBrpdKPiNY8X Hey Ludo, Thanks for the review :) > An argument in favor of making it mandatory is that it would help make > the feature more widely used, and thus more widely useful. Yes, and most of the other Guile dependencies are mandatory, so having Guile-Avahi also mandatory feels safer. Plus I'm sure that it can be useful for other use cases such as offloading. > You could use (srfi srfi-9) =E2=80=98define-record-type=E2=80=99 since th= e extra (guix > records) features are not necessary here. I use (guix records) feature allowing to call the record constructor with non positional arguments. > (I wanted to add an API in Guile-Avahi to =E2=80=9Cinvert inversion of co= ntrol=E2=80=9D > so that one could escape callback hell but never got around to > completing it.) Sure, it would be nice, but given libavahi design, not an easy task :). > Can=E2=80=99t we obtain the IP address without creating a socket actually= ? Noob > here. I think we can use "getifaddrs" and the its "network-interfaces" binding, but the resulting code does not seem more readable. > >> + ;; Handle service resolution events. >> + (cond ((eq? event resolver-event/found) >> + (info (G_ "resolved service `~a' at `~a:~a'~%") >> + service-name (inet-ntop family address) port) > > IWBN to not add UI code in here. Sure, removed! Mathieu