From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms9.migadu.com with LMTPS id sEv+Hkp7b2R+iwAASxT56A (envelope-from ) for ; Thu, 25 May 2023 17:14:18 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id CAEVHkp7b2T7rgAAG6o9tA (envelope-from ) for ; Thu, 25 May 2023 17:14:18 +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 EE38635AAB for ; Thu, 25 May 2023 17:14:17 +0200 (CEST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q2CfF-0002oQ-P7; Thu, 25 May 2023 11:14:05 -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 1q2CfC-0002nU-Tg for guix-patches@gnu.org; Thu, 25 May 2023 11:14:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q2CfC-0004lD-Lh for guix-patches@gnu.org; Thu, 25 May 2023 11:14:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1q2CfC-0006In-HH for guix-patches@gnu.org; Thu, 25 May 2023 11:14:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#63403] [PATCH 1/1] services: wireguard: Implement a dynamic IP monitoring feature. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Thu, 25 May 2023 15:14:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 63403 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 63402@debbugs.gnu.org, 63403@debbugs.gnu.org Received: via spool by 63403-submit@debbugs.gnu.org id=B63403.168502760124146 (code B ref 63403); Thu, 25 May 2023 15:14:02 +0000 Received: (at 63403) by debbugs.gnu.org; 25 May 2023 15:13:21 +0000 Received: from localhost ([127.0.0.1]:47843 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1q2CeW-0006HN-LA for submit@debbugs.gnu.org; Thu, 25 May 2023 11:13:20 -0400 Received: from mail-qt1-f178.google.com ([209.85.160.178]:48369) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1q2CeT-0006H4-VV; Thu, 25 May 2023 11:13:18 -0400 Received: by mail-qt1-f178.google.com with SMTP id d75a77b69052e-3f6bafd4782so5548401cf.0; Thu, 25 May 2023 08:13:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1685027592; x=1687619592; h=content-transfer-encoding:mime-version:user-agent:message-id :in-reply-to:date:references:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to; bh=Fec5MLNSWNhvEcQxgsE+fb9OQM//l56VchTP0gKTq3k=; b=jykprqn7pfio/3lBiSFHpvXmpSjS/83tzlNQ2JRx5G5EeYmXm15IS5QsgydK1SeCx8 uBJY67kB65DqwohmKIn+kw7NO9tqPxWMy73g9bzm+EsOiueJlaTSozdhpUqQoe0JHPpK WJSEGDFPG+z7pAkH7VkjPIMTvYxmiyrj42PmISKfL/qEX2+1sSZPIXGYnv6YEZ0SeCCs O5eYbl0BkaY1hRTkEX+ydPi/PrX1o43l6FGLxZ8DBvvaZ1W4Wl0rhBBNtaWI4Xe+/4wc BHtXpRkO3W30K6iu9DpQ89MImnnQgdyGP1gQZmMvsMlDWFhjCntgrBP63zSyI8XzxrLB ttpQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685027592; x=1687619592; h=content-transfer-encoding:mime-version:user-agent:message-id :in-reply-to:date:references:subject:cc:to:from:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=Fec5MLNSWNhvEcQxgsE+fb9OQM//l56VchTP0gKTq3k=; b=ejp5UscfZh1p9PogJWWQtRcGTnhxSrJlj9eqMJvzEFoacgezMxg9jOBJkRmLrJhRn6 PQYbcTa/NuwBUoGDxOhDgA/WsR4cjxPX1ApIID3kx/Ej66Zggrt4EOwjgAAnjQQ+nnXb +TGCyZgQ0cqEGnWk1KVS0aOOtBtsRmpA56PBi04RZurT7aL4BQJ4Y+1o0aaxFtC9lvnp 5pRjYaJtFOUxsiXvLLYfPw1z6lFHs3RnagjjaPR31IuO+hTJJqGW+TviEbmolRYZ85mC Ameo+1bXuyi2FGo/Zrcj6UtZg6yovpbSYx710MA0n4R3SNRLucRm3LAlTKRQaBhUip34 MkEg== X-Gm-Message-State: AC+VfDxpZqMjVfO6EZhKBq0YvgtItGMHeg9Ur1Xp3AB5dMkestouXE0r 1UYMlLzsmwPb3fZG2HQvO3T2zhCVBlFHNA== X-Google-Smtp-Source: ACHHUZ7CPuWs2/C4qdpB+Tl+T9YW6onYgNtCnJ0kOOnl5mCwULsrVTwCcBYpW9VQowmYvVc/8MM6ew== X-Received: by 2002:a05:622a:1452:b0:3f7:b95:f088 with SMTP id v18-20020a05622a145200b003f70b95f088mr6363493qtx.20.1685027591772; Thu, 25 May 2023 08:13:11 -0700 (PDT) Received: from hurd (dsl-149-67.b2b2c.ca. [66.158.149.67]) by smtp.gmail.com with ESMTPSA id p4-20020a0cf684000000b00619adb4b66asm467720qvn.95.2023.05.25.08.13.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 May 2023 08:13:11 -0700 (PDT) From: Maxim Cournoyer References: <87cz2swgpu.fsf_-_@gnu.org> <87fs7ohrif.fsf@gmail.com> <87pm6pixvf.fsf@gnu.org> Date: Thu, 25 May 2023 11:13:10 -0400 In-Reply-To: <87pm6pixvf.fsf@gnu.org> ("Ludovic =?UTF-8?Q?Court=C3=A8s?="'s message of "Wed, 24 May 2023 16:53:56 +0200") Message-ID: <87h6s0fnqx.fsf@gmail.com> 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: 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-Country: US X-Migadu-Flow: FLOW_IN ARC-Seal: i=1; s=key1; d=yhetil.org; t=1685027658; a=rsa-sha256; cv=none; b=TPl+GGRxPPYwmYGe6OCqVNwya0hbfwcYEgvEl6cexLAtSjzIvFPECaJVafQBkLH1SAw6+H aYGrCoizpPL6KQLhet9dBMJBtfJJQvT5B6GGnedf6O1hRqqB/KSAFVazxsJO4ZEdw7xY1T xGdd4tvg7GIdk/BJ3uedk8xnmmZp1cI+WoSG9+kRIqvnW27S0SKBAxcv7Yl98SXNLDLB/m ATxt7TRg82Ds2ddlGZZNZ3Li56GTbqq3TK5Cf1eVgRGaQL0viznK869USH78NL7GjcFR+C dFC+6Xdndv2nvtiUNCDxy75y3hPYGdVb6jbO+MC6m/sDBN2iuLn0nuznyOYHjA== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20221208 header.b=jykprqn7; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=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" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1685027658; 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=Fec5MLNSWNhvEcQxgsE+fb9OQM//l56VchTP0gKTq3k=; b=oNo0LtqD6gIbKHI9qdFx1/XZ6WFtCP+GIHqaBVxPJa0YdpwVOFwvQFpQiQZxPsIdUZJq+n QouH+o3hLY+GtybIMIhspBVJVXscS+kibJckkP0oecX3p5R+oTOLd9fKd3gYFpiKk/MRJX VNumdfyDCY87mGKGcuJcHMAgzr0dq0ueZxPOoOx7sYGLw+chPXv2pHbINdUCOwDEsF+cgX NCgmpTHZYnfWoWpVH8bpvu++/vlNSJjoEvOahkqmp41xsB2MLn5utr6Q2xkxafOlEXhw7X 3i1psRgtq8G/s+0V+Rd+z6WGvm6eP7w/n5I450Pk/MPLJW1bRnUgN6m04oqjkQ== X-Migadu-Spam-Score: -1.51 X-Spam-Score: -1.51 X-Migadu-Queue-Id: EE38635AAB X-Migadu-Scanner: scn0.migadu.com Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20221208 header.b=jykprqn7; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=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" X-TUID: XNuKF4vQ6ZJL Hi Ludovic, Ludovic Court=C3=A8s writes: > Maxim Cournoyer skribis: > >> Yeah, upstream offers a contrib shell script called reresolve-dns.sh >> [0], that works a bit differently (it's doesn't actually monitor IPs but >> just keep a watch on when was the last successful handshake made). >> >> [0] https://github.com/WireGuard/wireguard-tools/blob/master/contrib/re= resolve-dns/reresolve-dns. >> >>> Would that be a viable option? WDYT? >> >> I think my Guile script is more precise in terms of what it does and >> also produces useful output. If I knew of the shell script existence >> when I started I probably wouldn't have bothered re-implementing it in >> Scheme, but since it's here, and better, I see no reason to not use it >> :-). I don't foresee high maintenance for the stable APIs involved >> (resolving host names and setting an endpoint with 'wg set'). > > I don=E2=80=99t doubt your script is better (first because it=E2=80=99s i= n Guile ;-)). > I=E2=80=99m concerned about adding non-trivial =E2=80=9Cperipheral=E2=80= =9D code that we=E2=80=99ll all > be responsible for going forward (the Jami services pose a similar > challenge IMO: I experienced first-hand the maintenance burden recently > when investigating system test failures.) I get that the Jami service is complex, but to be fair here the tests being broken by a (good) change in the marionette behavior caused by commit a09c7da, which also affected a few other tests, as demonstrated in the follow-up commit f518882, rather than because it crumbled under its own weight. I personally think this service is a great test suite for the service infrastructure in Guix :-) I've now fixed the Jami test suite with 99fc7e5. Hopefully QA helps catching regressions like this early in the future, avoiding the need to fix things after the facts. > So I=E2=80=99m a bit torn. I sympathize with the need to improve those > services, but I=E2=80=99m also concerned what will happen if we don=E2=80= =99t have clear > criteria to decide what to take and what to reject. I think this happens rarely enough that it can be left as an exercise of judgement rather than policy; e.g. deemed to provide enough value to justify the maintenance burden, keeping in mind that using some 'contrib' shell script from upstream is not guaranteed to be maintenance-free. In this case it's also not on any critical path: it'd only affects users of the new feature; if it ever breaks only that feature would be impacted. --=20 Thanks, Maxim