b567653505
For the splash screen to correctly dismiss itself without hitting the timeout, we need a Gtk patch. This is described in the Phosh release notes: https://gitlab.gnome.org/World/Phosh/phosh/-/releases/v0.30.0#required-patches-that-arent-merged-upstream-yet The patch isn't in upstream yet, but there is an open PR: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/5628 Mobian also carries the patch: https://salsa.debian.org/Mobian-team/packages/gtk3/-/blob/mobian/debian/patches/purism/gdk-wayland-Track-last-touch-serial-on-seat.patch So let's add the patch to pmOS as well. This fixes the Phosh splash screens so they now disapear when the application is ready. Signed-off-by: Alistair Francis <alistair@alistair23.me> [ci:skip-build]: already built successfully in CI
139 lines
3.5 KiB
Text
139 lines
3.5 KiB
Text
# Forked from Alpine to apply Purism's patches for mobile usage
|
|
pkgname=gtk+3.0
|
|
pkgver=9999_git20230719
|
|
pkgrel=1
|
|
# pureos/latest branch
|
|
_commit="084b40f29656945e4c12428a8e9a4d5310c0e56d"
|
|
pkgdesc="The GTK+ Toolkit (v3)"
|
|
url="https://www.gtk.org/"
|
|
install="$pkgname.post-install $pkgname.post-upgrade $pkgname.post-deinstall"
|
|
arch="all"
|
|
license="LGPL-2.1-or-later"
|
|
options="!check" # Most glade tests fail :c
|
|
subpackages="$pkgname-demo $pkgname-dev $pkgname-lang $pkgname-dbg"
|
|
depends="shared-mime-info gtk-update-icon-cache"
|
|
|
|
replaces="gtk+"
|
|
|
|
depends_dev="
|
|
at-spi2-core-dev
|
|
gdk-pixbuf-dev
|
|
glib-dev
|
|
libepoxy-dev
|
|
libxext-dev
|
|
libxi-dev
|
|
libxinerama-dev
|
|
wayland-protocols
|
|
wayland-libs-client
|
|
wayland-libs-cursor
|
|
libxkbcommon-dev
|
|
"
|
|
makedepends="
|
|
$depends_dev
|
|
cups-dev
|
|
expat-dev
|
|
gettext-dev
|
|
gnutls-dev
|
|
gobject-introspection-dev
|
|
libice-dev
|
|
tiff-dev
|
|
zlib-dev
|
|
cairo-dev
|
|
fontconfig-dev
|
|
pango-dev
|
|
wayland-dev
|
|
libx11-dev
|
|
libxcomposite-dev
|
|
libxcursor-dev
|
|
libxdamage-dev
|
|
libxfixes-dev
|
|
libxrandr-dev
|
|
meson
|
|
gtk-doc
|
|
iso-codes-dev
|
|
"
|
|
checkdepends="
|
|
xvfb-run
|
|
ibus
|
|
librsvg
|
|
gdk-pixbuf
|
|
"
|
|
source="https://source.puri.sm/Librem5/gtk/-/archive/$_commit/gtk-$_commit.tar.gz
|
|
gdk-wayland-Track-last-touch-serial-on-seat.patch
|
|
"
|
|
|
|
builddir="$srcdir/gtk-$_commit"
|
|
|
|
prepare() {
|
|
default_prepare
|
|
|
|
# Purism patches
|
|
grep "\.patch$" debian/patches/series \
|
|
| xargs -I {} -t -r -n1 patch -p1 -i debian/patches/{}
|
|
|
|
# Prevent unexpected downgrade: 3.90.99 is higher than Alpine's version
|
|
# (pma#694), but still passes the libportal check (pma#841)
|
|
sed -i "s/ version: '3.*',/ version: '3.90.99',/g" meson.build
|
|
sed -i "s/^gtk_interface_age = .*/gtk_interface_age = 90/g" meson.build
|
|
}
|
|
|
|
build() {
|
|
# postmarketOS specific: disable stuff that takes forever to (cross)compile:
|
|
# man=false, gtk_doc=false, tests=false
|
|
meson \
|
|
--prefix=/usr \
|
|
--sysconfdir=/etc \
|
|
--mandir=/usr/share/man \
|
|
--localstatedir=/var \
|
|
--buildtype=plain \
|
|
-Dman=false \
|
|
-Dgtk_doc=false \
|
|
-Dtests=false \
|
|
-Dbroadway_backend=true \
|
|
output
|
|
ninja -C output
|
|
}
|
|
|
|
check() {
|
|
xvfb-run ninja -C output test
|
|
}
|
|
|
|
package() {
|
|
DESTDIR="$pkgdir" ninja -C output install
|
|
|
|
# use gtk-update-icon-cache from gtk+2.0 for now
|
|
rm -f "$pkgdir"/usr/bin/gtk-update-icon-cache
|
|
rm -f "$pkgdir"/usr/share/man/man1/gtk-update-icon-cache.1
|
|
}
|
|
|
|
demo() {
|
|
pkgdesc="$pkgdesc (demonstration application)"
|
|
install -Dm755 "$pkgdir"/usr/bin/gtk3-demo \
|
|
"$pkgdir"/usr/bin/gtk3-widget-factory \
|
|
"$pkgdir"/usr/bin/gtk3-demo-application \
|
|
-t "$subpkgdir"/usr/bin
|
|
install -Dm644 "$pkgdir"/usr/share/gtk-3.0/gtkbuilder.rng \
|
|
-t "$subpkgdir"/usr/share/gtk-3.0
|
|
install -Dm644 "$pkgdir"/usr/share/glib-2.0/schemas/org.gtk.Demo.gschema.xml \
|
|
-t "$subpkgdir"/usr/share/glib-2.0/schemas
|
|
install -Dm644 "$pkgdir"/usr/share/applications/gtk3-widget-factory.desktop \
|
|
"$pkgdir"/usr/share/applications/gtk3-demo.desktop \
|
|
-t "$subpkgdir"/usr/share/applications
|
|
mkdir -p "$subpkgdir"/usr/share
|
|
mv "$pkgdir"/usr/share/icons "$subpkgdir"/usr/share
|
|
}
|
|
|
|
dev() {
|
|
replaces="gtk+-dev"
|
|
default_dev
|
|
}
|
|
|
|
doc() {
|
|
replaces="gtk+-doc"
|
|
default_doc
|
|
}
|
|
|
|
sha512sums="
|
|
8b9d14b4038a5e58b772bd2996adc6501fd025e5cf7973ef9fb8df2e1fea0bf7f9d4d71e3daa93418faf7759e35a390fe5d2a78a0a4c5829891955a615f41ea2 gtk-084b40f29656945e4c12428a8e9a4d5310c0e56d.tar.gz
|
|
4b8ecb3f1adb833fe4006d690c31d0d930687abc28f6033e6304c235227b6e86f6abaa2c7d015677d3fdecc628fa7d7d3927b48cfceec9ad144827274a176762 gdk-wayland-Track-last-touch-serial-on-seat.patch
|
|
"
|