From c6e719df1a2c84fb68a4e6ffd318c93d67dd7e05 Mon Sep 17 00:00:00 2001 From: Dylan Araps Date: Fri, 9 Jul 2021 13:38:22 +0300 Subject: [PATCH] gtk+3: Fix cursor issues in firefox --- extra/gtk+3/build | 21 ++++++++++++++++++ extra/gtk+3/checksums | 2 ++ extra/gtk+3/depends | 1 + extra/gtk+3/patches/schemas.patch | 37 +++++++++++++++++++++++++++++++ extra/gtk+3/sources | 2 ++ 5 files changed, 63 insertions(+) create mode 100644 extra/gtk+3/patches/schemas.patch diff --git a/extra/gtk+3/build b/extra/gtk+3/build index f5015193..a7e6acdb 100755 --- a/extra/gtk+3/build +++ b/extra/gtk+3/build @@ -1,6 +1,27 @@ #!/bin/sh -e patch -p1 < no-fribidi.patch +patch -p1 < schemas.patch + +# GTK+3 on Wayland requires gsettings-desktop-schemas +# for gsettings to work correctly. Install the bare +# minimum needed (currently one schema). +# +# This fixes cursor icon issues and console spam when +# running Firefox. +( + cd schemas + + meson \ + --prefix=/usr \ + -Dintrospection=false \ + . output + + export DESTDIR="$1" + + ninja -C output + ninja -C output install +) # Remove configure check for atk-bridge and fribidi. sed -e 's/\(ATK_PACKAGES="atk\) atk-bridge-2.0"/\1"/' \ diff --git a/extra/gtk+3/checksums b/extra/gtk+3/checksums index 656e3925..046bffe1 100644 --- a/extra/gtk+3/checksums +++ b/extra/gtk+3/checksums @@ -1,2 +1,4 @@ f57ec4ade8f15cab0c23a80dcaee85b876e70a8823d9105f067ce335a8268caa +7b57e54220110f00ee768536138f80e155e44b0f90d912610802c72a25a59510 e44b643a9ec01ea153817602241d6d7e6fd2d121b3ce4e29f99a87d8836a3ff0 +7ee815e1d04b47d780bdbca3a30a22e1fa74a385a5443174c96315d625822216 diff --git a/extra/gtk+3/depends b/extra/gtk+3/depends index e4616a7e..a2e7c38e 100644 --- a/extra/gtk+3/depends +++ b/extra/gtk+3/depends @@ -6,6 +6,7 @@ gdk-pixbuf glib libepoxy libxkbcommon +meson make pango pkgconf make python make diff --git a/extra/gtk+3/patches/schemas.patch b/extra/gtk+3/patches/schemas.patch new file mode 100644 index 00000000..6b67a8cc --- /dev/null +++ b/extra/gtk+3/patches/schemas.patch @@ -0,0 +1,37 @@ +diff --git a/schemas/meson.build b/schemas/meson.build +index 69a3f98..d10b8cd 100644 +--- a/schemas/schemas/meson.build ++++ b/schemas/schemas/meson.build +@@ -1,32 +1,5 @@ + schemas = [ +- 'org.gnome.desktop.default-applications.gschema.xml', + 'org.gnome.desktop.interface.gschema.xml', +- 'org.gnome.desktop.lockdown.gschema.xml', +- 'org.gnome.system.locale.gschema.xml', +- 'org.gnome.system.location.gschema.xml', +- 'org.gnome.system.proxy.gschema.xml', +- 'org.gnome.desktop.sound.gschema.xml', +- 'org.gnome.desktop.thumbnail-cache.gschema.xml', +- 'org.gnome.desktop.a11y.gschema.xml', +- 'org.gnome.desktop.a11y.keyboard.gschema.xml', +- 'org.gnome.desktop.a11y.applications.gschema.xml', +- 'org.gnome.desktop.a11y.magnifier.gschema.xml', +- 'org.gnome.desktop.a11y.mouse.gschema.xml', +- 'org.gnome.desktop.thumbnailers.gschema.xml', +- 'org.gnome.desktop.session.gschema.xml', +- 'org.gnome.desktop.background.gschema.xml', +- 'org.gnome.desktop.calendar.gschema.xml', +- 'org.gnome.desktop.datetime.gschema.xml', +- 'org.gnome.desktop.media-handling.gschema.xml', +- 'org.gnome.desktop.screensaver.gschema.xml', +- 'org.gnome.desktop.search-providers.gschema.xml', +- 'org.gnome.desktop.wm.keybindings.gschema.xml', +- 'org.gnome.desktop.wm.preferences.gschema.xml', +- 'org.gnome.desktop.input-sources.gschema.xml', +- 'org.gnome.desktop.privacy.gschema.xml', +- 'org.gnome.desktop.notifications.gschema.xml', +- 'org.gnome.desktop.app-folders.gschema.xml', +- 'org.gnome.desktop.peripherals.gschema.xml', + ] + + conf = configuration_data() diff --git a/extra/gtk+3/sources b/extra/gtk+3/sources index 47e0fbc7..c8a9e117 100644 --- a/extra/gtk+3/sources +++ b/extra/gtk+3/sources @@ -1,2 +1,4 @@ https://download.gnome.org/sources/gtk+/3.24/gtk+-3.24.29.tar.xz +https://gitlab.gnome.org/GNOME/gsettings-desktop-schemas/-/archive/40.0/gsettings-desktop-schemas-40.0.tar.gz schemas patches/no-fribidi.patch +patches/schemas.patch