On Wed, Mar 27, 2024 at 05:08:02AM +0000, John Kehayias wrote: > Hello, > > Arg, I don't know if this ever was actually sent to the gnome-team! Also > adding Efraim due to a librsvg issue (below). > > Apologies if it didn't go through originally (or if you are getting it > again). > > On Sat, Mar 02, 2024 at 01:50 AM, John Kehayias wrote: > > > Hi gnome-team and guix, > > > > I'm cc'ing the gnome-team as this would normally fall to them, but with their > > pending merge and the builds upcoming on mesa-updates (libdrm, which cairo > > depends on), I think this will go on mesa-updates. The patch is based on > > master, not gnome-team. Still, thought it would be good to have a review as > > this was non-trivial. Thanks to lilyp on #guix for tips! > > > > Please see the patches to update cairo to the new release (after many years!) > > of 1.18.0. An update to python-pycairo was needed first. The end result is > > that our cairo package is quite a bit simpler as the defaults include the tee > > backend that we had enabled before. I removed all the old configure flags and > > propagated-inputs which were commented out and now obsolete. > > > > The docs require gtk-doc which depends on cairo. To break the cycle cairo is > > hidden (but exported) and built without docs, with the public cairo-with-docs > > including them. I followed what was done for glib with a similar issue. > > > > I did not try too much enable tests, which may have been revamped? The quick > > look I took in the source docs suggested that it is very system dependent > > (reference images) though does run on their GitLab CI. When enabling > > test/ps2png.p/ps2png.c.o fails to build as it can't find cairo.h. Perhaps it > > needs to build tests in a phase after cairo has built and set in a way to find > > this just build version? > > > > Anyway, this built locally for me on x86_64. I built up to icecat, which needs > > the tee backend we previously manually enabled, and it built and ran > > successfully. > > > > Let me know of any issues or changes wanted or if someone wants to take this > > on a different branch. I think it makes sense on mesa-updates due to the > > libdrm update I will take there. > > > > Thanks! > > John > > > > > > John Kehayias (2): > > gnu: python-pycairo: Update to 1.26.0. > > gnu: cairo: Update to 1.18.0. > > > > gnu/local.mk | 2 - > > gnu/packages/gtk.scm | 85 ++++++++++--------- > > .../patches/cairo-CVE-2018-19876.patch | 37 -------- > > .../patches/cairo-CVE-2020-35492.patch | 49 ----------- > > 4 files changed, 47 insertions(+), 126 deletions(-) > > delete mode 100644 gnu/packages/patches/cairo-CVE-2018-19876.patch > > delete mode 100644 gnu/packages/patches/cairo-CVE-2020-35492.patch > > > > > > base-commit: b386c11e7804e0b577411d930b60f1e0a4a0382c > > prerequisite-patch-id: 2889be19c4a046760f2f608cefff987b11b65a31 > > -- > > 2.41.0 > > I've applied this series locally and haven't run into issues in building > (and trying a few random packages). Happy to take feedback before I push > this to mesa-updates, and even then will be some time before the branch > will be built to be merged to master. Other updates include mesa, sdl2, > and vulkan. > > I did run into two test failures for the older librsvg-2.40. Since that > is an old version, I guess we might expect issues as dependencies are > updated. I disabled the two failing tests with the attached patch. One > referred to a bug fix that had something to do with calling cairo, not > sure about the other. > > Apologies if the CCing with teams didn't go through properly! And thanks > to Liliana for initial help on #guix with sorting out what was needed > for the circular dependency between cairo and gtk-doc. Currently x86_64, aarch64 and riscv64 are the only architectures using the newer librsvg. Can you test the older librsvg-2.40 with the newer cairo on x86_64 to see if the tests also fail there? I'm curious if it's a 32-bit problem or if its just that old. Overall I have no issues with skipping those two tests. > From 0f3e6653a65a5a7031f245260b6641aedc8f43f2 Mon Sep 17 00:00:00 2001 > Message-ID: <0f3e6653a65a5a7031f245260b6641aedc8f43f2.1711514951.git.john.kehayias@protonmail.com> > From: John Kehayias > Date: Wed, 27 Mar 2024 00:45:59 -0400 > Subject: [PATCH] gnu: librsvg-2.40: Skip tests that fail with cairo 1.18.0. > > * gnu/packages/gnome.scm (librsvg-2.40)[arguments]: Skip two tests which fail > after cairo was updated to version 1.18.0. > > Change-Id: If3867a9fdee6481da819954d77341f411e85e78b > --- > gnu/packages/gnome.scm | 7 +++++-- > 1 file changed, 5 insertions(+), 2 deletions(-) > > diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm > index 06256066bc..55b60b7b12 100644 > --- a/gnu/packages/gnome.scm > +++ b/gnu/packages/gnome.scm > @@ -3717,12 +3717,15 @@ (define-public librsvg-2.40 > "svg1.1/masking-mask-01-b.svg" > ;; This test fails on aarch64: > "bugs/777834-empty-text-children.svg" > - > ;; These two tests fail due to slightly different > ;; text rendering (different kerning or similar), > ;; nothing alarming. > "bugs/340047.svg" > - "bugs/749415.svg")))))))) > + "bugs/749415.svg" > + ;; These two tests fail with the update to cairo > + ;; version 1.18.0. > + "bugs/587721-text-transform.svg" > + "svg1.1/masking-path-03-b.svg")))))))) > (native-inputs > (list pkg-config > `(,glib "bin") ; glib-mkenums, etc. > > base-commit: c3f15443bc6d457758aad1326dcc6dcad9cf8d6e > prerequisite-patch-id: fa1f23e1340a3eeb9f347ed719b9b0fa0558fb3f > prerequisite-patch-id: a1eb5f0955b9988d3bfe3be8403c75999a1cae5f > prerequisite-patch-id: 2889be19c4a046760f2f608cefff987b11b65a31 > prerequisite-patch-id: ea93b6662275aeec1e014a9bc9fe7a96f26ac600 > prerequisite-patch-id: 177440a12b7c797d22f8bb1253db133d2fbad348 > prerequisite-patch-id: 3a5189c1e8e4612ceb6f1b70cc3c83e39a977eb9 > -- > 2.41.0 > -- Efraim Flashner רנשלפ םירפא GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 Confidentiality cannot be guaranteed on emails sent or received unencrypted