From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2.migadu.com ([2001:41d0:303:e224::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms8.migadu.com with LMTPS id +CNWHwxwwWWrPgEAe85BDQ:P1 (envelope-from ) for ; Tue, 06 Feb 2024 00:32:28 +0100 Received: from aspmx1.migadu.com ([2001:41d0:303:e224::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2.migadu.com with LMTPS id +CNWHwxwwWWrPgEAe85BDQ (envelope-from ) for ; Tue, 06 Feb 2024 00:32:28 +0100 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=planete-kraus.eu header.s=albinoniB header.b="A 9Mg0tY"; dmarc=pass (policy=none) header.from=gnu.org; 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=1707175948; h=from:from:sender:sender:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: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=j1HLbRE2LTZjD50VJ4AGvJLvMqygxbNZVHaqbI7w73Y=; b=WOr5oF18kGHBsVvoH+o3T82bxMktdVr9tFLAW44mRtpz+2I25oqP3OGrSXxk4j4jhzD56t ZyokNMX4Si+mCkL5n6JaS1vYex6PNObYZCbY5/j9FQokwo03dewHGpHdzzDgAnWuwCr72j 5OvxeE2Jr4XrCY8iCoXHHwYyeOG6SDiw6nh+NrmnF0FEuoTBViraawJRo0lsC14tE2Y8si /r0xhVNhWcZHRAvlF3XOCE9g8qY6e3sJA4hySPsq5fNKzFgcY5oyts1j8/t+16seFtb/V9 +N7W98hEt9RcP4AEBTw4g9Hw/6RFymtxY1jacNbJ/gDnifo+aBUvOL76GQJwsQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=planete-kraus.eu header.s=albinoniB header.b="A 9Mg0tY"; dmarc=pass (policy=none) header.from=gnu.org; 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-Seal: i=1; s=key1; d=yhetil.org; t=1707175948; a=rsa-sha256; cv=none; b=okQowuxfaH+cpmwwBTd6up8NFN131jI5R6ExKgsKjJKUYBn7GgF4WqvC6Qab5SPxaiKIkI e3vyXZF4KfUVnk6IcAN9I5hqfiUfSP+DoMwObOmFI9j5QXOeHo24qLjuyrBfobyZs8CCSU YsxvGvSceSXYPml1VMpiWkrRBUJN3NB3kIw4EGUBUvPDhVBXD/Z/OJ3+tYhNUfna2+XNMA Q46QPZWHDJeJ1nWeEic2kYoI2Ji+vl0/NIddBSZRdGhBS2zGDgwtJ0xyE2Dm5LhsvuAFkn 7ilSLNKqZHwc4Lb3noAjq4lkLbQmgUn5u9fAfWa0tSBcXm98R+G/pqw8GG7vHQ== 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 4F4291F991 for ; Tue, 6 Feb 2024 00:32:28 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rX8RM-0001EV-Kv; Mon, 05 Feb 2024 18:31:52 -0500 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 1rX8RK-0001DA-98 for guix-patches@gnu.org; Mon, 05 Feb 2024 18:31:50 -0500 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 1rX8RK-0003ol-0T for guix-patches@gnu.org; Mon, 05 Feb 2024 18:31:50 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rX8RW-00075F-Pk for guix-patches@gnu.org; Mon, 05 Feb 2024 18:32:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#68716] [PATCH gnome-team v3 5/5] services: gnome: Use a blocklist for udev configurations. Resent-From: Vivien Kraus Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 05 Feb 2024 23:32:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 68716 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 68716@debbugs.gnu.org Cc: rg@raghavgururajan.name, vivien@planete-kraus.eu, liliana.prikler@gmail.com, maxim.cournoyer@gmail.com Received: via spool by 68716-submit@debbugs.gnu.org id=B68716.170717588327141 (code B ref 68716); Mon, 05 Feb 2024 23:32:02 +0000 Received: (at 68716) by debbugs.gnu.org; 5 Feb 2024 23:31:23 +0000 Received: from localhost ([127.0.0.1]:52806 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rX8Qs-00073g-Dw for submit@debbugs.gnu.org; Mon, 05 Feb 2024 18:31:22 -0500 Received: from planete-kraus.eu ([89.234.140.182]:54456) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rX8Ql-00072m-2v for 68716@debbugs.gnu.org; Mon, 05 Feb 2024 18:31:16 -0500 Received: from planete-kraus.eu (localhost [127.0.0.1]) by planete-kraus.eu (OpenSMTPD) with ESMTP id cc0f6ad3; Mon, 5 Feb 2024 23:30:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=planete-kraus.eu; h= message-id:in-reply-to:references:from:date:subject:to:cc :mime-version; s=albinoniB; bh=JepUA8O+J6uPi4mDdMnf+IM3XVg=; b=A 9Mg0tYeMRW0rexKH4jMdFCMLAYXBm1HqwMdKQ5quFfjeksjg24VYQgqrdIJGvuk2 BA8jDuk1tai5S1k8Y2Q0qbIIS+Up+4/NEt/Trnc+gy97QUt4TBx418a628euEU6K iaI1+i0Nc9a9oddsauIxjIXEFM7dw5cY5D7wncrJ/x2Rc1xds5gbMi7/WA0CiguU QzPwgwX2fPkPuX22ecCH+nrfQQ4GqEeMtTKNYFYKCGWlNsLbRUP6sJX2xVWLrsVg QFOFVaEVk76emUn7J0woe73d1mmB4TbBLpEmFyfC5quqDUst5Q1bUHMUAgP9rT+s 2fr/mEWCA8kYoXueiMAnA== Received: by planete-kraus.eu (OpenSMTPD) with ESMTPSA id 0addf52a (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO); Mon, 5 Feb 2024 23:30:56 +0000 (UTC) Message-ID: <2887b3fe20091da84408d10cc25f17b160d184ab.1707175669.git.vivien@planete-kraus.eu> In-Reply-To: References: Date: Mon, 5 Feb 2024 19:30:25 +0100 MIME-Version: 1.0 User-Agent: Evolution 3.48.4 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: , Reply-to: Vivien Kraus X-ACL-Warn: , Vivien Kraus via Guix-patches From: Vivien Kraus via Guix-patches via 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-Spam-Score: -5.67 X-Spam-Score: -5.67 X-Migadu-Queue-Id: 4F4291F991 X-Migadu-Scanner: mx12.migadu.com X-TUID: Q/EuHhiSAMiq The gnome-udev-configuration-files now lists every udev rule and hardware file, and remove files based on a user-supplied list of regular expressions. * gnu/services/desktop.scm (gnome-desktop-configuration): Add the udev-blocklist field. (gnome-udev-configuration-files): Change behavior. Change-Id: I6df4b896652581c42a35ea3ba1e4849ad72d12ef --- gnu/services/desktop.scm | 46 +++++++++++++++++++++++++++------------- 1 file changed, 31 insertions(+), 15 deletions(-) diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm index 263ae61698..f04e99ba9a 100644 --- a/gnu/services/desktop.scm +++ b/gnu/services/desktop.scm @@ -87,6 +87,7 @@ (define-module (gnu services desktop) #:use-module (guix ui) #:use-module (guix utils) #:use-module (guix gexp) + #:use-module (guix modules) #:use-module (srfi srfi-1) #:use-module (srfi srfi-26) #:use-module (srfi srfi-35) @@ -156,6 +157,7 @@ (define-module (gnu services desktop) gnome-desktop-configuration-shell gnome-desktop-configuration-utilities gnome-desktop-configuration-extra-packages + gnome-desktop-configuration-udev-blocklist gnome-desktop-service gnome-desktop-service-type @@ -1494,7 +1496,12 @@ (define-configuration/no-serialization gnome-desktop-configuration "A list of GNOME-adjacent packages to also include. This field is intended for users to add their own packages to their GNOME experience. Note, that it already includes some packages that are considered essential by some (most?) -GNOME users.")) +GNOME users.") + (udev-blocklist + (list-of-strings '()) + "A list of regular expressions denoting udev rules or hardware file names +provided by any package, that should not be installed. By default, every udev +rule and hardware file specified by all packages are installed.")) (define (gnome-package gnome name) "Return the package NAME among the GNOME package inputs. NAME can be a @@ -1509,20 +1516,29 @@ (define (gnome-packages gnome names) (define (gnome-udev-configuration-files config) "Return the list of GNOME dependencies that provide udev rules and hardware files." - (let* ((gnome (gnome-desktop-configuration-gnome config)) - (shell (gnome-desktop-configuration-shell config))) - (or (any (match-lambda - ((and pkg (= package-name "gnome-settings-daemon")) - (list pkg)) - (_ #f)) - shell) - (and (maybe-value-set? gnome) - (gnome-packages gnome '("gnome-settings-daemon"))) - (raise - (condition - (&error-location - (location (gnome-desktop-configuration-source-location config))) - (&message (message (G_ "Missing gnome-settings-daemon")))))))) + (list + (computed-file + "gnome-udev-configurations" + (with-imported-modules + (source-module-closure '((guix build utils) + (guix build union))) + #~(begin + (use-modules (guix build utils) + (guix build union)) + ;; If rules.d or hwdb.d is not a proper directory but a symlink, + ;; then it will not be possible to delete individual files in this + ;; directory. + (union-build #$output + (search-path-as-list + (list "lib/udev" "libexec/udev") + (list #$@(gnome-profile config))) + #:create-all-directories? #t) + (for-each + (lambda (pattern) + (for-each + delete-file-recursively + (find-files #$output pattern))) + (list #$@(gnome-desktop-configuration-udev-blocklist config)))))))) (define (gnome-polkit-settings config) "Return the list of GNOME dependencies that provide polkit actions and -- 2.41.0