From patchwork Fri Feb 17 17:00:59 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 47048 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 1CA57168F8; Fri, 17 Feb 2023 17:03:18 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-3.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, RCVD_IN_MSPIKE_H2,SPF_HELO_PASS autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id A04311688A for ; Fri, 17 Feb 2023 17:03:13 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pT47y-00079G-Qo; Fri, 17 Feb 2023 12:02:30 -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 1pT47d-0006nn-J5 for guix-patches@gnu.org; Fri, 17 Feb 2023 12:02:13 -0500 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 1pT47d-0000MU-7X for guix-patches@gnu.org; Fri, 17 Feb 2023 12:02:09 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1pT47d-00083S-3o for guix-patches@gnu.org; Fri, 17 Feb 2023 12:02:09 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#61576] [PATCH 18/21] services: desktop: Extract a new gnome-package procedure. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 17 Feb 2023 17:02:09 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 61576 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 61576@debbugs.gnu.org Cc: Maxim Cournoyer Received: via spool by 61576-submit@debbugs.gnu.org id=B61576.167665331430801 (code B ref 61576); Fri, 17 Feb 2023 17:02:09 +0000 Received: (at 61576) by debbugs.gnu.org; 17 Feb 2023 17:01:54 +0000 Received: from localhost ([127.0.0.1]:41376 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pT47K-00080a-WC for submit@debbugs.gnu.org; Fri, 17 Feb 2023 12:01:54 -0500 Received: from mail-qt1-f181.google.com ([209.85.160.181]:40667) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pT476-0007xg-N8 for 61576@debbugs.gnu.org; Fri, 17 Feb 2023 12:01:37 -0500 Received: by mail-qt1-f181.google.com with SMTP id m11so1285597qtp.7 for <61576@debbugs.gnu.org>; Fri, 17 Feb 2023 09:01:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=/R7Dl/L01nuFrN940AshGAByfRJUJAPPFmInD0BCGms=; b=WZFMVilcGULSZIiP71T1nEE+4ZEBhhPSM9MWrfbhmCKqw20mQr9K+91/V8wcNL/0Hi yonRMcgfM5UhAnmfmkLUQJwd/Z1wtWdfCcZN9kQgF7Bm1BOMHtUqhfFtOq9s6ugyIkaI UL7RuPD/v+s7hR7BNBdbMxH+qn9VDmaAJQvA6NWtpn4GP5n3cR4WF00sQtC/416ZVUG+ WyuRuA1tKz05rUFeClvzyXElNB1byqrycqQtvVPf6kvT2UWABKDIjAv3Fup1JPOVhnHP ffdpuvp7Q1P4MsrnAtPhCLtG/otEfedMqhjCaYDU6otSCPmIyauY20LBC3loCB1pv8uX Dggg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=/R7Dl/L01nuFrN940AshGAByfRJUJAPPFmInD0BCGms=; b=QHRI+sYX6/cgJsSE7vAur9s5bk0zbhXgiNObiJxFa/r0UBFujMB6HWZtGnUCA6/JaB m2jBlR0D2rFpOmoJ16BsX4Z9s+Jq4wUtA9dZuZ1gEoUwY1a90ppOTS5eI3/uzprdQUEE n8CywZNYOJM4Ml9cYeiuIA4p4rotmS/ADB8TJHl8STsZUNzOCVpaoUZr2rJycL5XN4SR QlNYZI54TkhJeNGJqnuuXY/Yzp2h2UhGTuXF5R6gytg7G2KkP3Aqo8O1UjPqdokuvjpo eq5yKTJQoqRrXRHN+4EYUqSMeKLOIg5qhVAICdjG+5I/lT0nAH1FSfJ2/4245JXpYacm /YfQ== X-Gm-Message-State: AO0yUKWUs/2lcFqTiniCOUSNt2+CD1Zs8yYW+6stqhSNBMo7UKBO6BTc oFJMgGcvLvbk7oG0+a4MpEgn320BUnYiXtxQ X-Google-Smtp-Source: AK7set/uAyl5xIWVuSDNZica+ZN7LOZKDV4M5JjoxTojVo0K18XnZmaw/phEb4j7kqYjlfC05ZzfZw== X-Received: by 2002:ac8:5cd5:0:b0:3b9:e3fc:5689 with SMTP id s21-20020ac85cd5000000b003b9e3fc5689mr58104qta.58.1676653296112; Fri, 17 Feb 2023 09:01:36 -0800 (PST) Received: from localhost.localdomain (dsl-157-123.b2b2c.ca. [66.158.157.123]) by smtp.gmail.com with ESMTPSA id hf22-20020a05622a609600b003b85ed59fa2sm3455166qtb.50.2023.02.17.09.01.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 17 Feb 2023 09:01:35 -0800 (PST) From: Maxim Cournoyer Date: Fri, 17 Feb 2023 12:00:59 -0500 Message-Id: <20230217170103.10147-19-maxim.cournoyer@gmail.com> X-Mailer: git-send-email 2.39.1 In-Reply-To: <20230217170103.10147-2-maxim.cournoyer@gmail.com> References: <20230217170103.10147-2-maxim.cournoyer@gmail.com> MIME-Version: 1.0 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+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/services/desktop.scm (): Rename gnome package accessor to gnome-desktop-configuration-gnome, to avoid name conflict. (gnome-packages): Change first argument from a config object to a the gnome package used. Rename second argument from package to name. Extract core logic into... (gnome-package): ... this. (gnome-udev-rules, gnome-polkit-settings): Adjust accordingly. (gnome-desktop-service-type): Likewise. --- gnu/services/desktop.scm | 43 ++++++++++++++++++++++------------------ 1 file changed, 24 insertions(+), 19 deletions(-) diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm index 189334dc23..5ddfbb9e53 100644 --- a/gnu/services/desktop.scm +++ b/gnu/services/desktop.scm @@ -73,6 +73,7 @@ (define-module (gnu services desktop) #:use-module (guix utils) #:use-module (guix gexp) #:use-module (srfi srfi-1) + #:use-module (srfi srfi-26) #:use-module (ice-9 format) #:use-module (ice-9 match) #:export ( @@ -1347,31 +1348,36 @@ (define sane-service-type (define-record-type* gnome-desktop-configuration make-gnome-desktop-configuration gnome-desktop-configuration? - (gnome gnome-package (default gnome))) + (gnome gnome-desktop-configuration-gnome + (default gnome))) -(define (gnome-packages config packages) - "Return the list of GNOME dependencies from CONFIG which names are part of -the given PACKAGES list." - (let ((gnome (gnome-package config))) - (map (lambda (name) - ((package-direct-input-selector name) gnome)) - packages))) +(define (gnome-package gnome name) + "Return the package NAME among the GNOME package inputs. NAME can be a +single name or a tree-like, e.g. @code{'(\"gnome-boxes\" \"spice-gtk\")} to +denote the spice-gtk input of the gnome-boxes input of the GNOME meta-package." + ((package-direct-input-selector name) gnome)) + +(define (gnome-packages gnome names) + "Return the package NAMES among the GNOME package inputs." + (map (cut gnome-package gnome <>) names)) (define (gnome-udev-rules config) "Return the list of GNOME dependencies that provide udev rules." - (gnome-packages config '("gnome-settings-daemon"))) + (let ((gnome (gnome-desktop-configuration-gnome config))) + (gnome-packages gnome '("gnome-settings-daemon")))) (define (gnome-polkit-settings config) "Return the list of GNOME dependencies that provide polkit actions and rules." - (gnome-packages config - '("gnome-settings-daemon" - "gnome-control-center" - "gnome-system-monitor" - "gvfs" - ;; spice-gtk provides polkit actions for USB redirection - ;; in GNOME Boxes. - ("gnome-boxes" "spice-gtk")))) + (let ((gnome (gnome-desktop-configuration-gnome config))) + (gnome-packages gnome + '("gnome-settings-daemon" + "gnome-control-center" + "gnome-system-monitor" + "gvfs" + ;; spice-gtk provides polkit actions for USB redirection + ;; in GNOME Boxes. + ("gnome-boxes" "spice-gtk"))))) (define gnome-desktop-service-type (service-type @@ -1382,8 +1388,7 @@ (define gnome-desktop-service-type (service-extension polkit-service-type gnome-polkit-settings) (service-extension profile-service-type - (compose list - gnome-package)))) + (compose list gnome-desktop-configuration-gnome)))) (default-value (gnome-desktop-configuration)) (description "Run the GNOME desktop environment.")))