Accepting request 1073503 from GNOME:Factory

OBS-URL: https://build.opensuse.org/request/show/1073503
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gtk3?expand=0&rev=183
This commit is contained in:
Dominique Leuenberger 2023-03-24 14:18:09 +00:00 committed by Git OBS Bridge
commit 8d8e47d2a4
10 changed files with 230 additions and 242 deletions

View File

@ -1,3 +0,0 @@
<multibuild>
<package>doc</package>
</multibuild>

View File

@ -1,9 +1,9 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<services> <services>
<service name="obs_scm" mode="disabled"> <service name="obs_scm" mode="manual">
<param name="url">https://gitlab.gnome.org/GNOME/gtk.git</param> <param name="url">https://gitlab.gnome.org/GNOME/gtk.git</param>
<param name="scm">git</param> <param name="scm">git</param>
<param name="revision">91c37c86</param> <param name="revision">refs/tags/3.24.37</param>
<param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param> <param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param>
<param name="versionrewrite-pattern">(.*)\+0</param> <param name="versionrewrite-pattern">(.*)\+0</param>
<param name="versionrewrite-replacement">\1</param> <param name="versionrewrite-replacement">\1</param>
@ -11,10 +11,10 @@
<param name="changesgenerate">enable</param> <param name="changesgenerate">enable</param>
--> -->
</service> </service>
<service mode="buildtime" name="tar" /> <service name="tar" mode="buildtime"/>
<service mode="buildtime" name="recompress"> <service name="recompress" mode="buildtime">
<param name="file">*.tar</param> <param name="file">*.tar</param>
<param name="compression">xz</param> <param name="compression">xz</param>
</service> </service>
<service mode="disabled" name="set_version" /> <service name="set_version" mode="manual"/>
</services> </services>

View File

@ -92,18 +92,6 @@ gtk3-immodule-vietnamese
postun "%else" postun "%else"
postun "<prefix>%{_bindir}/gtk-query-immodules-3.0 --update-cache" postun "<prefix>%{_bindir}/gtk-query-immodules-3.0 --update-cache"
postun "%endif" postun "%endif"
gtk3-immodule-wayland
requires "gtk3-<targettype>"
post "%if "%_lib" == "lib64""
post "<prefix>%{_bindir}/gtk-query-immodules-3.0-64 --update-cache"
post "%else"
post "<prefix>%{_bindir}/gtk-query-immodules-3.0 --update-cache"
post "%endif"
postun "%if "%_lib" == "lib64""
postun "<prefix>%{_bindir}/gtk-query-immodules-3.0-64 --update-cache"
postun "%else"
postun "<prefix>%{_bindir}/gtk-query-immodules-3.0 --update-cache"
postun "%endif"
gtk3-immodule-xim gtk3-immodule-xim
requires "gtk3-<targettype>" requires "gtk3-<targettype>"
post "%if "%_lib" == "lib64"" post "%if "%_lib" == "lib64""

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f3af00a3933a0aa056a662c07644e771737d5b42e548652b2c21f8ec8b04e9fa
size 99370510

3
gtk-3.24.37.obscpio Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:dbcf591620219d18b0f9a8b670bc561e95efaf877ae16f32f67573f41756c4bb
size 99188238

View File

@ -1,4 +1,4 @@
name: gtk name: gtk
version: 3.24.35+10 version: 3.24.37
mtime: 1669387367 mtime: 1677803512
commit: 91c37c8692753febe0f89133f26a63af80f03ca4 commit: 013b629a2e5420cc01647f859226eb1a37ebe661

View File

@ -1,8 +1,8 @@
Index: gtk+-3.5.2/gtk/gtkmodules.c Index: b/gtk/gtkmodules.c
=================================================================== ===================================================================
--- gtk+-3.5.2.orig/gtk/gtkmodules.c --- a/gtk/gtkmodules.c
+++ gtk+-3.5.2/gtk/gtkmodules.c +++ b/gtk/gtkmodules.c
@@ -60,7 +60,7 @@ get_module_path (void) @@ -61,7 +61,7 @@ get_module_path (void)
if (result) if (result)
return result; return result;

View File

@ -13,10 +13,10 @@ Signed-off-by: Fabian Vogt <fvogt@suse.com>
gdk/x11/gdkxftdefaults.c | 3 ++- gdk/x11/gdkxftdefaults.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-) 1 file changed, 2 insertions(+), 1 deletion(-)
Index: gtk+-3.20.10/gdk/x11/gdkxftdefaults.c Index: b/gdk/x11/gdkxftdefaults.c
=================================================================== ===================================================================
--- gtk+-3.20.10.orig/gdk/x11/gdkxftdefaults.c --- a/gdk/x11/gdkxftdefaults.c
+++ gtk+-3.20.10/gdk/x11/gdkxftdefaults.c +++ b/gdk/x11/gdkxftdefaults.c
@@ -174,7 +174,8 @@ init_xft_settings (GdkScreen *screen) @@ -174,7 +174,8 @@ init_xft_settings (GdkScreen *screen)
x11_screen->xft_rgba = FC_RGBA_UNKNOWN; x11_screen->xft_rgba = FC_RGBA_UNKNOWN;

