From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
To: Liliana Marie Prikler <liliana.prikler@gmail.com>
Cc: rg@raghavgururajan.name, vivien@planete-kraus.eu, 68716@debbugs.gnu.org
Subject: [bug#68716] [PATCH gnome-team v4 1/7] gnu: Split gnome into more meta-packages.
Date: Fri, 16 Feb 2024 14:44:27 -0500 [thread overview]
Message-ID: <87mss0ry78.fsf@gmail.com> (raw)
In-Reply-To: <5e0b95c296a3abfe2da6c1828dfbbc1a47886083.1708087345.git.liliana.prikler@gmail.com> (Liliana Marie Prikler's message of "Fri, 16 Feb 2024 11:53:43 +0100")
Hi,
Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
> * gnu/packages/gnome.scm (gnome-meta-package): New syntax rule.
> (gnome-meta-core-services, gnome-meta-core-shell, gnome-meta-core-utilities)
> (gnome-essential-extras): New variables.
> (gnome): Implement in terms of the former.
> ---
> gnu/packages/gnome.scm | 179 ++++++++++++++++++++++++-----------------
> 1 file changed, 105 insertions(+), 74 deletions(-)
>
> diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
> index 7397148c2b..4fde75f612 100644
> --- a/gnu/packages/gnome.scm
> +++ b/gnu/packages/gnome.scm
> @@ -10154,52 +10154,76 @@ (define-public gnome-weather
> (home-page "https://wiki.gnome.org/Apps/Weather")
> (license license:gpl2+)))
>
> -(define-public gnome
> +(define-syntax-rule (gnome-meta-package %name propagate)
It'd be nice to allow any kind of extra fields to be appended to the
package definition, as done e.g. for the make-openjdk syntax.
> (package
> - (name "gnome")
> + (name %name)
Nitpick: I'd use name*, as %name is often associated with globals in Guix.
> (version (package-version gnome-shell))
> (source #f)
> (build-system trivial-build-system)
> - (arguments '(#:builder (begin (mkdir %output) #t)))
> - (propagated-inputs
> - `(,@(if (string-prefix? "x86_64" (%current-system))
> - ;; XXX: EoG requires librsvg-next, which depends on Rust, which currently
> - ;; only works on x86_64, so exclude it on other architectures.
> - (list eog)
> - '())
> - ,@(list
> - ;; GNOME-Core-OS-Services.
> - accountsservice
> - network-manager
> - packagekit
> - upower
> - ;; GNOME-Core-Shell.
> - adwaita-icon-theme
> - gdm
> - glib-networking
> - gnome-backgrounds
> - gnome-bluetooth
> - gnome-color-manager
> - gnome-control-center
> - gnome-desktop
> - gnome-initial-setup
> - gnome-keyring
> - gnome-menus
> - gnome-session
> - gnome-settings-daemon
> - gnome-shell
> - gnome-shell-extensions
> - gnome-themes-extra
> - gnome-user-docs
> - gnome-user-share
> - gsettings-desktop-schemas
> - gvfs
> - mutter
> - orca
> - rygel
> - sushi
> - ;; GNOME-Core-Utilities.
> - baobab
> + (arguments
> + (list #:builder
> + #~(begin
> + (format (current-warning-port)
> + "Building ~a is useless. \
> +Refer to its propagated inputs instead.\n"
> + #$name)
> + (mkdir #$output))))
> + (propagated-inputs propagate)
> + (home-page "https://www.gnome.org")
> + (synopsis "The GNU desktop environment")
> + (description
> + "GNOME is the graphical desktop for GNU. It includes a wide variety of
I think it's misleading to associate GNOME with GNU at this point in
time. They aren't even a GNU project anymore.
> +applications for browsing the web, editing text and images, creating
> +documents and diagrams, playing media, scanning, and much more.")
> + (license license:gpl2+)
> + (properties `((hidden? . #t)))))
> +
> +(define-public gnome-meta-core-services
> + (gnome-meta-package
> + "gnome-meta-core-services"
> + (list accountsservice
> + network-manager
> + packagekit
> + upower)))
> +
> +(define-public gnome-meta-core-shell
> + (gnome-meta-package
> + "gnome-meta-core-shell"
> + (list adwaita-icon-theme
> + gdm
> + glib-networking
> + gnome-backgrounds
> + gnome-bluetooth
> + gnome-color-manager
> + gnome-control-center
> + gnome-desktop
> + gnome-initial-setup
> + gnome-keyring
> + gnome-menus
> + gnome-session
> + gnome-settings-daemon
> + gnome-shell
> + gnome-shell-extensions
> + gnome-themes-extra
> + gnome-user-docs
> + gnome-user-share
> + gsettings-desktop-schemas
> + gvfs
> + mutter
> + orca
> + rygel
> + sushi)))
> +
> +(define-public gnome-meta-core-utilities
> + (gnome-meta-package
> + "gnome-meta-core-utilities"
> + (append
> + ;; XXX: EoG requires librsvg-next, which depends on Rust, which currently
> + ;; only works on x86_64, so exclude it on other architectures.
> + (if (string-prefix? "x86_64" (%current-system))
> + (list eog)
> + '())
> + (list baobab
> cheese
> epiphany
> evince
> @@ -10224,38 +10248,45 @@ (define-public gnome
> totem
> tracker-miners
> xdg-desktop-portal-gnome
> - yelp
> - ;; Others.
> - gnome-online-accounts
> - hicolor-icon-theme
> -
> - ;; Packages not part of GNOME proper but that are needed for a good
> - ;; experience. See <https://bugs.gnu.org/39646>.
> - ;; XXX: Find out exactly which ones are needed and why.
> - at-spi2-core
> - dbus
> - dconf
> - desktop-file-utils
> - font-abattis-cantarell
> - font-dejavu
> - gnome-default-applications
> - gst-plugins-base
> - gst-plugins-good
> - gucharmap
> - pinentry-gnome3
> - pulseaudio
> - shared-mime-info
> - system-config-printer
> - xdg-user-dirs
> - yelp
> - zenity)))
> - (synopsis "The GNU desktop environment")
> - (home-page "https://www.gnome.org/")
> - (description
> - "GNOME is the graphical desktop for GNU. It includes a wide variety of
> -applications for browsing the web, editing text and images, creating
> -documents and diagrams, playing media, scanning, and much more.")
> - (license license:gpl2+)))
> + yelp))))
> +
> +(define-public gnome-essential-extras
> + (package
> + (inherit
> + (gnome-meta-package
> + "gnome-essential-extras"
> + (list at-spi2-core
> + dbus
> + dconf
> + desktop-file-utils
> + font-abattis-cantarell
> + font-dejavu
> + gnome-default-applications
> + gnome-online-accounts
> + gst-plugins-base
> + gst-plugins-good
> + gucharmap
> + hicolor-icon-theme
> + pinentry-gnome3
> + pulseaudio
> + shared-mime-info
> + system-config-printer
> + xdg-user-dirs
> + yelp
> + zenity)))
> + (description "This package provides a list of packages required for
> +a good GNOME experience, mixed from core dependencies and other implicitly
> +relied-on packages.")))
> +
> +(define-public gnome
> + (package
> + (inherit (gnome-meta-package "gnome"
> + (append-map package-propagated-inputs
> + (list gnome-meta-core-services
> + gnome-meta-core-shell
> + gnome-meta-core-utilities
> + gnome-essential-extras))))
> + (properties (list))))
With the make-openjdk like change I suggested above, this could be
expressed without using inherit as:
--8<---------------cut here---------------start------------->8---
(define-public gnome
(gnome-meta-package
"gnome"
(append-map package-propagated-inputs
(list gnome-meta-core-services
gnome-meta-core-shell
gnome-meta-core-utilities
gnome-essential-extras))
(properties '())))
--8<---------------cut here---------------end--------------->8---
which I find more pleasing to read.
Otherwise,
Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
--
Thanks,
Maxim
next prev parent reply other threads:[~2024-02-16 19:47 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-25 16:12 [bug#68716] [PATCH gnome-team RFC 0/3] *** SUBJECT HERE *** Liliana Marie Prikler
2024-01-25 15:35 ` [bug#68716] [PATCH gnome-team RFC 1/3] services: Modularise gnome-desktop-configuration Liliana Marie Prikler
2024-01-25 17:12 ` Vivien Kraus via Guix-patches via
2024-01-25 17:38 ` Liliana Marie Prikler
2024-01-25 15:55 ` [bug#68716] [PATCH gnome-team RFC 2/3] gnu: Deprecate gnome meta-package Liliana Marie Prikler
2024-01-25 16:06 ` [bug#68716] [PATCH gnome-team RFC 3/3] services: gnome-desktop: Add core packages for GNOME 44 Liliana Marie Prikler
2024-01-26 21:13 ` [bug#68716] [PATCH gnome-team RFC 0/3] *** SUBJECT HERE *** Maxim Cournoyer
2024-02-05 20:00 ` [bug#68716] [PATCH gnome-team v2 0/5] Modularization of the gnome desktop service with udev blocklist Vivien Kraus via Guix-patches via
2024-01-25 15:35 ` [bug#68716] [PATCH gnome-team v2 1/5] services: Modularise gnome-desktop-configuration Liliana Marie Prikler
2024-01-25 15:55 ` [bug#68716] [PATCH gnome-team v2 3/5] gnu: Deprecate gnome meta-package Liliana Marie Prikler
2024-01-25 16:06 ` [bug#68716] [PATCH gnome-team v2 2/5] services: gnome-desktop: Add core packages for GNOME 44 Liliana Marie Prikler
2024-02-05 17:05 ` [bug#68716] [PATCH gnome-team v2 4/5] services: Rename gnome-udev-rules Vivien Kraus via Guix-patches via
2024-02-05 18:30 ` [bug#68716] [PATCH gnome-team v2 5/5] services: gnome: Use a blocklist for udev configurations Vivien Kraus via Guix-patches via
2024-02-05 20:52 ` Liliana Marie Prikler
2024-02-05 23:27 ` [bug#68716] [PATCH gnome-team v3 0/5] More elegant filtering of " Vivien Kraus via Guix-patches via
2024-01-25 15:35 ` [bug#68716] [PATCH gnome-team v3 1/5] services: Modularise gnome-desktop-configuration Liliana Marie Prikler
2024-01-25 15:55 ` [bug#68716] [PATCH gnome-team v3 3/5] gnu: Deprecate gnome meta-package Liliana Marie Prikler
2024-01-25 16:06 ` [bug#68716] [PATCH gnome-team v3 2/5] services: gnome-desktop: Add core packages for GNOME 44 Liliana Marie Prikler
2024-02-05 17:05 ` [bug#68716] [PATCH gnome-team v3 4/5] services: Rename gnome-udev-rules Vivien Kraus via Guix-patches via
2024-02-05 18:30 ` [bug#68716] [PATCH gnome-team v3 5/5] services: gnome: Use a blocklist for udev configurations Vivien Kraus via Guix-patches via
2024-02-06 5:13 ` [bug#68716] [PATCH gnome-team v3 0/5] More elegant filtering of " Liliana Marie Prikler
2024-02-07 21:38 ` Vivien Kraus via Guix-patches via
2024-02-16 10:53 ` [bug#68716] [PATCH v5 1/8] gnu: Split gnome into more meta-packages Liliana Marie Prikler
2024-01-25 15:35 ` [bug#68716] [PATCH v5 3/8] services: Modularise gnome-desktop-configuration Liliana Marie Prikler
2024-01-25 15:55 ` [bug#68716] [PATCH v5 7/8] gnu: Deprecate gnome meta-package Liliana Marie Prikler
2024-02-05 17:05 ` [bug#68716] [PATCH v5 4/8] services: Extend udev capabilities of gnome-desktop-service Vivien Kraus
2024-02-16 11:02 ` [bug#68716] [PATCH v5 2/8] gnu: gnome: Add core packages for GNOME 44 Liliana Marie Prikler
2024-02-16 12:08 ` [bug#68716] [PATCH v5 5/8] services: Extend polkit capabilities of gnome-desktop-service Liliana Marie Prikler
2024-02-16 12:35 ` [bug#68716] [PATCH v5 6/8] services: desktop: Remove unused imports Liliana Marie Prikler
2024-02-17 8:19 ` [bug#68716] [PATCH v5 8/8] gnu: gnome: Update synopsis and description Liliana Marie Prikler
2024-02-24 6:40 ` bug#68716: [PATCH v5 1/8] gnu: Split gnome into more meta-packages Liliana Marie Prikler
2024-02-16 10:53 ` [bug#68716] [PATCH gnome-team v4 1/7] " Liliana Marie Prikler
2024-01-25 15:35 ` [bug#68716] [PATCH gnome-team v4 3/7] services: Modularise gnome-desktop-configuration Liliana Marie Prikler
2024-01-25 15:55 ` [bug#68716] [PATCH gnome-team v4 7/7] gnu: Deprecate gnome meta-package Liliana Marie Prikler
2024-02-16 17:44 ` Vivien Kraus via Guix-patches via
2024-02-05 17:05 ` [bug#68716] [PATCH gnome-team v4 4/7] services: Extend udev capabilities of gnome-desktop-service Vivien Kraus
2024-02-16 11:02 ` [bug#68716] [PATCH gnome-team v4 2/7] gnu: gnome: Add core packages for GNOME 44 Liliana Marie Prikler
2024-02-16 12:08 ` [bug#68716] [PATCH gnome-team v4 5/7] services: Extend polkit capabilities of gnome-desktop-service Liliana Marie Prikler
2024-02-16 12:35 ` [bug#68716] [PATCH gnome-team v4 6/7] services: desktop: Remove unused imports Liliana Marie Prikler
2024-02-16 19:44 ` Maxim Cournoyer [this message]
2024-02-16 20:08 ` [bug#68716] [PATCH gnome-team v4 1/7] gnu: Split gnome into more meta-packages Liliana Marie Prikler
2024-02-17 7:50 ` Vivien Kraus via Guix-patches via
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87mss0ry78.fsf@gmail.com \
--to=maxim.cournoyer@gmail.com \
--cc=68716@debbugs.gnu.org \
--cc=liliana.prikler@gmail.com \
--cc=rg@raghavgururajan.name \
--cc=vivien@planete-kraus.eu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.