Created attachment 220322 [details] Patch to update x11-toolkits/gtk30 - Update to 3.24.24 - Switch to the Meson build system - Adjust dependencies in Makefile, Mk/Uses/gnome.mk. 'gtk-update-icon-cache' is provided by whole tarball so it is now slave port
Moin moin Very nice, I will ask forn an exp-run shortly. Quick question though: This does not look very future proof: 50 MESON_ARGS+= -Dwayland_backend=false \ can we not enable the backend by default too? mfg Tobias
[00:00:07] Error: Dependency loop detected: These packages depend on each other: gtk3-3.24.24 adwaita-icon-theme-3.38.0
(In reply to Olivier Duchateau from comment #0) > 'gtk-update-icon-cache' is provided by whole tarball so it is now slave port Why? The proposed patch severely complicates x11-toolkits/gtk30 maintenance and introduces 37 new dependencies. INSTALLS_ICONS pulling gtk30 even for gtk20-only consumers (around 104 total) is also ugly. # "make all-depends-list" diff accessibility/atk converters/fribidi devel/py-appdirs devel/py-fs2 devel/py-lxml devel/py-unicodedata2 graphics/graphite2 graphics/libepoxy misc/iso-codes print/harfbuzz print/py-fonttools3 x11-fonts/bdftopcf x11-fonts/dejavu x11-fonts/encodings x11-fonts/font-bh-ttf x11-fonts/font-misc-ethiopic x11-fonts/font-misc-meltho x11-fonts/font-util x11-fonts/libXft x11-fonts/libfontenc x11-fonts/mkfontscale x11-fonts/xorg-fonts-truetype x11-toolkits/pango
Integrating gtk-update-icon-cache into gtk30 without complicating maintenance would require gtk20 to be removed which may take another ~10 years. However, once gtk40 is imported (likely the next year) we would be back to the statu quo. Having gtk40 consumers depend on gtk30 would be just as ugly as with gtk20 but... given gtk40 has less breaking changes maybe with enough effort gtk30 can be purged from ports/ in a shorter time.
Nevermind comment 4, with subpackages (see review D16457) gtk-update-icon-cache can be built as part of gtk30 without slave port abomination.
(In reply to Tobias C. Berner from comment #1) > 50 MESON_ARGS+= -Dwayland_backend=false \ > can we not enable the backend by default too? Having at least some backends enabled is probably a limitation imposed by gtk build system. gtk-update-icon-cache is just 2 *.c files and doesn't use any backend... or gtk itself. ;)
(In reply to Jan Beich from comment #6) Ah you're right, I missed that it was in the sub-port block. Anyways, that patch needs a revision for the dependency loop. mfg Tobias
Comment on attachment 220322 [details] Patch to update x11-toolkits/gtk30 > -ATK_BRIDGE_DESC=AT-SPI ATK bridge support (requires X11) > -ATK_BRIDGE_CONFIGURE_WITH= atk-bridge > -ATK_BRIDGE_LIB_DEPENDS= libatk-bridge-2.0.so:accessibility/at-spi2-atk > -ATK_BRIDGE_IMPLIES= X11 After bug 194460 went extra mile to support both autotools and meson? I still use ATK_BRIDGE=off but can't switch to X11=off without breaking www/firefox build.
Created attachment 220346 [details] update-only Let's only update for now. I don't think exp-run is necessary (unlike in USES=meson case).
(In reply to Jan Beich from comment #9) Well, if you feel comfortable pushing it in without an exp-run, you have my gnome-ad-interim@ approval to do so. mfg Tobias
'gtk-update-icon-cache' is only linked to X11 libraries, why to use INSTALLS_ICONS even with Wayland (when X11 backend is off, it is not coherent)? That's why I suggest to use slave port.
A commit references this bug: Author: jbeich Date: Mon Dec 7 23:34:26 UTC 2020 New revision: 557252 URL: https://svnweb.freebsd.org/changeset/ports/557252 Log: x11-toolkits/gtk30: update to 3.24.24 Changes: https://gitlab.gnome.org/GNOME/gtk/compare/3.24.23...3.24.24 Changes: https://gitlab.gnome.org/Community/gentoo/gtk-update-icon-cache/-/compare/3.24.20...3.24.24 PR: 251647 Approved by: tcberner Changes: head/graphics/gtk-update-icon-cache/Makefile head/graphics/gtk-update-icon-cache/distinfo head/x11-toolkits/gtk30/Makefile head/x11-toolkits/gtk30/distinfo head/x11-toolkits/gtk30/files/patch-atk-bridge-option head/x11-toolkits/gtk30/pkg-plist
(In reply to Olivier Duchateau from comment #11) > 'gtk-update-icon-cache' is only linked to X11 libraries "poudriere testport" for graphics/gtk-update-icon-cache currently shows: =>> Checking shared library dependencies 0x00000001 NEEDED Shared library: [libc.so.7] 0x00000001 NEEDED Shared library: [libgdk_pixbuf-2.0.so.0] 0x00000001 NEEDED Shared library: [libglib-2.0.so.0] 0x00000001 NEEDED Shared library: [libintl.so.8] None of these are X11 libraries.