View File

@ -1,3 +1,71 @@
-------------------------------------------------------------------
Tue Mar 21 08:43:48 UTC 2023 - Dominique Leuenberger <dimstar@opensuse.org>
- Re-add macros.gtk3: there are quite a few consumers left
requiring the defined macros.
-------------------------------------------------------------------
Tue Mar 7 00:21:45 UTC 2023 - Luciano Santos <luc14n0@opensuse.org>
- Prepend gtk3 to binary_version and _immoduledir macro names to
avoid possible name clash now that they are being defined in the
macros.gtk3 file instead of the spec file.
-------------------------------------------------------------------
Fri Mar 3 07:22:24 UTC 2023 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 3.24.37:
+ Support the file transfer portal for copy-paste and DND
+ Treat XKB_MODE_NAME_LODO as super key
+ Refactor startup notification handling to be in sync with GTK 4
+ GL: Synchronie when calling MakeCurrent
+ CSS: Fix a problem with stopping animations
+ Wayland: Drop the legacy text input module
+ Updated translations.
-------------------------------------------------------------------
Thu Dec 29 06:35:17 UTC 2022 - Luciano Santos <luc14n0@opensuse.org>
- Update to version 3.24.36:
+ GtkLabel: Tweak selection behavior.
+ GtkEmojiChooser: Properly handle empty recent section.
+ GtkFileChooser: Make ~ key work regardless of dead keys.
+ Wayland:
- Fix problems with X<>Wayland DND.
- Revert cursor changes from 3.24.35.
- Fix handling of surrounding text in input.
+ Updated translation.
- Switch from Autotools to Meson, dropping libtool build
requirement while adding meson and ninja. And replace configure,
make_build, and make_install macros with meson, meson_build and
meson_install.
- Adopt the use of autosetup and autopatch macro facilities to
improve package maintainability.
- Drop multibuild facility due to the fact that Gtk 3 Meson build
scripts can't fully disable some components. And, at least for
now, we cannot achieve the same degree of modularity we had with
Autotools.
- Drop macros.gtk3 file as no package (if it ever had any) consumes
its macros.
- After switching to Meson, the build doesn't produce a Wayland
Input Method module anymore, at least not as a standalone. Update
baselibs.conf accordingly. And some GResource files are now being
provided in the devel package for working with emojis.
- Define __provides_exclude_from macro with ^%{_libdir}/gtk-3.0 as
its value to prevent the automatic provision generator to offer
private modules as requirable symbols.
- Make cloudproviders to be easily switchable, through bcond
facility, to allow people to test it, or for maintainers to turn
it on and off easily.
- Make gettext-its-gtk3 and gtk3-devel-doc sub-packages
arch-independent (noarch), as they don't contain any binaries.
- Convert IM modules cache update post(un) scriptlets to RPM
file triggers. Though we had good results with icon cache update
scriptlets previously, we still can't use transfiletriggers to
trigger the cache update only once, post transaction, because
Zypper is still working on implementing support for them.
- Refresh patch with Quilt: gtk3-revert-forced-xftdpi.patch.
------------------------------------------------------------------- -------------------------------------------------------------------
Mon Dec 5 16:47:28 UTC 2022 - Dominique Leuenberger <dimstar@opensuse.org> Mon Dec 5 16:47:28 UTC 2022 - Dominique Leuenberger <dimstar@opensuse.org>

351
gtk3.spec
View File

