From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id cOH0LA+0lF9ZCAAA0tVLHw (envelope-from ) for ; Sat, 24 Oct 2020 23:09:03 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id WKDZKA+0lF9IKQAAbx9fmQ (envelope-from ) for ; Sat, 24 Oct 2020 23:09:03 +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 723B89404D3 for ; Sat, 24 Oct 2020 23:09:03 +0000 (UTC) Received: from localhost ([::1]:57690 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kWSek-00034E-EN for larch@yhetil.org; Sat, 24 Oct 2020 19:09:02 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:56258) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kWSec-000342-5C for guix-devel@gnu.org; Sat, 24 Oct 2020 19:08:54 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:55214) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kWSeb-0003ue-Si; Sat, 24 Oct 2020 19:08:53 -0400 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=53992 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1kWSeb-0004m9-Fw; Sat, 24 Oct 2020 19:08:53 -0400 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= To: 39819-done@debbugs.gnu.org Subject: Re: bug#39819: [PATCH 1/2] services: guix: Make /etc/guix/acl really declarative by default. References: <87v9fhf3my.fsf@inria.fr> <20201021150823.20508-1-ludo@gnu.org> Date: Sun, 25 Oct 2020 01:08:52 +0200 In-Reply-To: <20201021150823.20508-1-ludo@gnu.org> ("Ludovic =?utf-8?Q?Cou?= =?utf-8?Q?rt=C3=A8s=22's?= message of "Wed, 21 Oct 2020 17:08:22 +0200") Message-ID: <87tuujgr23.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: guix-devel@gnu.org Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=pass (policy=none) header.from=gnu.org; spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Spam-Score: -1.51 X-TUID: IM1XwjZfMupr --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hello! I went ahead and pushed this as c6ef627c97e5e6a94688baf20892ae3429f86897 with the changes below, accounting for Vagrant=E2=80=99s comment and for the fact that childhurds rely on the non-declarative behavior (which hadn=E2=80= =99t occurred to me before), as well as fixing other typos. Let me know if anything is amiss! Thanks, Ludo=E2=80=99. --=-=-= Content-Type: text/x-patch Content-Disposition: inline diff --git a/doc/guix.texi b/doc/guix.texi index 021d430c39..efb4ea1c47 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -14690,14 +14690,14 @@ Whether to authorize the substitute keys listed in @code{authorized-keys}---by default that of @code{@value{SUBSTITUTE-SERVER}} (@pxref{Substitutes}). -When @code{authorize-keys?} is true, @file{/etc/guix/acl} cannot be +When @code{authorize-key?} is true, @file{/etc/guix/acl} cannot be changed by invoking @command{guix archive --authorize}. You must instead adjust @code{guix-configuration} as you wish and reconfigure the system. This ensures that your operating system configuration file is self-contained. @quotation Note -When booting or reconfiguring to a system where @code{authorize-keys?} +When booting or reconfiguring to a system where @code{authorize-key?} is true, the existing @file{/etc/guix/acl} file is backed up as @file{/etc/guix/acl.bak} if it was determined to be a manually modified file. This is to facilitate migration from earlier versions, which @@ -14717,7 +14717,7 @@ Whether to use substitutes. @item @code{substitute-urls} (default: @code{%default-substitute-urls}) The list of URLs where to look for substitutes by default. -Support you would like to fetch substitutes from @code{guix.example.org} +Suppose you would like to fetch substitutes from @code{guix.example.org} in addition to @code{@value{SUBSTITUTE-SERVER}}. You will need to do two things: (1) add @code{guix.example.org} to @code{substitute-urls}, and (2) authorize its signing key, having done appropriate checks diff --git a/gnu/services/virtualization.scm b/gnu/services/virtualization.scm index edd0b644f5..eaf0bbde43 100644 --- a/gnu/services/virtualization.scm +++ b/gnu/services/virtualization.scm @@ -875,7 +875,16 @@ that will be listening to receive secret keys on port 1004, TCP." (permit-root-login #t) (allow-empty-passwords? #t) (password-authentication? #t))) - %base-services/hurd)))) + + ;; By default, the secret service introduces a pre-initialized + ;; /etc/guix/acl file in the childhurd. Thus, clear + ;; 'authorize-key?' so that it's not overridden at activation + ;; time. + (modify-services %base-services/hurd + (guix-service-type config => + (guix-configuration + (inherit config) + (authorize-key? #f)))))))) (define-record-type* hurd-vm-configuration make-hurd-vm-configuration --=-=-=--