summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO62
-rw-r--r--0001-glib-compile-schemas-Remove-noisy-deprecation-warnin.patch40
-rw-r--r--0002-glocalfileinfo-add-a-dbus-thumbnail-generator.patch (renamed from glib-thumbnailer.patch)151
-rw-r--r--PKGBUILD119
-rw-r--r--gio-querymodules.hook2
-rw-r--r--glib-compile-schemas.hook2
-rw-r--r--noisy-glib-compile-schemas.diff24
7 files changed, 254 insertions, 146 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 285550352d84..2f9a9b54ce16 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,41 +1,55 @@
pkgbase = glib2-patched-thumbnailer
pkgdesc = GLib2 patched with ahodesuka's thumbnailer patch.
- pkgver = 2.60.7
- pkgrel = 1
- url = https://gist.github.com/Dudemanguy911/d199759b46a79782cc1b301649dec8a5
+ pkgver = 2.80.0
+ pkgrel = 2
+ url = https://gist.github.com/Dudemanguy/d199759b46a79782cc1b301649dec8a5
arch = x86_64
- license = LGPL2.1
+ license = LGPL
checkdepends = desktop-file-utils
+ checkdepends = glib2
+ makedepends = dbus
makedepends = gettext
- makedepends = gtk-doc
- makedepends = shared-mime-info
- makedepends = python
- makedepends = libelf
makedepends = git
- makedepends = util-linux
+ makedepends = gi-docgen
+ makedepends = gobject-introspection
+ makedepends = libelf
makedepends = meson
- makedepends = dbus
- depends = pcre
+ makedepends = python
+ makedepends = python-docutils
+ makedepends = shared-mime-info
+ makedepends = util-linux
+ depends = pcre2
depends = libffi
- depends = libutil-linux
+ depends = util-linux-libs
depends = zlib
depends = tumbler
+ depends = libsysprof-capture
+ depends = libmount.so
+ depends = libffi.so
optdepends = python: gdbus-codegen, glib-genmarshal, glib-mkenums, gtester-report
optdepends = libelf: gresource inspection tool
- provides = glib2=2.60.7
+ optdepends = gvfs: most gio functionality
+ provides = glib2=2.80.0
+ provides = libglib-2.0.so
+ provides = libgio-2.0.so
+ provides = libgirepository-2.0.so
+ provides = libgmodule-2.0.so
+ provides = libgobject-2.0.so
+ provides = libgthread-2.0.so
conflicts = glib2
options = !docs
- options = !emptydirs
- source = git+https://gitlab.gnome.org/GNOME/glib.git#commit=a7da87e3e8dad5e53b2acf10617485d137a44ca5
- source = noisy-glib-compile-schemas.diff
- source = glib-compile-schemas.hook
+ options = staticlibs
+ source = git+https://gitlab.gnome.org/GNOME/glib.git#commit=763cc3b238398614c20069fd67642730e3a6519b
+ source = git+https://gitlab.gnome.org/GNOME/gvdb.git
+ source = 0001-glib-compile-schemas-Remove-noisy-deprecation-warnin.patch
+ source = 0002-glocalfileinfo-add-a-dbus-thumbnail-generator.patch
source = gio-querymodules.hook
- source = glib-thumbnailer.patch
- sha256sums = SKIP
- sha256sums = 81a4df0b638730cffb7fa263c04841f7ca6b9c9578ee5045db6f30ff0c3fc531
- sha256sums = e1123a5d85d2445faac33f6dae1085fdd620d83279a4e130a83fe38db52b62b3
- sha256sums = 5ba204a2686304b1454d401a39a9d27d09dd25e4529664e3fd565be3d439f8b6
- sha256sums = 9ea789788962a941af83b99949ddc21d7d19d820f2170f58691ca83e53afb158
+ source = glib-compile-schemas.hook
+ b2sums = cc3a6a7a14fef1aabc08d3bdfe98f66e3ecf3591ac054d83aa9404c8c9cd72e690a4c26c16934700d067bb2cb3d58730387482032cd9ffa04b041869426165ba
+ b2sums = SKIP
+ b2sums = 94c73ca7070c239494873dd52d6ee09382bbb5b1201f7afd737cfa140b1a2fb0744b2c2831baf3943d1d072550c35888d21ce6f19f89481ff9d1a60d9a0b30e0
+ b2sums = 5eed57eccc15fa9994228815874200135e9ee682b9bd718dae4b486eb3a65f2efb8121f45afedd4dd33208297738b5f1f489cb9a798a896540a505b32a37cc08
+ b2sums = 14c9211c0557f6d8d9a914f1b18b7e0e23f79f4abde117cb03ab119b95bf9fa9d7a712aa0a29beb266468aeb352caa3a9e4540503cfc9fe0bbaf764371832a96
+ b2sums = d30d349b4cb4407839d9074ce08f5259b8a5f3ca46769aabc621f17d15effdb89c4bf19bd23603f6df3d59f8d1adaded0f4bacd0333afcab782f2d048c882858
pkgname = glib2-patched-thumbnailer
-
diff --git a/0001-glib-compile-schemas-Remove-noisy-deprecation-warnin.patch b/0001-glib-compile-schemas-Remove-noisy-deprecation-warnin.patch
new file mode 100644
index 000000000000..0a0b7f043247
--- /dev/null
+++ b/0001-glib-compile-schemas-Remove-noisy-deprecation-warnin.patch
@@ -0,0 +1,40 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
+Date: Fri, 7 Jan 2022 18:59:10 +0000
+Subject: [PATCH] glib-compile-schemas: Remove noisy deprecation warnings
+
+While the warnings are useful for developers, Arch Linux users also see
+them when glib-compile-schemas gets run after upgrades, where they just
+add noise.
+
+The alternative to this patch would be redirecting the compiler's stderr
+to /dev/null, but that might also suppress more useful errors or
+warnings we want users to see.
+---
+ gio/glib-compile-schemas.c | 13 -------------
+ 1 file changed, 13 deletions(-)
+
+diff --git a/gio/glib-compile-schemas.c b/gio/glib-compile-schemas.c
+index 04ef40457eba..e791ce254454 100644
+--- a/gio/glib-compile-schemas.c
++++ b/gio/glib-compile-schemas.c
+@@ -1232,19 +1232,6 @@ parse_state_start_schema (ParseState *state,
+ return;
+ }
+
+- if (path && (g_str_has_prefix (path, "/apps/") ||
+- g_str_has_prefix (path, "/desktop/") ||
+- g_str_has_prefix (path, "/system/")))
+- {
+- gchar *message = NULL;
+- message = g_strdup_printf (_("Warning: Schema “%s” has path “%s”. "
+- "Paths starting with "
+- "“/apps/”, “/desktop/” or “/system/” are deprecated."),
+- id, path);
+- g_printerr ("%s\n", message);
+- g_free (message);
+- }
+-
+ state->schema_state = schema_state_new (path, gettext_domain,
+ extends, extends_name, list_of);
+
diff --git a/glib-thumbnailer.patch b/0002-glocalfileinfo-add-a-dbus-thumbnail-generator.patch
index 0d00eafecf31..55167c699d43 100644
--- a/glib-thumbnailer.patch
+++ b/0002-glocalfileinfo-add-a-dbus-thumbnail-generator.patch
@@ -1,9 +1,18 @@
+From 01ce72fb8086fb6984e4409739a821408045612e Mon Sep 17 00:00:00 2001
+From: Dudemanguy <random342@airmail.cc>
+Date: Sat, 24 Feb 2024 15:07:31 -0600
+Subject: [PATCH] glocalfileinfo: add a dbus thumbnail generator
+
+---
+ gio/glocalfileinfo.c | 186 +++++++++++++++++++++++++++++++++++++++++--
+ 1 file changed, 179 insertions(+), 7 deletions(-)
+
diff --git a/gio/glocalfileinfo.c b/gio/glocalfileinfo.c
-index f46d4d6db..20b57f741 100644
+index 4f51427f5..5e1698da0 100644
--- a/gio/glocalfileinfo.c
+++ b/gio/glocalfileinfo.c
-@@ -64,6 +64,12 @@
- #endif
+@@ -68,6 +68,12 @@
+ #include "glib-private.h"
#include "thumbnail-verify.h"
+#ifdef HAVE_DBUS1
@@ -15,25 +24,25 @@ index f46d4d6db..20b57f741 100644
#ifdef G_OS_WIN32
#include <windows.h>
-@@ -101,6 +107,16 @@ struct ThumbMD5Context {
+@@ -109,6 +115,16 @@ struct ThumbMD5Context {
unsigned char in[64];
};
+#ifdef FREEDESKTOP_THUMBNAILER
+typedef struct
+{
-+ GMainLoop *mainloop;
-+ guint32 handle;
-+ gboolean success;
-+ const char *error_message;
++ GMainLoop *mainloop;
++ guint32 handle;
++ gboolean success;
++ const char *error_message;
+} ThumbnailerState;
+#endif /* FREEDESKTOP_THUMBNAILER */
+
#ifndef G_OS_WIN32
typedef struct {
-@@ -1307,16 +1323,132 @@ get_content_type (const char *basename,
-
+@@ -1419,18 +1435,137 @@ get_thumbnail_dirname_from_size (ThumbnailSize size)
+ g_return_val_if_reached (NULL);
}
+#ifdef FREEDESKTOP_THUMBNAILER
@@ -52,13 +61,11 @@ index f46d4d6db..20b57f741 100644
+ if (g_strcmp0 (signal_name, "Error") == 0)
+ {
+ g_variant_get (parameters, "(uasis)", &signal_handle, NULL, NULL, &state->error_message);
-+ //g_assert (signal_handle == state->handle);
+ state->success = FALSE;
+ }
+ else if (g_strcmp0 (signal_name, "Ready") == 0)
+ {
+ g_variant_get (parameters, "(u^as)", &signal_handle, &uris);
-+ //g_assert (signal_handle == state->handle);
+ state->success = TRUE;
+ }
+ else if (g_strcmp0 (signal_name, "Finished") == 0)
@@ -90,8 +97,8 @@ index f46d4d6db..20b57f741 100644
+ NULL,
+ NULL,
+ &error);
-+ g_assert_no_error (error);
+
++ g_main_context_push_thread_default (thread_context);
+ proxy = g_dbus_proxy_new_sync (connection,
+ G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES,
+ NULL,
@@ -103,8 +110,7 @@ index f46d4d6db..20b57f741 100644
+ if (!proxy)
+ {
+ g_warning ("generate_thumbnail (): g_dbus_proxy_new_sync failed");
-+ g_main_loop_unref (state.mainloop);
-+ return FALSE;
++ goto done;
+ }
+ else
+ g_debug("generate_thumbnail (): connected to D-Bus");
@@ -112,9 +118,8 @@ index f46d4d6db..20b57f741 100644
+ g_signal_connect (G_OBJECT (proxy), "g-signal",
+ G_CALLBACK (thumbnailer_signal_cb), &state);
+
-+ g_main_context_push_thread_default (thread_context);
+ result = g_dbus_proxy_call_sync (proxy,
-+ "Queue",
++ "Queue",
+ g_variant_new("(^as^asssu)",
+ uris,
+ mime_types,
@@ -128,14 +133,20 @@ index f46d4d6db..20b57f741 100644
+ if (!result || error)
+ {
+ g_warning ("generate_thumbnail (): g_dbus_proxy_call_sync() failed: %s", error->message);
-+ return FALSE;
++ goto done;
+ }
+ g_variant_get (result, "(u)", &(state.handle));
+ g_variant_unref (result);
+ // block until the loop is terminated in thumbnailer_signal_cb ()
+ g_main_loop_run (state.mainloop);
-+ g_object_unref (proxy);
-+ g_object_unref (connection);
++
++done:
++ if (proxy)
++ g_object_unref (proxy);
++
++ if (connection)
++ g_object_unref (connection);
++
+ g_main_loop_unref (state.mainloop);
+ g_main_context_pop_thread_default (thread_context);
+ g_main_context_unref (thread_context);
@@ -150,47 +161,41 @@ index f46d4d6db..20b57f741 100644
+}
+#endif /* FREEDESKTOP_THUMBNAILER */
+
++
/* @stat_buf is the pre-calculated result of stat(path), or %NULL if that failed. */
static void
get_thumbnail_attributes (const char *path,
GFileInfo *info,
-- const GLocalFileStat *stat_buf)
-+ const GLocalFileStat *stat_buf,
+ const GLocalFileStat *stat_buf,
+- ThumbnailSize size)
++ ThumbnailSize size,
+ gboolean generate)
{
GChecksum *checksum;
+ const char *dirname;
char *uri;
- char *filename;
+ char *filename = NULL;
char *basename;
+ const char *content_type;
-
- uri = g_filename_to_uri (path, NULL, NULL);
-
-@@ -1335,6 +1467,7 @@ get_thumbnail_attributes (const char *path,
- _g_file_info_set_attribute_byte_string_by_id (info, G_FILE_ATTRIBUTE_ID_THUMBNAIL_PATH, filename);
- _g_file_info_set_attribute_boolean_by_id (info, G_FILE_ATTRIBUTE_ID_THUMBNAIL_IS_VALID,
+ guint32 failed_attr_id;
+ guint32 is_valid_attr_id;
+ guint32 path_attr_id;
+@@ -1507,6 +1642,7 @@ get_thumbnail_attributes (const char *path,
+ _g_file_info_set_attribute_byte_string_by_id (info, path_attr_id, filename);
+ _g_file_info_set_attribute_boolean_by_id (info, is_valid_attr_id,
thumbnail_verify (filename, uri, stat_buf));
+ generate = FALSE;
}
else
{
-@@ -1348,6 +1481,7 @@ get_thumbnail_attributes (const char *path,
- _g_file_info_set_attribute_byte_string_by_id (info, G_FILE_ATTRIBUTE_ID_THUMBNAIL_PATH, filename);
- _g_file_info_set_attribute_boolean_by_id (info, G_FILE_ATTRIBUTE_ID_THUMBNAIL_IS_VALID,
+@@ -1521,9 +1657,31 @@ get_thumbnail_attributes (const char *path,
+ _g_file_info_set_attribute_boolean_by_id (info, failed_attr_id, TRUE);
+ _g_file_info_set_attribute_boolean_by_id (info, is_valid_attr_id,
thumbnail_verify (filename, uri, stat_buf));
+ generate = FALSE;
}
- else
- {
-@@ -1363,9 +1497,32 @@ get_thumbnail_attributes (const char *path,
- _g_file_info_set_attribute_boolean_by_id (info, G_FILE_ATTRIBUTE_ID_THUMBNAILING_FAILED, TRUE);
- _g_file_info_set_attribute_boolean_by_id (info, G_FILE_ATTRIBUTE_ID_THUMBNAIL_IS_VALID,
- thumbnail_verify (filename, uri, stat_buf));
-+ generate = FALSE;
- }
- }
}
-+
+
+ if (generate)
+ {
+#ifdef FREEDESKTOP_THUMBNAILER
@@ -198,16 +203,16 @@ index f46d4d6db..20b57f741 100644
+ if (content_type)
+ {
+ g_debug ("invoking Freedesktop Thumbnailer for %s (%s)", uri, content_type);
-+ if(generate_thumbnail (uri, content_type))
++ if (generate_thumbnail (uri, content_type))
+ {
+ /* Now that the thumbnail is generated, find it. */
-+ get_thumbnail_attributes (path, info, stat_buf, FALSE);
++ get_thumbnail_attributes (path, info, stat_buf, size, FALSE);
+ }
-+ else
++ /*else
+ {
+ _g_file_info_set_attribute_boolean_by_id (info, G_FILE_ATTRIBUTE_ID_THUMBNAILING_FAILED, TRUE);
+ _g_file_info_set_attribute_boolean_by_id (info, G_FILE_ATTRIBUTE_ID_THUMBNAIL_IS_VALID, FALSE);
-+ }
++ }*/
+ }
+#endif /* FREEDESKTOP_THUMBNAILER */
+ }
@@ -215,7 +220,7 @@ index f46d4d6db..20b57f741 100644
g_free (basename);
g_free (filename);
g_free (uri);
-@@ -1725,6 +1882,18 @@ _g_local_file_info_get (const char *basename,
+@@ -1914,6 +2072,18 @@ _g_local_file_info_get (const char *basename,
info = g_file_info_new ();
@@ -234,7 +239,7 @@ index f46d4d6db..20b57f741 100644
/* Make sure we don't set any unwanted attributes */
g_file_info_set_attribute_mask (info, attribute_matcher);
-@@ -1865,7 +2034,9 @@ _g_local_file_info_get (const char *basename,
+@@ -2049,7 +2219,9 @@ _g_local_file_info_get (const char *basename,
_g_file_attribute_matcher_matches_id (attribute_matcher,
G_FILE_ATTRIBUTE_ID_STANDARD_ICON) ||
_g_file_attribute_matcher_matches_id (attribute_matcher,
@@ -245,15 +250,51 @@ index f46d4d6db..20b57f741 100644
{
char *content_type = get_content_type (basename, path, stat_ok ? &statbuf : NULL, is_symlink, symlink_broken, flags, FALSE);
-@@ -1982,9 +2153,9 @@ _g_local_file_info_get (const char *basename,
+@@ -2165,7 +2337,7 @@ _g_local_file_info_get (const char *basename,
+ _g_file_attribute_matcher_matches_id (attribute_matcher,
G_FILE_ATTRIBUTE_ID_THUMBNAILING_FAILED))
{
- if (stat_ok)
-- get_thumbnail_attributes (path, info, &statbuf);
-+ get_thumbnail_attributes (path, info, &statbuf, TRUE);
- else
-- get_thumbnail_attributes (path, info, NULL);
-+ get_thumbnail_attributes (path, info, NULL, TRUE);
+- get_thumbnail_attributes (path, info, stat_ok ? &statbuf : NULL, THUMBNAIL_SIZE_AUTO);
++ get_thumbnail_attributes (path, info, stat_ok ? &statbuf : NULL, THUMBNAIL_SIZE_AUTO, TRUE);
+ }
+
+ if (_g_file_attribute_matcher_matches_id (attribute_matcher,
+@@ -2175,7 +2347,7 @@ _g_local_file_info_get (const char *basename,
+ _g_file_attribute_matcher_matches_id (attribute_matcher,
+ G_FILE_ATTRIBUTE_ID_THUMBNAILING_FAILED_NORMAL))
+ {
+- get_thumbnail_attributes (path, info, stat_ok ? &statbuf : NULL, THUMBNAIL_SIZE_NORMAL);
++ get_thumbnail_attributes (path, info, stat_ok ? &statbuf : NULL, THUMBNAIL_SIZE_NORMAL, TRUE);
+ }
+
+ if (_g_file_attribute_matcher_matches_id (attribute_matcher,
+@@ -2185,7 +2357,7 @@ _g_local_file_info_get (const char *basename,
+ _g_file_attribute_matcher_matches_id (attribute_matcher,
+ G_FILE_ATTRIBUTE_ID_THUMBNAILING_FAILED_LARGE))
+ {
+- get_thumbnail_attributes (path, info, stat_ok ? &statbuf : NULL, THUMBNAIL_SIZE_LARGE);
++ get_thumbnail_attributes (path, info, stat_ok ? &statbuf : NULL, THUMBNAIL_SIZE_LARGE, TRUE);
+ }
+
+ if (_g_file_attribute_matcher_matches_id (attribute_matcher,
+@@ -2195,7 +2367,7 @@ _g_local_file_info_get (const char *basename,
+ _g_file_attribute_matcher_matches_id (attribute_matcher,
+ G_FILE_ATTRIBUTE_ID_THUMBNAILING_FAILED_XLARGE))
+ {
+- get_thumbnail_attributes (path, info, stat_ok ? &statbuf : NULL, THUMBNAIL_SIZE_XLARGE);
++ get_thumbnail_attributes (path, info, stat_ok ? &statbuf : NULL, THUMBNAIL_SIZE_XLARGE, TRUE);
+ }
+
+ if (_g_file_attribute_matcher_matches_id (attribute_matcher,
+@@ -2205,7 +2377,7 @@ _g_local_file_info_get (const char *basename,
+ _g_file_attribute_matcher_matches_id (attribute_matcher,
+ G_FILE_ATTRIBUTE_ID_THUMBNAILING_FAILED_XXLARGE))
+ {
+- get_thumbnail_attributes (path, info, stat_ok ? &statbuf : NULL, THUMBNAIL_SIZE_XXLARGE);
++ get_thumbnail_attributes (path, info, stat_ok ? &statbuf : NULL, THUMBNAIL_SIZE_XXLARGE, TRUE);
}
vfs = g_vfs_get_default ();
+--
+2.43.2
+
diff --git a/PKGBUILD b/PKGBUILD
index 1982301a9bca..f299339006b1 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,70 +1,107 @@
-# Maintainer: dudemanguy <random342@airmail.cc>
+# Maintainer: Dudemanguy <random342@airmail.cc>
# Contributor: Vaporeon <vaporeon@vaporeon.io>
+# Contributor: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
# Contributor: Jan de Groot <jgc@archlinux.org>
pkgname=glib2-patched-thumbnailer
-pkgver=2.60.7
-pkgrel=1
+pkgver=2.80.0
+pkgrel=2
pkgdesc="GLib2 patched with ahodesuka's thumbnailer patch."
-url="https://gist.github.com/Dudemanguy911/d199759b46a79782cc1b301649dec8a5"
+url="https://gist.github.com/Dudemanguy/d199759b46a79782cc1b301649dec8a5"
arch=(x86_64)
-provides=("glib2=$pkgver")
+provides=(glib2=$pkgver libg{lib,io,irepository,module,object,thread}-2.0.so)
conflicts=('glib2')
-depends=(pcre libffi libutil-linux zlib tumbler)
-makedepends=(gettext gtk-doc shared-mime-info python libelf git util-linux meson dbus)
-checkdepends=(desktop-file-utils)
+depends=(pcre2 libffi util-linux-libs zlib tumbler libsysprof-capture libmount.so libffi.so)
+makedepends=(
+ dbus
+ gettext
+ git
+ gi-docgen
+ gobject-introspection
+ libelf
+ meson
+ python
+ python-docutils
+ shared-mime-info
+ util-linux
+)
+checkdepends=(desktop-file-utils glib2)
optdepends=('python: gdbus-codegen, glib-genmarshal, glib-mkenums, gtester-report'
- 'libelf: gresource inspection tool')
-options=('!docs' '!emptydirs')
-license=(LGPL2.1)
-_commit=a7da87e3e8dad5e53b2acf10617485d137a44ca5 # tags/2.60.7^0
-source=("git+https://gitlab.gnome.org/GNOME/glib.git#commit=$_commit"
- noisy-glib-compile-schemas.diff
- glib-compile-schemas.hook
- gio-querymodules.hook
- glib-thumbnailer.patch)
-sha256sums=('SKIP'
- '81a4df0b638730cffb7fa263c04841f7ca6b9c9578ee5045db6f30ff0c3fc531'
- 'e1123a5d85d2445faac33f6dae1085fdd620d83279a4e130a83fe38db52b62b3'
- '5ba204a2686304b1454d401a39a9d27d09dd25e4529664e3fd565be3d439f8b6'
- '9ea789788962a941af83b99949ddc21d7d19d820f2170f58691ca83e53afb158')
+ 'libelf: gresource inspection tool'
+ 'gvfs: most gio functionality')
+options=(!docs staticlibs)
+license=(LGPL)
+_commit=763cc3b238398614c20069fd67642730e3a6519b # tags/2.80.0^0
+source=(
+ "git+https://gitlab.gnome.org/GNOME/glib.git#commit=$_commit"
+ "git+https://gitlab.gnome.org/GNOME/gvdb.git"
+ 0001-glib-compile-schemas-Remove-noisy-deprecation-warnin.patch
+ 0002-glocalfileinfo-add-a-dbus-thumbnail-generator.patch
+ gio-querymodules.hook
+ glib-compile-schemas.hook
+)
+b2sums=('cc3a6a7a14fef1aabc08d3bdfe98f66e3ecf3591ac054d83aa9404c8c9cd72e690a4c26c16934700d067bb2cb3d58730387482032cd9ffa04b041869426165ba'
+ 'SKIP'
+ '94c73ca7070c239494873dd52d6ee09382bbb5b1201f7afd737cfa140b1a2fb0744b2c2831baf3943d1d072550c35888d21ce6f19f89481ff9d1a60d9a0b30e0'
+ '5eed57eccc15fa9994228815874200135e9ee682b9bd718dae4b486eb3a65f2efb8121f45afedd4dd33208297738b5f1f489cb9a798a896540a505b32a37cc08'
+ '14c9211c0557f6d8d9a914f1b18b7e0e23f79f4abde117cb03ab119b95bf9fa9d7a712aa0a29beb266468aeb352caa3a9e4540503cfc9fe0bbaf764371832a96'
+ 'd30d349b4cb4407839d9074ce08f5259b8a5f3ca46769aabc621f17d15effdb89c4bf19bd23603f6df3d59f8d1adaded0f4bacd0333afcab782f2d048c882858')
pkgver() {
cd glib
- git describe --tags | sed 's/-/+/g'
+ git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g'
}
prepare() {
cd glib
# Suppress noise from glib-compile-schemas.hook
- patch -Np1 -i ../noisy-glib-compile-schemas.diff
+ git apply -3 ../0001-glib-compile-schemas-Remove-noisy-deprecation-warnin.patch
# Apply patch to generate thumbnails
- patch -Np1 -i ../glib-thumbnailer.patch
+ git apply -3 ../0002-glocalfileinfo-add-a-dbus-thumbnail-generator.patch
+
+ git submodule init
+ git submodule set-url subprojects/gvdb "$srcdir/gvdb"
+ git -c protocol.file.allow=always submodule update
}
build() {
- CFLAGS+=" -DG_DISABLE_CAST_CHECKS"
- arch-meson glib build \
- -D selinux=disabled \
- -D man=true \
- -D gtk_doc=true
- ninja -C build
+ local meson_options=(
+ --default-library both
+ -D glib_debug=disabled
+ -D introspection=enabled
+ -D man-pages=enabled
+ -D selinux=disabled
+ -D sysprof=enabled
+ )
+
+ # Produce more debug info: GLib has a lot of useful macros
+ CFLAGS+=" -g3"
+ CXXFLAGS+=" -g3"
+
+ # use fat LTO objects for static libraries
+ CFLAGS+=" -ffat-lto-objects"
+ CXXFLAGS+=" -ffat-lto-objects"
+
+ arch-meson glib build "${meson_options[@]}"
+ meson compile -C build
}
-#skip this; test fails
-#check() {
-# meson test -C build --no-suite flaky --print-errorlogs
-#}
+check() {
+ meson test -C build --no-suite flaky --no-suite slow --print-errorlogs
+}
package() {
- DESTDIR="$pkgdir" meson install -C build
- install -Dt "$pkgdir/usr/share/libalpm/hooks" -m644 *.hook
+ meson install -C build --destdir "$pkgdir"
- python -m compileall -d /usr/share/glib-2.0/codegen "$pkgdir/usr/share/glib-2.0/codegen"
- python -O -m compileall -d /usr/share/glib-2.0/codegen "$pkgdir/usr/share/glib-2.0/codegen"
+ install -Dt "$pkgdir/usr/share/libalpm/hooks" -m644 *.hook
+ touch "$pkgdir/usr/lib/gio/modules/.keep"
- # Split docs
- mv "$pkgdir/usr/share/gtk-doc" "$srcdir"
+ python -m compileall -d /usr/share/glib-2.0/codegen \
+ "$pkgdir/usr/share/glib-2.0/codegen"
+ python -O -m compileall -d /usr/share/glib-2.0/codegen \
+ "$pkgdir/usr/share/glib-2.0/codegen"
}
+
+# vim:set sw=2 sts=-1 et:
diff --git a/gio-querymodules.hook b/gio-querymodules.hook
index 193233398168..857814791ac3 100644
--- a/gio-querymodules.hook
+++ b/gio-querymodules.hook
@@ -1,5 +1,5 @@
[Trigger]
-Type = File
+Type = Path
Operation = Install
Operation = Upgrade
Operation = Remove
diff --git a/glib-compile-schemas.hook b/glib-compile-schemas.hook
index 04dc59b1a638..974549d7660d 100644
--- a/glib-compile-schemas.hook
+++ b/glib-compile-schemas.hook
@@ -1,5 +1,5 @@
[Trigger]
-Type = File
+Type = Path
Operation = Install
Operation = Upgrade
Operation = Remove
diff --git a/noisy-glib-compile-schemas.diff b/noisy-glib-compile-schemas.diff
deleted file mode 100644
index f5f2d9482229..000000000000
--- a/noisy-glib-compile-schemas.diff
+++ /dev/null
@@ -1,24 +0,0 @@
-diff --git i/gio/glib-compile-schemas.c w/gio/glib-compile-schemas.c
-index b8de0907248f6860..130f89b1728f7932 100644
---- i/gio/glib-compile-schemas.c
-+++ w/gio/glib-compile-schemas.c
-@@ -1219,19 +1219,6 @@ parse_state_start_schema (ParseState *state,
- return;
- }
-
-- if (path && (g_str_has_prefix (path, "/apps/") ||
-- g_str_has_prefix (path, "/desktop/") ||
-- g_str_has_prefix (path, "/system/")))
-- {
-- gchar *message = NULL;
-- message = g_strdup_printf (_("Warning: Schema “%s” has path “%s”. "
-- "Paths starting with "
-- "“/apps/”, “/desktop/” or “/system/” are deprecated."),
-- id, path);
-- g_printerr ("%s\n", message);
-- g_free (message);
-- }
--
- state->schema_state = schema_state_new (path, gettext_domain,
- extends, extends_name, list_of);
-