@ -1,7 +1,7 @@
# #
# spec file # spec file for package gtk3
# #
# Copyright (c) 2022 SUSE LLC # Copyright (c) 2023 SUSE LLC
# Copyright (c) 2010 Dominique Leuenberger, Amsterdam, Netherlands # Copyright (c) 2010 Dominique Leuenberger, Amsterdam, Netherlands
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
@ -17,22 +17,20 @@
# #
%global flavor @BUILD_FLAVOR@%{nil}
%if "%{flavor}" == ""
%global pname gtk3
%bcond_with doc
%endif
%if "%{flavor}" == "doc"
%global pname gtk3-doc
%bcond_without doc
%endif
# When updating the binary version, do not forget to also update baselibs.conf
%define gtk_binary_version 3.0.0
%define _name gtk
%bcond_without broadway %bcond_without broadway
%bcond_with doc %bcond_with clouds
Name: %{pname} %bcond_with tests
Version: 3.24.35+10
%define _name gtk
# When updating the binary version, please do not forget to also update the
# baselibs.conf file accordingly.
%define binary_version 3.0.0
%define _immoduledir %{_libdir}/gtk-3.0/%{binary_version}/immodules
# Filter out provides for private modules
%define __provides_exclude_from ^%{_libdir}/gtk-3.0
Name: gtk3
Version: 3.24.37
Release: 0 Release: 0
Summary: The GTK+ toolkit library (version 3) Summary: The GTK+ toolkit library (version 3)
License: LGPL-2.1-or-later License: LGPL-2.1-or-later
@ -52,17 +50,16 @@ BuildRequires: cups-devel >= 1.7
BuildRequires: docbook-xsl-stylesheets BuildRequires: docbook-xsl-stylesheets
BuildRequires: fdupes BuildRequires: fdupes
BuildRequires: gettext-tools-mini >= 0.19.7 BuildRequires: gettext-tools-mini >= 0.19.7
BuildRequires: gtk-doc
BuildRequires: hicolor-icon-theme BuildRequires: hicolor-icon-theme
# libtool is needed since we are using a git checkout BuildRequires: meson
BuildRequires: libtool BuildRequires: ninja
BuildRequires: pkgconfig BuildRequires: pkgconfig
BuildRequires: xsltproc BuildRequires: xsltproc
BuildRequires: pkgconfig(atk) >= 2.15.1 BuildRequires: pkgconfig(atk) >= 2.15.1
BuildRequires: pkgconfig(atk-bridge-2.0) BuildRequires: pkgconfig(atk-bridge-2.0)
BuildRequires: pkgconfig(cairo) >= 1.14.0 BuildRequires: pkgconfig(cairo) >= 1.14.0
BuildRequires: pkgconfig(cairo-gobject) >= 1.14.0 BuildRequires: pkgconfig(cairo-gobject) >= 1.14.0
# Enable cloudproviders once upstream settles on a location and version
#BuildRequires: pkgconfig(cloudproviders) >= 0.2.5
BuildRequires: pkgconfig(colord) >= 0.1.9 BuildRequires: pkgconfig(colord) >= 0.1.9
BuildRequires: pkgconfig(epoxy) >= 1.4 BuildRequires: pkgconfig(epoxy) >= 1.4
BuildRequires: pkgconfig(fontconfig) BuildRequires: pkgconfig(fontconfig)
@ -91,9 +88,9 @@ BuildRequires: pkgconfig(xi)
BuildRequires: pkgconfig(xinerama) BuildRequires: pkgconfig(xinerama)
BuildRequires: pkgconfig(xkbcommon) >= 0.2.0 BuildRequires: pkgconfig(xkbcommon) >= 0.2.0
BuildRequires: pkgconfig(xrandr) BuildRequires: pkgconfig(xrandr)
# Autotools requires gtk-doc even with --disable-gtk-doc, try again with meson # Enable cloudproviders once upstream settles on a location and version
%if %{with doc} || 1 %if %{with clouds}
BuildRequires: gtk-doc BuildRequires: pkgconfig(cloudproviders) >= 0.2.5
%endif %endif
%description %description
@ -363,6 +360,7 @@ This package contains the development files for GTK+ 3.x.
%package -n gettext-its-%{name} %package -n gettext-its-%{name}
Summary: International Tag Set for GTK+ 3 Summary: International Tag Set for GTK+ 3
Group: Development/Libraries/X11 Group: Development/Libraries/X11
BuildArch: noarch
%description -n gettext-its-%{name} %description -n gettext-its-%{name}
This package enhances gettext with an International Tag Set for GTK+ 3 This package enhances gettext with an International Tag Set for GTK+ 3
@ -372,6 +370,7 @@ This package enhances gettext with an International Tag Set for GTK+ 3
%package -n gtk3-devel-doc %package -n gtk3-devel-doc
Summary: API documentation for the GTK+ toolkit library v3 Summary: API documentation for the GTK+ toolkit library v3
Group: Documentation/HTML Group: Documentation/HTML
BuildArch: noarch
%description -n gtk3-devel-doc %description -n gtk3-devel-doc
GTK+ is a multi-platform toolkit for creating graphical user interfaces. GTK+ is a multi-platform toolkit for creating graphical user interfaces.
@ -381,73 +380,78 @@ ranging from small one-off projects to complete application suites.
This package contains the API documentation for GTK+ 3.x. This package contains the API documentation for GTK+ 3.x.
%prep %prep
%setup -q -n %{_name}-%{version} %autosetup -N -n %{_name}-%{version}
%if "%{_lib}" == "lib64" %if "%{_lib}" == "lib64"
cp -a %{SOURCE1} . cp -a %{SOURCE1} .
%patch0 -p1 %autopatch -p1 0
%endif %endif
%patch1 -p1 # Apply patches 1 to 999 (1 >= 999)
%autopatch -p1 -m 1 -M 999
%build %build
NOCONFIGURE=1 ./autogen.sh %meson \
%configure \ -D broadway_backend=%{?with_broadway:true}%{!?with_broadway:false} \
--disable-static \ -D cloudproviders=%{?with_clouds:true}%{!?with_clouds:false} \
%{?with_doc: \ -D gtk_doc=true \
--enable-gtk-doc} \ -D man=true \
--enable-man \ -D tests=%{?with_tests:true}%{!?with_tests:false} \
--enable-x11-backend \ -D builtin_immodules=wayland,waylandgtk \
--enable-introspection \ ;
%{?with_broadway: \ %meson_build
--enable-broadway-backend} \
--enable-wayland-backend \
--enable-explicit-deps=yes \
--enable-colord \
%{nil}
%if "%{flavor}" == ""
%make_build
%else
%make_build -C gdk
%make_build -C gtk
%make_build -C tests
%make_build -C docs
%endif
%install %install
%if "%{flavor}" == "" %meson_install
%make_install
find %{buildroot} -type f -name "*.la" -delete -print
# Do not install the exampleapp glib schema, as the app itself is noinst
rm %{buildroot}%{_datadir}/glib-2.0/schemas/org.gtk.exampleapp.gschema.xml
%find_lang gtk30 %find_lang gtk30
%find_lang gtk30-properties %find_lang gtk30-properties
install -m 644 -D %{SOURCE2} %{buildroot}%{_sysconfdir}/gtk-3.0/settings.ini
touch %{buildroot}%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules.cache # Do not install the exampleapp glib schema, as the app itself is noinst
rm -v %{buildroot}%{_datadir}/glib-2.0/schemas/org.gtk.exampleapp.gschema.xml
# Upstream's default UI settings.
install -v -m 644 -D %{SOURCE2} \
%{buildroot}%{_sysconfdir}/gtk-3.0/settings.ini
# Input Method Modules cache needs to be created in order to be ghosted in the
# files directive, allowing it to be removed along with the package upon
# uninstallation.
touch %{buildroot}%{_libdir}/gtk-3.0/%{binary_version}/immodules.cache
# This hack needs to be done as long as we offer openSUSE 32-bit.
# Maybe upstream could do something about it.
%if "%{_lib}" == "lib64" %if "%{_lib}" == "lib64"
mv %{buildroot}%{_bindir}/gtk-query-immodules-3.0 %{buildroot}%{_bindir}/gtk-query-immodules-3.0-64 mv -v %{buildroot}%{_bindir}/gtk-query-immodules-3.0 \
mv %{buildroot}%{_mandir}/man1/gtk-query-immodules-3.0.1 %{buildroot}%{_mandir}/man1/gtk-query-immodules-3.0-64.1 %{buildroot}%{_bindir}/gtk-query-immodules-3.0-64
mv -v %{buildroot}%{_mandir}/man1/gtk-query-immodules-3.0.1 \
%{buildroot}%{_mandir}/man1/gtk-query-immodules-3.0-64.1
%endif %endif
# create modules directory that should have been created during the build
test ! -d %{buildroot}%{_libdir}/gtk-3.0/modules # Create modules directory that should have been created during the build
mkdir %{buildroot}%{_libdir}/gtk-3.0/modules test ! -d %{buildroot}%{_libdir}/gtk-3.0/modules \
# create theming-engines directory that should have been created during the build && mkdir -v %{buildroot}%{_libdir}/gtk-3.0/modules
test ! -d %{buildroot}%{_libdir}/gtk-3.0/%{gtk_binary_version}/theming-engines
mkdir %{buildroot}%{_libdir}/gtk-3.0/%{gtk_binary_version}/theming-engines # Create immodules directory that should have been created during the build
test ! -d %{buildroot}%{_libdir}/gtk-3.0/immodules \
&& mkdir -v %{buildroot}%{_libdir}/gtk-3.0/immodules
# Create theming-engines directory that should have been created during the build
test ! -d %{buildroot}%{_libdir}/gtk-3.0/%{binary_version}/theming-engines \
&& mkdir -v %{buildroot}%{_libdir}/gtk-3.0/%{binary_version}/theming-engines
# Alternatives for gtk-update-icon-cache (binary and manpage) # Alternatives for gtk-update-icon-cache (binary and manpage)
mkdir -p %{buildroot}%{_sysconfdir}/alternatives mkdir -p %{buildroot}%{_sysconfdir}/alternatives
mv %{buildroot}%{_bindir}/gtk-update-icon-cache %{buildroot}%{_bindir}/gtk-update-icon-cache-3.0 mv %{buildroot}%{_bindir}/gtk-update-icon-cache \
ln -s -f %{_sysconfdir}/alternatives/gtk-update-icon-cache %{buildroot}%{_bindir}/gtk-update-icon-cache %{buildroot}%{_bindir}/gtk-update-icon-cache-3.0
mv %{buildroot}%{_mandir}/man1/gtk-update-icon-cache.1 %{buildroot}%{_mandir}/man1/gtk-update-icon-cache-3.0.1 ln -s -f %{_sysconfdir}/alternatives/gtk-update-icon-cache \
ln -s -f %{_sysconfdir}/alternatives/gtk-update-icon-cache.1%{ext_man} %{buildroot}%{_mandir}/man1/gtk-update-icon-cache.1%{ext_man} %{buildroot}%{_bindir}/gtk-update-icon-cache
mv %{buildroot}%{_mandir}/man1/gtk-update-icon-cache.1 \
%{buildroot}%{_mandir}/man1/gtk-update-icon-cache-3.0.1
ln -s -f %{_sysconfdir}/alternatives/gtk-update-icon-cache.1%{ext_man} \
%{buildroot}%{_mandir}/man1/gtk-update-icon-cache.1%{ext_man}
# Install rpm macros # Install rpm macros
mkdir -p %{buildroot}%{_rpmmacrodir} mkdir -p %{buildroot}%{_rpmmacrodir}
cp %{SOURCE3} %{buildroot}%{_rpmmacrodir} cp %{SOURCE3} %{buildroot}%{_rpmmacrodir}
%else
%make_install -C docs
rm -Rf %{buildroot}%{_mandir}/man1/
%endif
%fdupes %{buildroot}%{_datadir} %fdupes %{buildroot}%{_datadir}
%fdupes %{buildroot}%{_libdir} %fdupes %{buildroot}%{_libdir}
@ -455,131 +459,62 @@ rm -Rf %{buildroot}%{_mandir}/man1/
# Note: when updating scriptlets, don't forget to also update baselibs.conf # Note: when updating scriptlets, don't forget to also update baselibs.conf
########################################################################### ###########################################################################
# Convenient %define for the scriplets %if "%_lib" == "lib64"
%if "%{_lib}" == "lib64" %define ext_64 -64
%define _gtk_query_immodules %{_bindir}/gtk-query-immodules-3.0-64
%else
%define _gtk_query_immodules %{_bindir}/gtk-query-immodules-3.0
%endif %endif
%define _gtk_query_immodules_update_cache %{_gtk_query_immodules} --update-cache %define __gtk_query_immodules %{_bindir}/gtk-query-immodules-3.0%{?ext_64}
%define __update_iconcache %{_bindir}/gtk-update-icon-cache
%define __update_iconcache3 %{_bindir}/gtk-update-icon-cache-3.0
%define __update_alternatives %{_sbindir}/update-alternatives
%post -n libgtk-3-0 # Until RPM (trans)filetriggers gets implemented for ldconfig calls, use
/sbin/ldconfig # whatever we got.
%if 0 %ldconfig_scriptlets -n libgtk-3-0
# In case libgtk-3-0 gets installed before gtk3-tools, we don't want to fail.
# So we make the call to gtk-query-immodules-3.0 dependent on the existence of %filetriggerin tools -- %{_immoduledir}
# the binary. This is why we also have a %post for gtk3-tools. %__gtk_query_immodules --update-cache \
%endif || echo "[GTK3] Update IM modules cache: failed"
if test -f %{_gtk_query_immodules}; then
%{_gtk_query_immodules_update_cache} %filetriggerpostun tools -- %{_immoduledir}
# We ignore upgrades (already handled by the newer package's filetriggerin).
if [ "$1" -eq 0 ]; then
%__gtk_query_immodules --update-cache \
|| echo "[GTK3] Update IM modules cache: failed"
fi fi
%post immodule-amharic
%{_gtk_query_immodules_update_cache}
%post immodule-broadway
%{_gtk_query_immodules_update_cache}
%post immodule-inuktitut
%{_gtk_query_immodules_update_cache}
%post immodule-multipress
%{_gtk_query_immodules_update_cache}
%post immodule-thai
%{_gtk_query_immodules_update_cache}
%post immodule-tigrigna
%{_gtk_query_immodules_update_cache}
%post immodule-vietnamese
%{_gtk_query_immodules_update_cache}
%post immodule-wayland
%{_gtk_query_immodules_update_cache}
%post immodule-xim
%{_gtk_query_immodules_update_cache}
%post tools
%if 0
# If we install gtk3-tools for the first time, then we should run it in case
# libgtk-3-0 was installed first (ie, if
# %{_libdir}/gtk-3.0/%{gtk_binary_version} already exists) which means
# gtk-query-immodules-3.0 couldn't run there.
%endif
if [ $1 = 1 ]; then
test -d %{_libdir}/gtk-3.0/%{gtk_binary_version} && %{_gtk_query_immodules_update_cache}
fi
%if 0
# If the gtk-update-icon-cache group is in automatic mode, then this will also
# switch all symlinks automatically
%endif
update-alternatives --install %{_bindir}/gtk-update-icon-cache gtk-update-icon-cache %{_bindir}/gtk-update-icon-cache-3.0 3 \
--slave %{_mandir}/man1/gtk-update-icon-cache.1.gz gtk-update-icon-cache.1.gz %{_mandir}/man1/gtk-update-icon-cache-3.0.1.gz
%filetriggerin tools -- %{_datadir}/icons %filetriggerin tools -- %{_datadir}/icons
if [ "$(realpath %{_bindir}/gtk-update-icon-cache)" = "%{_bindir}/gtk-update-icon-cache-3.0" ]; then if [ "$(realpath %__update_iconcache)" = "%__update_iconcache3" ]; then
for ICON_THEME in $(cut -d / -f 5 | sort -u); do for ICON_THEME in $(cut -d / -f 5 | sort -u); do
if [ -f "%{_datadir}/icons/${ICON_THEME}/index.theme" ]; then if [ -f "%{_datadir}/icons/${ICON_THEME}/index.theme" ]; then
%{_bindir}/gtk-update-icon-cache --quiet --force "%{_datadir}/icons/${ICON_THEME}" %__update_iconcache --quiet --force "%{_datadir}/icons/${ICON_THEME}" \
|| echo "[GTK3] Update icons cache: failure to add ${ICON_THEME} icons"
fi fi
done done
fi fi
%filetriggerpostun tools -- %{_datadir}/icons %filetriggerpostun tools -- %{_datadir}/icons
if [ "$(realpath %{_bindir}/gtk-update-icon-cache)" = "%{_bindir}/gtk-update-icon-cache-3.0" ]; then # We ignore upgrades (already handled by the newer package's filetriggerin).
if [ "$1" -eq 0 ] &&
[ "$(realpath %__update_iconcache)" = "%__update_iconcache3" ]; then
for ICON_THEME in $(cut -d / -f 5 | sort -u); do for ICON_THEME in $(cut -d / -f 5 | sort -u); do
if [ -f "%{_datadir}/icons/${ICON_THEME}/index.theme" ]; then if [ -f "%{_datadir}/icons/${ICON_THEME}/index.theme" ]; then
%{_bindir}/gtk-update-icon-cache --quiet --force "%{_datadir}/icons/${ICON_THEME}" %__update_iconcache --quiet --force "%{_datadir}/icons/${ICON_THEME}" \
|| echo "[GTK3] Update icons cache: failure to remove ${ICON_THEME} icons"
fi fi
done done
fi fi
%if 0 %post tools
# No need to call gtk-query-immodules-3.0 in postun: %__update_alternatives --install %__update_iconcache gtk-update-icon-cache \
# - if it's an upgrade, it will have been called in post %__update_iconcache3 3 --slave %{_mandir}/man1/gtk-update-icon-cache.1.gz \
# - if it's an uninstall, we don't care about this anymore gtk-update-icon-cache.1.gz %{_mandir}/man1/gtk-update-icon-cache-3.0.1.gz
%endif
%postun -n libgtk-3-0 -p /sbin/ldconfig
%postun immodule-amharic
%{_gtk_query_immodules_update_cache}
%postun immodule-broadway
%{_gtk_query_immodules_update_cache}
%postun immodule-inuktitut
%{_gtk_query_immodules_update_cache}
%postun immodule-multipress
%{_gtk_query_immodules_update_cache}
%postun immodule-thai
%{_gtk_query_immodules_update_cache}
%postun immodule-tigrigna
%{_gtk_query_immodules_update_cache}
%postun immodule-vietnamese
%{_gtk_query_immodules_update_cache}
%postun immodule-wayland
%{_gtk_query_immodules_update_cache}
%postun immodule-xim
%{_gtk_query_immodules_update_cache}
%postun tools %postun tools
%if 0 # We don't use "$1 -eq 0", to avoid issues if the package gets renamed.
# Note: we don't use "$1 -eq 0", to avoid issues if the package gets renamed if [ ! -f %__update_iconcache3 ]; then
%endif %__update_alternatives --remove gtk-update-icon-cache %__update_iconcache3
if [ ! -f %{_bindir}/gtk-update-icon-cache-3.0 ]; then
update-alternatives --remove gtk-update-icon-cache %{_bindir}/gtk-update-icon-cache-3.0
fi fi
%if "%{flavor}" == ""
%files -n libgtk-3-0 %files -n libgtk-3-0
%license COPYING %license COPYING
%if "%{_lib}" == "lib64" %if "%{_lib}" == "lib64"
@ -587,18 +522,17 @@ fi
%endif %endif
%dir %{_sysconfdir}/gtk-3.0 %dir %{_sysconfdir}/gtk-3.0
%dir %{_libdir}/gtk-3.0 %dir %{_libdir}/gtk-3.0
%dir %{_libdir}/gtk-3.0/%{gtk_binary_version} %dir %{_libdir}/gtk-3.0/%{binary_version}
%dir %{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/ %dir %{_immoduledir}
%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-cedilla.so %{_immoduledir}/im-cedilla.so
%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-cyrillic-translit.so %{_immoduledir}/im-cyrillic-translit.so
%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-ipa.so %{_immoduledir}/im-ipa.so
%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-wayland.so %dir %{_libdir}/gtk-3.0/%{binary_version}/printbackends/
%dir %{_libdir}/gtk-3.0/%{gtk_binary_version}/printbackends/ %{_libdir}/gtk-3.0/%{binary_version}/printbackends/libprintbackend-cups.so
%{_libdir}/gtk-3.0/%{gtk_binary_version}/printbackends/libprintbackend-cups.so %{_libdir}/gtk-3.0/%{binary_version}/printbackends/libprintbackend-file.so
%{_libdir}/gtk-3.0/%{gtk_binary_version}/printbackends/libprintbackend-file.so %{_libdir}/gtk-3.0/%{binary_version}/printbackends/libprintbackend-lpr.so
%{_libdir}/gtk-3.0/%{gtk_binary_version}/printbackends/libprintbackend-lpr.so %dir %{_libdir}/gtk-3.0/%{binary_version}/theming-engines/
%dir %{_libdir}/gtk-3.0/%{gtk_binary_version}/theming-engines/ %ghost %{_libdir}/gtk-3.0/%{binary_version}/immodules.cache
%ghost %{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules.cache
%dir %{_libdir}/gtk-3.0/modules %dir %{_libdir}/gtk-3.0/modules
%{_libdir}/libgailutil-3.so.* %{_libdir}/libgailutil-3.so.*
%{_libdir}/libgdk-3.so.* %{_libdir}/libgdk-3.so.*
@ -610,37 +544,34 @@ fi
%{_libdir}/girepository-1.0/Gtk-3.0.typelib %{_libdir}/girepository-1.0/Gtk-3.0.typelib
%files immodule-amharic %files immodule-amharic
%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-am-et.so %{_immoduledir}/im-am-et.so
%files immodule-broadway %files immodule-broadway
%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-broadway.so %{_immoduledir}/im-broadway.so
%files immodule-inuktitut %files immodule-inuktitut
%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-inuktitut.so %{_immoduledir}/im-inuktitut.so
%files immodule-multipress %files immodule-multipress
%doc modules/input/README.multipress %doc modules/input/README.multipress
%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-multipress.so %{_immoduledir}/im-multipress.so
%config %{_sysconfdir}/gtk-3.0/im-multipress.conf %config %{_sysconfdir}/gtk-3.0/im-multipress.conf
%files immodule-thai %files immodule-thai
%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-thai.so %{_immoduledir}/im-thai.so
%files immodule-tigrigna %files immodule-tigrigna
%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-ti-er.so %{_immoduledir}/im-ti-er.so
%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-ti-et.so %{_immoduledir}/im-ti-et.so
%files immodule-vietnamese %files immodule-vietnamese
%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-viqr.so %{_immoduledir}/im-viqr.so
%files immodule-wayland
%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-waylandgtk.so
%files immodule-xim %files immodule-xim
%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-xim.so %{_immoduledir}/im-xim.so
%files tools %files tools
%doc AUTHORS README NEWS %doc README.md NEWS
%{_bindir}/broadwayd %{_bindir}/broadwayd
%{_bindir}/gtk3-icon-browser %{_bindir}/gtk3-icon-browser
%{_bindir}/gtk-builder-tool %{_bindir}/gtk-builder-tool
@ -662,6 +593,12 @@ fi
%{_mandir}/man1/gtk-update-icon-cache-3.0.1%{?ext_man} %{_mandir}/man1/gtk-update-icon-cache-3.0.1%{?ext_man}
%{_mandir}/man1/gtk-update-icon-cache.1%{?ext_man} %{_mandir}/man1/gtk-update-icon-cache.1%{?ext_man}
%ghost %{_sysconfdir}/alternatives/gtk-update-icon-cache.1%{?ext_man} %ghost %{_sysconfdir}/alternatives/gtk-update-icon-cache.1%{?ext_man}
%dir %{_datadir}/gtk-3.0/
%dir %{_datadir}/gtk-3.0/emoji
%{_datadir}/gtk-3.0/emoji/de.gresource
%{_datadir}/gtk-3.0/emoji/es.gresource
%{_datadir}/gtk-3.0/emoji/fr.gresource
%{_datadir}/gtk-3.0/emoji/zh.gresource
%files schema %files schema
%{_datadir}/glib-2.0/schemas/org.gtk.Settings.ColorChooser.gschema.xml %{_datadir}/glib-2.0/schemas/org.gtk.Settings.ColorChooser.gschema.xml
@ -679,6 +616,7 @@ fi
%config(noreplace) %{_sysconfdir}/gtk-3.0/settings.ini %config(noreplace) %{_sysconfdir}/gtk-3.0/settings.ini
%files devel %files devel
%doc CONTRIBUTING.md
%{_bindir}/gtk3-demo %{_bindir}/gtk3-demo
%{_bindir}/gtk3-demo-application %{_bindir}/gtk3-demo-application
%{_bindir}/gtk3-widget-factory %{_bindir}/gtk3-widget-factory
@ -689,7 +627,6 @@ fi
%{_datadir}/applications/gtk3-demo.desktop %{_datadir}/applications/gtk3-demo.desktop
%{_datadir}/applications/gtk3-widget-factory.desktop %{_datadir}/applications/gtk3-widget-factory.desktop
%{_datadir}/gir-1.0/*.gir %{_datadir}/gir-1.0/*.gir
%dir %{_datadir}/gtk-3.0
%{_datadir}/gtk-3.0/gtkbuilder.rng %{_datadir}/gtk-3.0/gtkbuilder.rng
%dir %{_datadir}/gtk-3.0/valgrind %dir %{_datadir}/gtk-3.0/valgrind
%{_datadir}/gtk-3.0/valgrind/gtk.supp %{_datadir}/gtk-3.0/valgrind/gtk.supp
@ -701,10 +638,12 @@ fi
%{_includedir}/gtk-3.0/ %{_includedir}/gtk-3.0/
%{_libdir}/pkgconfig/gail-3.0.pc %{_libdir}/pkgconfig/gail-3.0.pc
%{_libdir}/pkgconfig/gdk-3.0.pc %{_libdir}/pkgconfig/gdk-3.0.pc
%if %{with broadway} %if %{with broadway}
%{_libdir}/pkgconfig/gdk-broadway-3.0.pc %{_libdir}/pkgconfig/gdk-broadway-3.0.pc
%{_libdir}/pkgconfig/gtk+-broadway-3.0.pc %{_libdir}/pkgconfig/gtk+-broadway-3.0.pc
%endif %endif
%{_libdir}/pkgconfig/gdk-wayland-3.0.pc %{_libdir}/pkgconfig/gdk-wayland-3.0.pc
%{_libdir}/pkgconfig/gtk+-wayland-3.0.pc %{_libdir}/pkgconfig/gtk+-wayland-3.0.pc
%{_libdir}/pkgconfig/gdk-x11-3.0.pc %{_libdir}/pkgconfig/gdk-x11-3.0.pc
@ -723,16 +662,12 @@ fi
%{_datadir}/gettext/its/gtkbuilder.loc %{_datadir}/gettext/its/gtkbuilder.loc
%files lang -f gtk30.lang -f gtk30-properties.lang %files lang -f gtk30.lang -f gtk30-properties.lang
# english locale should be in the main package # English locale should be in the main package
%exclude %{_datadir}/locale/en %exclude %{_datadir}/locale/en
%endif
%if %{with doc}
%files -n gtk3-devel-doc %files -n gtk3-devel-doc
%doc HACKING README.commits
%doc %{_datadir}/gtk-doc/html/gail-libgail-util3/ %doc %{_datadir}/gtk-doc/html/gail-libgail-util3/
%doc %{_datadir}/gtk-doc/html/gdk3/ %doc %{_datadir}/gtk-doc/html/gdk3/
%doc %{_datadir}/gtk-doc/html/gtk3/ %doc %{_datadir}/gtk-doc/html/gtk3/
%endif
%changelog %changelog