GNU bug report logs -
#75375
[PATCH 0/2] Add manifests for gnome-team
Previous Next
Full log
View this message in rfc822 format
Hi Maxim,
Am Sonntag, dem 19.01.2025 um 11:20 +0900 schrieb Maxim Cournoyer:
> Good idea! I have an unfinished branch locally where I was devising
> the same; it looked like this:
>
> --8<---------------cut here---------------start------------->8---
> +(use-modules (guix git-download)
> + (guix packages)
> + (guix profiles)
> + (guix utils)
> + (gnu packages))
> +
> +;;; Commentary:
> +;;;
> +;;; This manifest can be used to update the GNOME packages
> collection, via
> +;;; e.g.:
> +;;;
> +;;; ./pre-inst-env guix refresh -u -m etc/teams/gnome/gnome-
> manifest.scm \
> +;;; --target-version=48
> +;;;
> +;;; Code:
> +
> +(define (gnome-package? p)
> + "Predicate to check if P is a GNOME package."
> + (let ((uri (and=> (package-source p)
> + (lambda (x)
> + (and (origin? x)
> + (origin-uri x)))))
> + (loc (package-location p)))
> + (or (and uri
> + (cond
> + ((string? uri)
> + (string-prefix? "mirror://gnome/" uri))
> + ((git-reference? uri)
> + (string-contains "gitlab.gnome.org"
> + (git-reference-url uri)))
> + (else #f)))
> + (and loc
> + (string-contains "gnu/packages/gnome"
> + (location-file loc))))))
> +
> +(define* (gnome-packages-manifest)
> + "Return a manifest of all GNOME packages."
> + (manifest
> + (map package->manifest-entry
> + (fold-packages
> + (lambda (package lst)
> + (if (gnome-package? package)
> + (cons package lst)
> + lst))
> + '()))))
> --8<---------------cut here---------------end--------------->8---
This is a slightly different manifest that updates everything under the
GNOME umbrella, i.e. including "World" packages that follow a different
versioning scheme, some of which are more experimental than gnome
itself.
> The comment with --target-version=48 (partial version) depends on a
> complete but unreleased feature (I'll publish it soon), that enables
> to do so.
I'm not sure how useful this feature will be, given that the gnome-
metapackage refers to packages with different versioning schemes
already. I do think we need a way to distinguish unstable versions for
those packages that still follow the old versioning scheme as well.
> I'm also not sure of the merit of separating extensions from other
> GNOME packages?
The idea is that with a recent enough gnome-shell updating the
extensions can be done with a single command, without affecting other
packages. Since extensions don't have common versions, it only ever
makes sense to pull the latest when gnome-shell is the latest as well
(or at least close to it).
Cheers
This bug report was last modified 90 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.