Acknowledgement sent
to Liliana Marie Prikler <liliana.prikler@gmail.com>:
New bug report received and forwarded. Copy sent to liliana.prikler@gmail.com, maxim.cournoyer@gmail.com, noelopez@free.fr, vivien@planete-kraus.eu, guix-patches@gnu.org.
(Mon, 21 Apr 2025 13:55:02 GMT) (full text, mbox, link).
From: Liliana Marie Prikler <liliana.prikler@gmail.com>
To: guix-patches@gnu.org
Subject: [PATCH gnome-team 00/23] Start working on GNOME 48
Date: Mon, 21 Apr 2025 15:47:53 +0200
Hi Guix,
I'm a little late. This effort started before the python-team merge,
but thanks in no small part to fontconfig's worldier than world rebuild
has taken quite a while to finish. This series updates our base
packages up to libadwaita to their latest version. The GTK one is
marked as WIP, because the tests currently fail --- this is likely an
Xorg thing that I haven't paid too much attention to. Perhaps it can
work in tandem with some mesa updates, or else we will have to switch up
our test setup.
I will obviously rebase this on a newer master before pushing it, but
that will require rebuilding rust, librsvg, etc. Is anyone willing to
take fontconfig, harfbuzz and wayland-protocols to branches that are
perhaps merged sooner?
Cheers
Liliana Marie Prikler (23):
gnu: fontconfig: Update to 2.16.0.
gnu: glib: Update to 2.84.1.
gnu: gobject-introspection: Update to 1.84.0.
gnu: gobject-introspection: Delete unnecessary patches.
gnu: harfbuzz: Update to 10.4.0.
gnu: glibmm: Update to 2.84.0.
gnu: vala@0.52: Fix GIR parser.
gnu: vala@0.52: Update to 0.52.11.
gnu: vala: Update to 0.56.18.
gnu: libsoup-minimal: Update to 3.6.5.
gnu: wayland-protocols: Update to 1.43.
gnu: pango: Update to 1.56.3.
gnu: gstreamer: Update to 1.26.0.
gnu: gst-plugins-base: Update to 1.26.0.
gnu: gst-plugins-good: Update to 1.26.0.
gnu: gst-plugins-bad: Update to 1.26.0.
gnu: gst-plugins-ugly: Update to 1.26.0.
gnu: gst-libav: Update to 1.26.0.
gnu: gst-editing-services: Update to 1.26.0.
gnu: Add gst-rtsp-server.
gnu: python-gst: Update to 1.26.0.
[WIP] gnu: gtk: Update to 4.18.4.
gnu: libadwaita: Update to 1.7.2.
gnu/local.mk | 3 +-
gnu/packages/fontutils.scm | 4 +-
gnu/packages/freedesktop.scm | 4 +-
gnu/packages/glib.scm | 22 +--
gnu/packages/gnome.scm | 20 +-
gnu/packages/gstreamer.scm | 79 ++++++--
gnu/packages/gtk.scm | 38 ++--
...trospection-absolute-shlib-path-1.72.patch | 173 ------------------
...ct-introspection-absolute-shlib-path.patch | 8 +-
.../gobject-introspection-cc-1.72.patch | 15 --
.../patches/vala-0.52-fix-valagirparser.patch | 72 ++++++++
11 files changed, 184 insertions(+), 254 deletions(-)
delete mode 100644 gnu/packages/patches/gobject-introspection-absolute-shlib-path-1.72.patch
delete mode 100644 gnu/packages/patches/gobject-introspection-cc-1.72.patch
create mode 100644 gnu/packages/patches/vala-0.52-fix-valagirparser.patch
base-commit: cc4b392a8303788762ed9adb9c5635cf227e58a2
--
2.49.0
* gnu/packages/patches/gobject-introspection-cc-1.72.patch: Delete file.
* gnu/packages/patches/gobject-introspection-absolute-shlib-1.72.patch:
Likewise.
* gnu/local.mk (dist_patch_DATA): Unregister them.
---
gnu/local.mk | 2 -
...trospection-absolute-shlib-path-1.72.patch | 173 ------------------
.../gobject-introspection-cc-1.72.patch | 15 --
3 files changed, 190 deletions(-)
delete mode 100644 gnu/packages/patches/gobject-introspection-absolute-shlib-path-1.72.patch
delete mode 100644 gnu/packages/patches/gobject-introspection-cc-1.72.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index 62cfe230bb3..9929877bbbe 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1509,9 +1509,7 @@ dist_patch_DATA = \
%D%/packages/patches/gnupg-1-build-with-gcc10.patch \
%D%/packages/patches/gnutls-skip-trust-store-test.patch \
%D%/packages/patches/gobject-introspection-absolute-shlib-path.patch \
- %D%/packages/patches/gobject-introspection-absolute-shlib-path-1.72.patch \
%D%/packages/patches/gobject-introspection-cc.patch \
- %D%/packages/patches/gobject-introspection-cc-1.72.patch \
%D%/packages/patches/gobject-introspection-girepository.patch \
%D%/packages/patches/go-fix-script-tests.patch \
%D%/packages/patches/go-gopkg-in-yaml-v3-32bit.patch \
diff --git a/gnu/packages/patches/gobject-introspection-absolute-shlib-path-1.72.patch b/gnu/packages/patches/gobject-introspection-absolute-shlib-path-1.72.patch
deleted file mode 100644
index 8bb86467c08..00000000000
--- a/gnu/packages/patches/gobject-introspection-absolute-shlib-path-1.72.patch
+++ /dev/null
@@ -1,173 +0,0 @@
-Names of libraries included in typelib files are opened by dlopen.
-Here we add the full path.
-
-This patch was provided by Luca Bruno <lucabru@src.gnome.org>,
-for 'gobject-introspection' 1.40.0 in Nix.
-
-It has since been updated to work with newer versions of
-gobject-introspection.
-
-diff --git a/giscanner/scannermain.py b/giscanner/scannermain.py
-index 1d39ab84..e12ed24e 100644
---- a/giscanner/scannermain.py
-+++ b/giscanner/scannermain.py
-@@ -95,6 +95,39 @@ def get_windows_option_group(parser):
- return group
-
-
-+def _get_default_fallback_libpath():
-+ # Newer multiple-output-optimized stdenv has an environment variable
-+ # $outputLib which in turn specifies another variable which then is used as
-+ # the destination for the library contents (${!outputLib}/lib).
-+ store_path = os.environ.get(os.environ.get("outputLib")) if "outputLib" in os.environ else None
-+ if store_path is None:
-+ outputs = os.environ.get("outputs", "out").split()
-+ if "lib" in outputs:
-+ # For multiple output derivations let's try whether there is a $lib
-+ # environment variable and use that as the base store path.
-+ store_path = os.environ.get("lib")
-+ elif "out" in outputs:
-+ # Otherwise we have a single output derivation, so the libraries
-+ # most certainly will end up in "$out/lib".
-+ store_path = os.environ.get("out")
-+
-+ if store_path is not None:
-+ # Even if we have a $lib as output, there still should be a $lib/lib
-+ # directory.
-+ return os.path.join(store_path, 'lib')
-+ else:
-+ # If we haven't found a possible scenario, let's return an empty string
-+ # so that the shared library won't be prepended with a path.
-+ #
-+ # Note that this doesn't mean that all hope is lost, because after all
-+ # we can still use --fallback-library-path to set one.
-+ #
-+ # Also, we're not returning None, because that would make it very
-+ # difficult to disable adding fallback paths altogether using something
-+ # like: --fallback-library-path=""
-+ return ""
-+
-+
- def _get_option_parser():
- parser = optparse.OptionParser('%prog [options] sources',
- version='%prog ' + giscanner.__version__)
-@@ -220,6 +253,10 @@ match the namespace prefix.""")
- parser.add_option("", "--compiler",
- action="store", dest="compiler", default=None,
- help="the C compiler to use internally")
-+ parser.add_option("", "--fallback-library-path",
-+ action="store", dest="fallback_libpath",
-+ default=_get_default_fallback_libpath(),
-+ help="Path to prepend to unknown shared libraries")
-
- group = get_preprocessor_option_group(parser)
- parser.add_option_group(group)
-diff --git a/giscanner/shlibs.py b/giscanner/shlibs.py
-index 9f8ab5df..8aa37c99 100644
---- a/giscanner/shlibs.py
-+++ b/giscanner/shlibs.py
-@@ -57,6 +57,14 @@ def _ldd_library_pattern(library_name):
- $""" % re.escape(library_name), re.VERBOSE)
-
-
-+def _ldd_library_guix_pattern(library_name):
-+ store_dir = re.escape(
-+ os.environ.get("NIX_STORE", default="/gnu/store")
-+ )
-+ pattern = r'(%s(?:/[^/]*)+lib%s[^A-Za-z0-9_-][^\s\(\)]*)'
-+ return re.compile(pattern % (store_dir, re.escape(library_name)))
-+
-+
- # This is a what we do for non-la files. We assume that we are on an
- # ELF-like system where ldd exists and the soname extracted with ldd is
- # a filename that can be opened with dlopen().
-@@ -108,7 +116,8 @@ def _resolve_non_libtool(options, binary, libraries):
- output = output.decode("utf-8", "replace")
-
- shlibs = resolve_from_ldd_output(libraries, output)
-- return list(map(sanitize_shlib_path, shlibs))
-+ fallback_libpath = options.fallback_libpath or "";
-+ return list(map(lambda p: os.path.join(fallback_libpath, p), map(sanitize_shlib_path, shlibs)))
-
-
- def sanitize_shlib_path(lib):
-@@ -117,19 +126,18 @@ def sanitize_shlib_path(lib):
- # In case we get relative paths on macOS (like @rpath) then we fall
- # back to the basename as well:
- # https://gitlab.gnome.org/GNOME/gobject-introspection/issues/222
-- if sys.platform == "darwin":
-- if not os.path.isabs(lib):
-- return os.path.basename(lib)
-- return lib
-- else:
-+
-+ # Always use absolute paths if available
-+ if not os.path.isabs(lib):
- return os.path.basename(lib)
-+ return lib
-
-
- def resolve_from_ldd_output(libraries, output):
- patterns = {}
- for library in libraries:
- if not os.path.isfile(library):
-- patterns[library] = _ldd_library_pattern(library)
-+ patterns[library] = (_ldd_library_pattern(library), _ldd_library_guix_pattern(library))
- if len(patterns) == 0:
- return []
-
-@@ -141,8 +149,12 @@ def resolve_from_ldd_output(libraries, output):
- if line.endswith(':'):
- continue
- for word in line.split():
-- for library, pattern in patterns.items():
-- m = pattern.match(word)
-+ for library, (pattern, guix_pattern) in patterns.items():
-+ store_dir = os.environ.get("NIX_STORE", default="/gnu/store")
-+ if line.find(store_dir) != -1:
-+ m = guix_pattern.match(word)
-+ else:
-+ m = pattern.match(word)
- if m:
- del patterns[library]
- shlibs.append(m.group())
-diff --git a/giscanner/utils.py b/giscanner/utils.py
-index 31c7ea48..630002a8 100644
---- a/giscanner/utils.py
-+++ b/giscanner/utils.py
-@@ -114,16 +114,11 @@ def extract_libtool_shlib(la_file):
- if dlname is None:
- return None
-
-- # Darwin uses absolute paths where possible; since the libtool files never
-- # contain absolute paths, use the libdir field
-- if platform.system() == 'Darwin':
-- dlbasename = os.path.basename(dlname)
-- libdir = _extract_libdir_field(la_file)
-- if libdir is None:
-- return dlbasename
-- return libdir + '/' + dlbasename
-- # Older libtools had a path rather than the raw dlname
-- return os.path.basename(dlname)
-+ dlbasename = os.path.basename(dlname)
-+ libdir = _extract_libdir_field(la_file)
-+ if libdir is None:
-+ return dlbasename
-+ return libdir + '/' + dlbasename
-
-
- # Returns arguments for invoking libtool, if applicable, otherwise None
-diff --git a/tests/scanner/test_shlibs.py b/tests/scanner/test_shlibs.py
-index a8337c60..7f123103 100644
---- a/tests/scanner/test_shlibs.py
-+++ b/tests/scanner/test_shlibs.py
-@@ -40,7 +40,8 @@ class TestLddParser(unittest.TestCase):
-
- self.assertEqual(
- sanitize_shlib_path('/foo/bar'),
-- '/foo/bar' if sys.platform == 'darwin' else 'bar')
-+ # Always use an absolute filename for Guix
-+ '/foo/bar')
-
- def test_unresolved_library(self):
- output = ''
diff --git a/gnu/packages/patches/gobject-introspection-cc-1.72.patch b/gnu/packages/patches/gobject-introspection-cc-1.72.patch
deleted file mode 100644
index d3b1df82af1..00000000000
--- a/gnu/packages/patches/gobject-introspection-cc-1.72.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Use gcc as the default C compiler if CC is not set.
-
-diff --git a/giscanner/__init__.py b/giscanner/__init__.py
-index 7c2f365a..607fe341 100644
---- a/giscanner/__init__.py
-+++ b/giscanner/__init__.py
-@@ -21,6 +21,8 @@ import os
- builddir = os.environ.get('UNINSTALLED_INTROSPECTION_BUILDDIR')
- if builddir is not None:
- __path__.append(os.path.join(builddir, 'giscanner')) # type: ignore # mypy issue #1422
-+if not 'CC' in os.environ:
-+ os.environ['CC'] = 'gcc'
- try:
- from ._version import __version__
- except ImportError:
--
2.49.0
Hi Liliana,
Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
> * gnu/packages/gstreamer.scm (gstreamer): Update to 1.26.0.
> ---
> gnu/packages/gstreamer.scm | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm
> index b93e84dba45..d4a2d66980d 100644
> --- a/gnu/packages/gstreamer.scm
> +++ b/gnu/packages/gstreamer.scm
> @@ -466,7 +466,7 @@ (define %common-gstreamer-phases
> (define-public gstreamer
> (package
> (name "gstreamer")
> - (version "1.24.9")
> + (version "1.26.0")
Typically when I update gstreamer I update all that is in (gnu packages
gstreamer) at the same time (can be done with 'guix refresh -u -s
module:gstreamer'), to minimize the chances of breakage.
--
Thanks,
Maxim
Information forwarded
to guix-patches@gnu.org: bug#77956; Package guix-patches.
(Wed, 23 Apr 2025 01:56:01 GMT) (full text, mbox, link).
Subject: Re: [bug#77956] [PATCH gnome-team 00/23] Start working on GNOME 48
Date: Wed, 23 Apr 2025 10:58:49 +0900
Hi,
Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
> Hi Guix,
>
> I'm a little late. This effort started before the python-team merge,
> but thanks in no small part to fontconfig's worldier than world rebuild
> has taken quite a while to finish. This series updates our base
> packages up to libadwaita to their latest version. The GTK one is
> marked as WIP, because the tests currently fail --- this is likely an
> Xorg thing that I haven't paid too much attention to. Perhaps it can
> work in tandem with some mesa updates, or else we will have to switch up
> our test setup.
The series LGTM, I'd drop the WIP GTK commit for now. It'd be good to
keep an eye on any new failures triggered in the CI following pushing
these. Also rebuilding things twice or thrice or more if you can helps
detect flaky tests, which there are many in the GNOME world still
(gstreamer test suite often has non-deterministic failures).
Thanks for initiating the next GNOME effort again.
Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail>
--
Thanks,
Maxim
Information forwarded
to guix-patches@gnu.org: bug#77956; Package guix-patches.
(Wed, 23 Apr 2025 04:15:01 GMT) (full text, mbox, link).
Am Mittwoch, dem 23.04.2025 um 10:54 +0900 schrieb Maxim Cournoyer:
> Typically when I update gstreamer I update all that is in (gnu
> packages gstreamer) at the same time (can be done with 'guix refresh
> -u -s module:gstreamer'), to minimize the chances of breakage.
While I did not use that exact command, I still effectively updated all
the gst- things. Am I missing something?
Cheers
Information forwarded
to guix-patches@gnu.org: bug#77956; Package guix-patches.
(Wed, 23 Apr 2025 04:29:02 GMT) (full text, mbox, link).
Subject: Re: [bug#77956] [PATCH gnome-team 00/23] Start working on GNOME 48
Date: Wed, 23 Apr 2025 06:28:42 +0200
Am Mittwoch, dem 23.04.2025 um 10:58 +0900 schrieb Maxim Cournoyer:
> The series LGTM, I'd drop the WIP GTK commit for now.
Have you checked whether libadwaita can build without it? From memory,
I don't recall whether it can.
Cheers
Information forwarded
to guix-patches@gnu.org: bug#77956; Package guix-patches.
(Thu, 24 Apr 2025 00:18:02 GMT) (full text, mbox, link).
Hi Liliana,
Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
> Am Mittwoch, dem 23.04.2025 um 10:54 +0900 schrieb Maxim Cournoyer:
>> Typically when I update gstreamer I update all that is in (gnu
>> packages gstreamer) at the same time (can be done with 'guix refresh
>> -u -s module:gstreamer'), to minimize the chances of breakage.
> While I did not use that exact command, I still effectively updated all
> the gst- things. Am I missing something?
I think the gstreamer module might have packages not prefixed with gst-,
but closely related nontheless, so it's good to update the whole module,
while at it (it's usually straightforward to do so in my experience).
--
Thanks,
Maxim
Information forwarded
to guix-patches@gnu.org: bug#77956; Package guix-patches.
(Thu, 24 Apr 2025 00:18:02 GMT) (full text, mbox, link).
Subject: Re: [bug#77956] [PATCH gnome-team 00/23] Start working on GNOME 48
Date: Thu, 24 Apr 2025 09:17:40 +0900
Hi Liliana,
Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
> Am Mittwoch, dem 23.04.2025 um 10:58 +0900 schrieb Maxim Cournoyer:
>> The series LGTM, I'd drop the WIP GTK commit for now.
> Have you checked whether libadwaita can build without it? From memory,
> I don't recall whether it can.
Hm, good point, it's probably required.
--
Thanks,
Maxim
Information forwarded
to guix-patches@gnu.org: bug#77956; Package guix-patches.
(Wed, 25 Jun 2025 15:16:05 GMT) (full text, mbox, link).
Subject: [PATCH gnome-team 00/23] Start working on GNOME 48
Date: Tue, 24 Jun 2025 20:45:47 -0500
Is this still being worked on?
Reply sent
to Liliana Marie Prikler <liliana.prikler@gmail.com>:
You have taken responsibility.
(Wed, 16 Jul 2025 06:56:02 GMT) (full text, mbox, link).
Notification sent
to Liliana Marie Prikler <liliana.prikler@gmail.com>:
bug acknowledged by developer.
(Wed, 16 Jul 2025 06:56:02 GMT) (full text, mbox, link).
Subject: Re: [bug#77956] [PATCH gnome-team 00/23] Start working on GNOME 48
Date: Wed, 16 Jul 2025 08:54:54 +0200
Am Donnerstag, dem 24.04.2025 um 09:17 +0900 schrieb Maxim Cournoyer:
> Hi Liliana,
>
> Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
>
> > Am Mittwoch, dem 23.04.2025 um 10:58 +0900 schrieb Maxim Cournoyer:
> > > The series LGTM, I'd drop the WIP GTK commit for now.
> > Have you checked whether libadwaita can build without it? From
> > memory, I don't recall whether it can.
>
> Hm, good point, it's probably required.
I fixed the GTK issue and pushed the series; along with some temporary
fixes to get python building.
If you're on an unprivileged daemon, you'll have to use
`--without-tests=python-{aiohttp,distlib,virtualenv}'
for the time being to work around more permission issues.
Cheers
Information forwarded
to guix-patches@gnu.org: bug#77956; Package guix-patches.
(Wed, 16 Jul 2025 07:34:02 GMT) (full text, mbox, link).
Subject: Re: [bug#77956] [PATCH gnome-team 00/23] Start working on GNOME 48
Date: Wed, 16 Jul 2025 16:33:24 +0900
Hi,
Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
> Am Donnerstag, dem 24.04.2025 um 09:17 +0900 schrieb Maxim Cournoyer:
>> Hi Liliana,
>>
>> Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
>>
>> > Am Mittwoch, dem 23.04.2025 um 10:58 +0900 schrieb Maxim Cournoyer:
>> > > The series LGTM, I'd drop the WIP GTK commit for now.
>> > Have you checked whether libadwaita can build without it? From
>> > memory, I don't recall whether it can.
>>
>> Hm, good point, it's probably required.
> I fixed the GTK issue and pushed the series; along with some temporary
> fixes to get python building.
>
> If you're on an unprivileged daemon, you'll have to use
> `--without-tests=python-{aiohttp,distlib,virtualenv}'
> for the time being to work around more permission issues.
Sounds good; I'll try to rebase some branch I had on top and see if I
can make progress, thank you!
--
Thanks,
Maxim
bug archived.
Request was from Debbugs Internal Request <help-debbugs@gnu.org>
to internal_control@debbugs.gnu.org.
(Wed, 13 Aug 2025 11:24:10 GMT) (full text, mbox, link).
Debbugs is free software and licensed under the terms of the
GNU Public License version 2. The current version can be
obtained from https://bugs.debian.org/debbugs-source/.