diff options
author | xiota | 2023-07-09 11:09:56 -0700 |
---|---|---|
committer | xiota | 2023-07-09 14:24:01 -0700 |
commit | 7e73c72e1ba2867ca6d35c3e80ae2e05f509ad3d (patch) | |
tree | 7acfa611fa1f88efad72348bd5e140751e80b360 | |
parent | 10fb2c410dd07b1f496d966ba88da3f7334fc9b4 (diff) | |
download | aur-7e73c72e1ba2867ca6d35c3e80ae2e05f509ad3d.tar.gz |
4.11.4.r25
-rw-r--r-- | .SRCINFO | 183 | ||||
-rw-r--r-- | .gitignore | 12 | ||||
-rw-r--r-- | PKGBUILD | 246 | ||||
-rw-r--r-- | gtk-update-icon-cache.hook (renamed from gtk4-update-icon-cache.hook) | 0 | ||||
-rw-r--r-- | gtk-update-icon-cache.script (renamed from gtk4-update-icon-cache.script) | 2 | ||||
-rw-r--r-- | gtk4-querymodules.hook | 2 | ||||
-rw-r--r-- | gtk4-querymodules.script | 7 | ||||
-rw-r--r-- | settings.ini | 4 |
8 files changed, 265 insertions, 191 deletions
@@ -1,138 +1,121 @@ pkgbase = gtk4-git - pkgdesc = GObject-based multi-platform GUI toolkit (GIT Version) - pkgver = 4.7.1.r138.gaf6432aa67 + pkgdesc = GObject-based multi-platform GUI toolkit + pkgver = 4.11.4.r25.g1f3db35271 pkgrel = 1 - url = https://www.gtk.org/ + url = https://gitlab.gnome.org/GNOME/gtk arch = x86_64 license = LGPL - makedepends = gobject-introspection - makedepends = cmake - makedepends = git - makedepends = meson - makedepends = wayland-protocols - makedepends = sysprof - makedepends = python - makedepends = shaderc - makedepends = sassc - makedepends = glib2-docs - makedepends = pandoc - makedepends = python-toml - makedepends = python-jinja - makedepends = python-typogrify - makedepends = python-pygments - makedepends = libxslt + checkdepends = weston makedepends = docbook-xsl makedepends = gi-docgen + makedepends = git + makedepends = gobject-introspection + makedepends = meson makedepends = python-docutils - depends = at-spi2-atk + makedepends = python-gobject + makedepends = sassc + makedepends = shaderc + makedepends = wayland-protocols + depends = adwaita-icon-theme depends = cairo - depends = atk + depends = cantarell-fonts depends = dconf + depends = desktop-file-utils + depends = fontconfig + depends = fribidi + depends = gdk-pixbuf2 depends = glib2 + depends = graphene + depends = gst-plugins-bad-libs + depends = harfbuzz + depends = iso-codes + depends = libcloudproviders + depends = libcolord + depends = libcups + depends = libegl depends = libepoxy - depends = fribidi - depends = libxcomposite + depends = libgl + depends = libjpeg + depends = libpng + depends = librsvg + depends = libtiff + depends = libx11 depends = libxcursor + depends = libxdamage + depends = libxext + depends = libxfixes + depends = libxi depends = libxinerama depends = libxkbcommon depends = libxrandr - depends = mesa + depends = libxrender depends = pango - depends = graphene - depends = json-glib depends = shared-mime-info - depends = gdk-pixbuf2 - depends = colord - depends = libcups - depends = rest - depends = vulkan-icd-loader - depends = gst-plugins-bad-libs - depends = wayland - depends = vulkan-headers - depends = libcloudproviders - depends = libglvnd - depends = iso-codes - depends = harfbuzz depends = tracker3 - depends = libx11 - depends = libxrender - depends = libxi - depends = libxext - depends = libxdamage - depends = libxfixes - depends = fontconfig - depends = ffmpeg - depends = librsvg - depends = desktop-file-utils - depends = adwaita-icon-theme - depends = cantarell-fonts - source = git+https://gitlab.gnome.org/GNOME/gtk.git + depends = wayland + source = gtk::git+https://gitlab.gnome.org/GNOME/gtk.git + source = gtk-update-icon-cache.hook + source = gtk-update-icon-cache.script source = gtk4-querymodules.hook - source = gtk4-update-icon-cache.hook - source = gtk4-update-icon-cache.script - source = settings.ini - sha512sums = SKIP - sha512sums = 4adbad5b238d8326edb066de9f27bf07894137b4cb9b8a38325b80a89f928fce89c268b2270cf8bc6ca4cf311f0674bf1a756e0e28f59771e694559e1a551a6a - sha512sums = 6b7d8ecf0e98dcb35fac0c5dc96feb4d66c060c4a19801eac385827a601ae430223b3731d0de0845b0cae50e8169a95b1c13357281ca5a7c2c1ca1930163cad9 - sha512sums = 05929a7816b0fb45918850d172a375a2e6915a75db879fcc2fbe3b58864e76cc50a7767645a545f48b0d15417f30d1b205a77cfd6396a66df49b28f846bf5bbb - sha512sums = 1642d77622d61234e316e8fcbc803a6a5556c606e37e56aa5981ef2f2df85bfa959c31b5d1bff248b340760e1178281cb0d7abdf540c5f7d4b62cb383a67c685 + source = gtk4-querymodules.script + sha256sums = SKIP + sha256sums = 2d435e3bec8b79b533f00f6d04decb1d7c299c6e89b5b175f20be0459f003fe8 + sha256sums = f1d3a0dbfd82f7339301abecdbe5f024337919b48bd0e09296bb0e79863b2541 + sha256sums = a5074ffc057a3041a4f851b4b4674cfc21f3cb9cc90c5414c3e91816a5d205e9 + sha256sums = 92d08db5aa30bda276bc3d718e7ff9dd01dc40dcab45b359182dcc290054e24e pkgname = gtk4-git - depends = at-spi2-atk + depends = adwaita-icon-theme depends = cairo - depends = atk + depends = cantarell-fonts depends = dconf + depends = desktop-file-utils + depends = fontconfig + depends = fribidi + depends = gdk-pixbuf2 depends = glib2 + depends = graphene + depends = gst-plugins-bad-libs + depends = harfbuzz + depends = iso-codes + depends = libcloudproviders + depends = libcolord + depends = libcups + depends = libegl depends = libepoxy - depends = fribidi - depends = libxcomposite + depends = libgl + depends = libjpeg + depends = libpng + depends = librsvg + depends = libtiff + depends = libx11 depends = libxcursor + depends = libxdamage + depends = libxext + depends = libxfixes + depends = libxi depends = libxinerama depends = libxkbcommon depends = libxrandr - depends = mesa + depends = libxrender depends = pango - depends = graphene - depends = json-glib depends = shared-mime-info - depends = gdk-pixbuf2 - depends = colord - depends = libcups - depends = rest - depends = vulkan-icd-loader - depends = gst-plugins-bad-libs - depends = wayland - depends = vulkan-headers - depends = libcloudproviders - depends = libglvnd - depends = iso-codes - depends = harfbuzz depends = tracker3 - depends = libx11 - depends = libxrender - depends = libxi - depends = libxext - depends = libxdamage - depends = libxfixes - depends = fontconfig - depends = ffmpeg - depends = librsvg - depends = desktop-file-utils - depends = adwaita-icon-theme - depends = cantarell-fonts - depends = gtk-update-icon-cache-git - provides = gtk4 - provides = pango - provives = gtk4-demos - conflicts = gtk4 - conflicts = pango - conflicts = gtk4-demos + depends = wayland + depends = gtk-update-icon-cache + optdepends = evince: Default print preview command + provides = libgtk-4.so + +pkgname = gtk4-demos-git + pkgdesc = GObject-based multi-platform GUI toolkit (demo applications) + depends = gtk4 + +pkgname = gtk4-docs-git + pkgdesc = GObject-based multi-platform GUI toolkit (documentation) + depends = pkgname = gtk-update-icon-cache-git pkgdesc = GTK icon cache updater depends = gdk-pixbuf2 depends = librsvg depends = hicolor-icon-theme - provides = gtk-update-icon-cache - conflicts = gtk-update-icon-cache - diff --git a/.gitignore b/.gitignore index 8499506bf37f..018a3de08144 100644 --- a/.gitignore +++ b/.gitignore @@ -1,8 +1,4 @@ -gtk/ -pkg/ -src/ -logs/ -*.zst -*.tar -*.log -*.xz +* +!PKGBUILD +!.SRCINFO +!.gitignore @@ -1,100 +1,192 @@ -# Maintainer: Syboxez Blank <@Syboxez:matrix.org> -pkgbase=gtk4-git -pkgname=(gtk4-git gtk-update-icon-cache-git) -pkgver=4.7.1.r138.gaf6432aa67 +# Maintainer: +# Contributor: Jan Alexander Steffens (heftig) <heftig@archlinux.org> +# Contributor: Syboxez Blank <@Syboxez:matrix.org> + +_gitname="gtk" +_pkgbase="gtk4" +_pkgname=( + gtk4 + gtk4-demos + gtk4-docs + gtk-update-icon-cache +) + +pkgbase="$_pkgbase-git" +for i in ${_pkgname[@]} ; do + pkgname+=("$i-git") +done + +pkgver=4.11.4.r25.g1f3db35271 pkgrel=1 -pkgdesc="GObject-based multi-platform GUI toolkit (GIT Version)" -arch=('x86_64') -url="https://www.gtk.org/" -license=('LGPL') -depends=('at-spi2-atk' 'cairo' 'atk' 'dconf' 'glib2' 'libepoxy' 'fribidi' - 'libxcomposite' 'libxcursor' 'libxinerama' 'libxkbcommon' 'libxrandr' 'mesa' - 'pango' 'graphene' 'json-glib' 'shared-mime-info' 'gdk-pixbuf2' 'colord' - 'libcups' 'rest' 'vulkan-icd-loader' 'gst-plugins-bad-libs' 'wayland' - 'vulkan-headers' 'libcloudproviders' 'libglvnd' 'iso-codes' 'harfbuzz' - 'tracker3' 'libx11' 'libxrender' 'libxi' 'libxext' 'libxdamage' 'libxfixes' - 'fontconfig' 'ffmpeg' 'librsvg' 'desktop-file-utils' 'adwaita-icon-theme' - 'cantarell-fonts') -makedepends=('gobject-introspection' 'cmake' 'git' 'meson' 'wayland-protocols' - 'sysprof' 'python' 'shaderc' 'sassc' 'glib2-docs' 'pandoc' 'python-toml' - 'python-jinja' 'python-typogrify' 'python-pygments' 'libxslt' 'docbook-xsl' - 'gi-docgen' 'python-docutils') -source=('git+https://gitlab.gnome.org/GNOME/gtk.git' - 'gtk4-querymodules.hook' - 'gtk4-update-icon-cache.hook' - 'gtk4-update-icon-cache.script' - 'settings.ini') -sha512sums=('SKIP' - '4adbad5b238d8326edb066de9f27bf07894137b4cb9b8a38325b80a89f928fce89c268b2270cf8bc6ca4cf311f0674bf1a756e0e28f59771e694559e1a551a6a' - '6b7d8ecf0e98dcb35fac0c5dc96feb4d66c060c4a19801eac385827a601ae430223b3731d0de0845b0cae50e8169a95b1c13357281ca5a7c2c1ca1930163cad9' - '05929a7816b0fb45918850d172a375a2e6915a75db879fcc2fbe3b58864e76cc50a7767645a545f48b0d15417f30d1b205a77cfd6396a66df49b28f846bf5bbb' - '1642d77622d61234e316e8fcbc803a6a5556c606e37e56aa5981ef2f2df85bfa959c31b5d1bff248b340760e1178281cb0d7abdf540c5f7d4b62cb383a67c685') -pkgver() { - cd gtk +pkgdesc="GObject-based multi-platform GUI toolkit" +url="https://gitlab.gnome.org/GNOME/gtk" +arch=(x86_64) +license=(LGPL) +depends=( + adwaita-icon-theme + cairo + cantarell-fonts + dconf + desktop-file-utils + fontconfig + fribidi + gdk-pixbuf2 + glib2 + graphene + gst-plugins-bad-libs + harfbuzz + iso-codes + libcloudproviders + libcolord + libcups + libegl + libepoxy + libgl + libjpeg + libpng + librsvg + libtiff + libx11 + libxcursor + libxdamage + libxext + libxfixes + libxi + libxinerama + libxkbcommon + libxrandr + libxrender + pango + shared-mime-info + tracker3 + wayland +) +makedepends=( + docbook-xsl + gi-docgen + git + gobject-introspection + meson + python-docutils + python-gobject + sassc + shaderc + wayland-protocols +) +checkdepends=(weston) - printf "%s.r%s.g%s" "$(grep -m1 'version' meson.build | sed -r 's/([^0-9]*([0-9.]+)).*/\2/')" \ - "$(git describe --tags --long | cut -d '-' -f 2)" \ - "$(git rev-parse --short HEAD)" -} +source=( + "$_gitname"::"git+https://gitlab.gnome.org/GNOME/gtk.git" + gtk-update-icon-cache.{hook,script} + gtk4-querymodules.{hook,script} +) +sha256sums=( + 'SKIP' + '2d435e3bec8b79b533f00f6d04decb1d7c299c6e89b5b175f20be0459f003fe8' + 'f1d3a0dbfd82f7339301abecdbe5f024337919b48bd0e09296bb0e79863b2541' + 'a5074ffc057a3041a4f851b4b4674cfc21f3cb9cc90c5414c3e91816a5d205e9' + '92d08db5aa30bda276bc3d718e7ff9dd01dc40dcab45b359182dcc290054e24e' +) -prepare() { - cd gtk +pkgver() { + cd "$srcdir/$_gitname" + git describe --long --tags | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g' } build() { - CFLAGS+=" -DG_ENABLE_DEBUG -DG_DISABLE_CAST_CHECKS" - # NOTE: We cannot use arch-meson _yet_ due to building with the gtk_doc flag - # as gi-docgen's official upstream guidance is to include the dep. as - # a subproject (which arch-meson disallows). See: - # https://gitlab.gnome.org/ebassi/gi-docgen/-/issues/60#note_1060533 - meson setup --prefix /usr \ - --libexecdir lib \ - --sbindir bin \ - --buildtype plain \ - --auto-features enabled \ - -Db_lto=true \ - -Db_pie=true \ - -Dbroadway-backend=true \ - -Dcloudproviders=enabled \ - -Dsysprof=enabled \ - -Dtracker=enabled \ - -Dcolord=enabled \ - -Dgtk_doc=true \ - -Dman-pages=true \ - -Dvulkan=enabled \ - -Dwayland-backend=true \ - gtk build + local meson_options=( + -D broadway-backend=true + -D cloudproviders=enabled + -D colord=enabled + -D gtk_doc=true + -D man-pages=true + -D tracker=enabled + ) + CFLAGS+=" -DG_DISABLE_CAST_CHECKS" + arch-meson "$_gitname" build "${meson_options[@]}" meson compile -C build - ninja -C build +} + +check() ( + export XDG_RUNTIME_DIR="$PWD/runtime-dir" WAYLAND_DISPLAY=wayland-5 + + mkdir -p -m 700 "$XDG_RUNTIME_DIR" + weston --backend=headless-backend.so --socket=$WAYLAND_DISPLAY --idle-time=0 & + _w=$! + + trap "kill $_w; wait" EXIT + + meson test -C build --print-errorlogs || true +) + +_pick() { + local p="$1" f d; shift + for f; do + d="$srcdir/$p/${f#$pkgdir/}" + mkdir -p "$(dirname "$d")" + mv "$f" "$d" + rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")" + done } package_gtk4-git() { - depends+=('gtk-update-icon-cache-git') - provides+=('gtk4' 'pango' 'gtk4-demos') - conflicts=('gtk4' 'pango' 'gtk4-demos') + depends+=(gtk-update-icon-cache) + optdepends=('evince: Default print preview command') + provides=(libgtk-4.so) - DESTDIR="$pkgdir" meson install -C build + meson install -C build --destdir "$pkgdir" + + install -Dm644 /dev/stdin "$pkgdir/usr/share/gtk-4.0/settings.ini" <<END +[Settings] +gtk-icon-theme-name = Adwaita +gtk-theme-name = Adwaita +gtk-font-name = Cantarell 11 +END + + install -Dt "$pkgdir/usr/share/libalpm/hooks" -m644 gtk4-querymodules.hook + install -D gtk4-querymodules.script "$pkgdir/usr/share/libalpm/scripts/gtk4-querymodules" + + cd "$pkgdir" + + _pick demo usr/bin/gtk4-{demo,demo-application,icon-browser,node-editor,print-editor,widget-factory} + _pick demo usr/share/applications/org.gtk.{Demo4,IconBrowser4,PrintEditor4,WidgetFactory4,gtk4.NodeEditor}.desktop + _pick demo usr/share/glib-2.0/schemas/org.gtk.Demo4.gschema.xml + _pick demo usr/share/icons/hicolor/*/apps/org.gtk.{Demo4,IconBrowser4,PrintEditor4,WidgetFactory4,gtk4.NodeEditor}[-.]* + _pick demo usr/share/man/man1/gtk4-{demo,demo-application,icon-browser,node-editor,widget-factory}.1 + _pick demo usr/share/metainfo/org.gtk.{Demo4,IconBrowser4,PrintEditor4,WidgetFactory4,gtk4.NodeEditor}.appdata.xml + + _pick docs usr/share/doc + + # Built by GTK 4, shared with GTK 3 + _pick guic usr/bin/gtk4-update-icon-cache + _pick guic usr/share/man/man1/gtk4-update-icon-cache.1 - install -Dm 644 "settings.ini" "$pkgdir"/usr/share/gtk-4.0/settings.ini - install -Dm 644 "gtk4-querymodules.hook" "$pkgdir"/usr/share/libalpm/hooks/gtk4-querymodules.hook - # gtk-update-icon-cache us also used by other toolkits - mkdir -p guic/usr/{bin,share/man/man1} - mv {"$pkgdir",guic}/usr/bin/gtk4-update-icon-cache - mv {"$pkgdir",guic}/usr/share/man/man1/gtk4-update-icon-cache.1 +} + +package_gtk4-demos-git() { + pkgdesc+=" (demo applications)" + depends=(gtk4) + mv demo/* "$pkgdir" +} + +package_gtk4-docs-git() { + pkgdesc+=" (documentation)" + depends=() + mv docs/* "$pkgdir" } package_gtk-update-icon-cache-git() { pkgdesc="GTK icon cache updater" - depends=('gdk-pixbuf2' 'librsvg' 'hicolor-icon-theme') - conflicts=('gtk-update-icon-cache') - provides+=('gtk-update-icon-cache') + depends=(gdk-pixbuf2 librsvg hicolor-icon-theme) - mv -t "$pkgdir" guic/* + mv guic/* "$pkgdir" ln -s gtk4-update-icon-cache "$pkgdir/usr/bin/gtk-update-icon-cache" ln -s gtk4-update-icon-cache.1 "$pkgdir/usr/share/man/man1/gtk-update-icon-cache.1" - install -Dm 644 "gtk4-update-icon-cache.hook" "$pkgdir"/usr/share/libalpm/hooks/gtk-update-icon-cache.hook - install -Dm 755 "gtk4-update-icon-cache.script" "$pkgdir"/usr/share/libalpm/scripts/gtk-update-icon-cache + install -Dt "$pkgdir/usr/share/libalpm/hooks" -m644 gtk-update-icon-cache.hook + install -D gtk-update-icon-cache.script "$pkgdir/usr/share/libalpm/scripts/gtk-update-icon-cache" } + +# vim:set sw=2 sts=-1 et: diff --git a/gtk4-update-icon-cache.hook b/gtk-update-icon-cache.hook index 758a62187a9b..758a62187a9b 100644 --- a/gtk4-update-icon-cache.hook +++ b/gtk-update-icon-cache.hook diff --git a/gtk4-update-icon-cache.script b/gtk-update-icon-cache.script index 608b1ea38db5..ee0f1d12d0b7 100644 --- a/gtk4-update-icon-cache.script +++ b/gtk-update-icon-cache.script @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/bin/bash while read -r f; do if [[ -e ${f}index.theme ]]; then diff --git a/gtk4-querymodules.hook b/gtk4-querymodules.hook index 2821d7472534..88aef3ed6d70 100644 --- a/gtk4-querymodules.hook +++ b/gtk4-querymodules.hook @@ -8,5 +8,5 @@ Target = usr/lib/gtk-4.0/4.0.0/*/ [Action] Description = Updating GTK4 module cache... When = PostTransaction -Exec = /usr/share/libalpm/scripts/gio-querymodules +Exec = /usr/share/libalpm/scripts/gtk4-querymodules NeedsTargets diff --git a/gtk4-querymodules.script b/gtk4-querymodules.script new file mode 100644 index 000000000000..5c218775790a --- /dev/null +++ b/gtk4-querymodules.script @@ -0,0 +1,7 @@ +#!/bin/bash + +while read -r d; do + [[ -d $d ]] || continue + gio-querymodules "$d" + rmdir --ignore-fail-on-non-empty "$d" +done diff --git a/settings.ini b/settings.ini deleted file mode 100644 index 6a0643bfa67e..000000000000 --- a/settings.ini +++ /dev/null @@ -1,4 +0,0 @@ -[Settings] -gtk-icon-theme-name = gnome -gtk-theme-name = Adwaita -gtk-font-name = Cantarell 11 |