From c0fa62fe18cab3237f33cfc95859ee0a173c2e7f Mon Sep 17 00:00:00 2001 From: Clayton Craft Date: Sun, 25 Apr 2021 19:27:08 -0700 Subject: [PATCH] temp/geary: remove fork (MR 2139) Geary 40.0 works well on mobile now in my testing so far, and doesn't require any out-of-tree patches. So let's drop it! --- ...Session-Don-t-crash-on-empty-preview.patch | 55 ---------- ...libhandy-to-1.0-in-order-to-fix-issu.patch | 26 ----- ...k-workarround-for-libhandy-issue-305.patch | 32 ------ ...-Bumped-version-of-libhandy-to-1.0.1.patch | 25 ----- ...register-GearyWebExtension-JS-in-the.patch | 100 ------------------ temp/geary/APKBUILD | 98 ----------------- temp/geary/purism_patches.series | 6 -- 7 files changed, 342 deletions(-) delete mode 100644 temp/geary/0001-Geary.Imap.FolderSession-Don-t-crash-on-empty-preview.patch delete mode 100644 temp/geary/0002-Bump-version-of-libhandy-to-1.0-in-order-to-fix-issu.patch delete mode 100644 temp/geary/0003-Removed-hack-workarround-for-libhandy-issue-305.patch delete mode 100644 temp/geary/0004-Bumped-version-of-libhandy-to-1.0.1.patch delete mode 100644 temp/geary/0005-web-process-extension-register-GearyWebExtension-JS-in-the.patch delete mode 100644 temp/geary/APKBUILD delete mode 100644 temp/geary/purism_patches.series diff --git a/temp/geary/0001-Geary.Imap.FolderSession-Don-t-crash-on-empty-preview.patch b/temp/geary/0001-Geary.Imap.FolderSession-Don-t-crash-on-empty-preview.patch deleted file mode 100644 index 5dbd25535..000000000 --- a/temp/geary/0001-Geary.Imap.FolderSession-Don-t-crash-on-empty-preview.patch +++ /dev/null @@ -1,55 +0,0 @@ -From: =?utf-8?q?Guido_G=C3=BCnther?= -Date: Tue, 23 Feb 2021 19:33:35 +0100 -Subject: Geary.Imap.FolderSession: Don't crash on empty preview - -If we didn't set a preview we crash like - - *[wrn] 12:54:59.0908 geary:application-certificate-manager.vala:74: No GCR slot URIs found, GCR certificate pinning unavailable - *[wrn] 12:55:10.0501 Geary: [goa_account_1614080076_2] [imap] [GearyImapClientSession(selected:INBOX selected RW, GearyImapClientConnection(0001/imap.example.com:993/up)), Imap.Folder(>INBOX), ro: false, permanent_flags: \Answered \Flagged \* \Seen \Deleted \Draft, accepts_user_flags: true] GearyImapFolderSession: No preview specifiers "body.peek[1]<0.256>" and "body.peek[1.mime]" found - *[wrn] 12:55:10.0502 Geary: [goa_account_1614080076_2] [imap] [GearyImapClientSession(selected:INBOX selected RW, GearyImapClientConnection(0001/imap.example.com:993/up)), Imap.Folder(>INBOX), ro: false, permanent_flags: \Answered \Flagged \* \Seen \Deleted \Draft, accepts_user_flags: true] GearyImapFolderSession: - has body[1.mime] - *[wrn] 12:55:10.0502 Geary: [goa_account_1614080076_2] [imap] [GearyImapClientSession(selected:INBOX selected RW, GearyImapClientConnection(0001/imap.example.com:993/up)), Imap.Folder(>INBOX), ro: false, permanent_flags: \Answered \Flagged \* \Seen \Deleted \Draft, accepts_user_flags: true] GearyImapFolderSession: - has body[header.fields (references)] - *[wrn] 12:55:10.0502 Geary: [goa_account_1614080076_2] [imap] [GearyImapClientSession(selected:INBOX selected RW, GearyImapClientConnection(0001/imap.example.com:993/up)), Imap.Folder(>INBOX), ro: false, permanent_flags: \Answered \Flagged \* \Seen \Deleted \Draft, accepts_user_flags: true] GearyImapFolderSession: - has body[1]<0> - ![crt] 12:55:10.0502 GLib:Did not see expected message GLib-GObject-WARNING **: g_object_weak_unref: couldn't find weak ref * - ![crt] 12:55:10.0502 geary:geary_email_set_message_preview: assertion 'GEARY_RF_C822_IS_PREVIEW_TEXT (preview)' failed - - (gdb) bt - #0 __GI_raise (sig=sig@entry=5) at ../sysdeps/unix/sysv/linux/raise.c:50 - #1 0x0000ffff919a71d8 in _g_log_abort (breakpoint=1) at ../../../glib/gmessages.c:554 - #2 g_logvPython Exception Cannot access memory at address 0x8: - (log_domain=0xffff91f1d908 "geary", log_level=10, format=, args=#3 0x0000ffff919a7440 in g_log (log_domain=, log_level=, format=) - at ../../../glib/gmessages.c:1415 - #4 0x0000ffff91eabaf8 in geary_imap_folder_session_fetched_data_to_email - (error=0xffff11aeb2f0, preview_charset_specifier=0xaaaafe108120 [GearyImapFetchBodyDataSpecifier], preview_specifier=0xaaaafe0ec070 [GearyImapFetchBodyDataSpecifier], body_specifier=0x0, header_specifiers_length1=, header_specifiers=0x0, required_fields=927, fetched_data=, uid=0xaaaafe48de90 [GearyImapUID], self=0xaaaafe1059b0 [GearyImapFolderSession]) - at src/engine/libgeary-engine.a.p/imap/api/imap-folder-session.c:6795 - #5 __lambda103_ (error=0xffff11aeb360, _data28_=0xaaaafdf2d760) at src/engine/libgeary-engine.a.p/imap/api/imap-folder-session.c:4541 - #6 ___lambda103__geary_nonblocking_concurrent_concurrent_callback (cancellable=, self=0xaaaafdf2d760, error=0xffff11aeb360) at src/engine/libgeary-engine.a.p/imap/api/imap-folder-session.c:4640 - #7 0x0000ffff91e412d0 in geary_nonblocking_concurrent_concurrent_operation_execute (self=0xaaaafe48f6d0 [GearyNonblockingConcurrentConcurrentOperation]) - at src/engine/libgeary-engine.a.p/nonblocking/nonblocking-concurrent.c:672 - #8 geary_nonblocking_concurrent_on_work_ready (op=0xaaaafe48f6d0 [GearyNonblockingConcurrentConcurrentOperation], self=) - at src/engine/libgeary-engine.a.p/nonblocking/nonblocking-concurrent.c:501 - #9 _geary_nonblocking_concurrent_on_work_ready_gfunc (data=0xaaaafe48f6d0, self=) at src/engine/libgeary-engine.a.p/nonblocking/nonblocking-concurrent.c:296 - #10 0x0000ffff919ca3c8 in g_thread_pool_thread_proxy (data=) at ../../../glib/gthreadpool.c:354 - #11 0x0000ffff919c98f4 in g_thread_proxy (data=0xaaaafde2e120) at ../../../glib/gthread.c:820 - #12 0x0000ffff8b437628 in start_thread (arg=0xffff11aeb520) at pthread_create.c:477 - #13 0x0000ffff916a801c in thread_start () at ../sysdeps/unix/sysv/linux/aarch64/clone.S:78 - -Create an empty preview to avoid that. - -(cherry picked from commit b57567ff9eb746e71975cf1e2bbd8dcd9d62f0f1) ---- - src/engine/imap/api/imap-folder-session.vala | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/engine/imap/api/imap-folder-session.vala b/src/engine/imap/api/imap-folder-session.vala -index 3b777ee..bf4cd2b 100644 ---- a/src/engine/imap/api/imap-folder-session.vala -+++ b/src/engine/imap/api/imap-folder-session.vala -@@ -1037,7 +1037,7 @@ private class Geary.Imap.FolderSession : Geary.Imap.SessionObject { - preview_specifier - ); - -- RFC822.PreviewText? preview = null; -+ RFC822.PreviewText preview = new RFC822.PreviewText(new Memory.StringBuffer("")); - if (preview_headers != null && preview_headers.size > 0 && - preview_body != null && preview_body.size > 0) { - preview = new RFC822.PreviewText.with_header( diff --git a/temp/geary/0002-Bump-version-of-libhandy-to-1.0-in-order-to-fix-issu.patch b/temp/geary/0002-Bump-version-of-libhandy-to-1.0-in-order-to-fix-issu.patch deleted file mode 100644 index 005b6b75e..000000000 --- a/temp/geary/0002-Bump-version-of-libhandy-to-1.0-in-order-to-fix-issu.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 0475949ee1a41e3a2b24681c6799f584c508ca0d Mon Sep 17 00:00:00 2001 -From: Yuri Edward -Date: Sat, 9 Jan 2021 22:24:11 +0100 -Subject: [PATCH 1/3] Bump version of libhandy to 1.0 in order to fix issue - #305 - ---- - meson.build | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/meson.build b/meson.build -index 85f256e9..3f2772d8 100644 ---- a/meson.build -+++ b/meson.build -@@ -88,7 +88,7 @@ gthread = dependency('gthread-2.0', version: '>=' + target_glib) - iso_codes = dependency('iso-codes') - javascriptcoregtk = dependency('javascriptcoregtk-4.0', version: '>=' + target_webkit) - json_glib = dependency('json-glib-1.0', version: '>= 1.0') --libhandy = dependency('libhandy-1', version: '>= 0.90') -+libhandy = dependency('libhandy-1', version: '>= 1.0') - libmath = cc.find_library('m') - libpeas = dependency('libpeas-1.0', version: '>= 1.24.0') - libpeas_gtk = dependency('libpeas-gtk-1.0', version: '>= 1.24.0') --- -2.30.2 - diff --git a/temp/geary/0003-Removed-hack-workarround-for-libhandy-issue-305.patch b/temp/geary/0003-Removed-hack-workarround-for-libhandy-issue-305.patch deleted file mode 100644 index d4966a721..000000000 --- a/temp/geary/0003-Removed-hack-workarround-for-libhandy-issue-305.patch +++ /dev/null @@ -1,32 +0,0 @@ -From b815ddf37030d7674a6cc5459af33d0bde4cf922 Mon Sep 17 00:00:00 2001 -From: Yuri Edward -Date: Sat, 9 Jan 2021 22:24:43 +0100 -Subject: [PATCH 2/3] Removed hack/workarround for libhandy issue #305 - ---- - src/client/application/application-client.vala | 9 --------- - 1 file changed, 9 deletions(-) - -diff --git a/src/client/application/application-client.vala b/src/client/application/application-client.vala -index 0bd704fc..85af509f 100644 ---- a/src/client/application/application-client.vala -+++ b/src/client/application/application-client.vala -@@ -935,15 +935,6 @@ public class Application.Client : Gtk.Application { - } - - private MainWindow new_main_window(bool select_first_inbox) { -- // Work around warning caused by GNOME/libhandy#305 which -- // makes it a pita to run with G_DEBUG=fatal-warnings. Remove -- // once the fix for that issue has been released and packaged. -- GLib.Test.expect_message( -- "GLib-GObject", -- LEVEL_WARNING, -- "g_object_weak_unref: couldn't find weak ref *" -- ); -- - MainWindow window = new MainWindow(this); - this.controller.register_window(window); - window.focus_in_event.connect(on_main_window_focus_in); --- -2.30.2 - diff --git a/temp/geary/0004-Bumped-version-of-libhandy-to-1.0.1.patch b/temp/geary/0004-Bumped-version-of-libhandy-to-1.0.1.patch deleted file mode 100644 index 7b7f523ee..000000000 --- a/temp/geary/0004-Bumped-version-of-libhandy-to-1.0.1.patch +++ /dev/null @@ -1,25 +0,0 @@ -From f31164cc9bd71a5ba613b2323a462a829dea83aa Mon Sep 17 00:00:00 2001 -From: Yuri Edward -Date: Sun, 10 Jan 2021 23:54:46 +0100 -Subject: [PATCH 3/3] Bumped version of libhandy to 1.0.1 - ---- - meson.build | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/meson.build b/meson.build -index 3f2772d8..2ce78816 100644 ---- a/meson.build -+++ b/meson.build -@@ -88,7 +88,7 @@ gthread = dependency('gthread-2.0', version: '>=' + target_glib) - iso_codes = dependency('iso-codes') - javascriptcoregtk = dependency('javascriptcoregtk-4.0', version: '>=' + target_webkit) - json_glib = dependency('json-glib-1.0', version: '>= 1.0') --libhandy = dependency('libhandy-1', version: '>= 1.0') -+libhandy = dependency('libhandy-1', version: '>= 1.0.1') - libmath = cc.find_library('m') - libpeas = dependency('libpeas-1.0', version: '>= 1.24.0') - libpeas_gtk = dependency('libpeas-gtk-1.0', version: '>= 1.24.0') --- -2.30.2 - diff --git a/temp/geary/0005-web-process-extension-register-GearyWebExtension-JS-in-the.patch b/temp/geary/0005-web-process-extension-register-GearyWebExtension-JS-in-the.patch deleted file mode 100644 index fa2bbcbdc..000000000 --- a/temp/geary/0005-web-process-extension-register-GearyWebExtension-JS-in-the.patch +++ /dev/null @@ -1,100 +0,0 @@ -From 6a0ad7218249e8f5b6ab13840ea973a8270bd4fb Mon Sep 17 00:00:00 2001 -From: Michael Catanzaro -Date: Thu, 4 Mar 2021 17:25:41 -0600 -Subject: [PATCH] web-process-extension: register GearyWebExtension JS in the - right place - -We need to register our JS when the window-object-cleared signal is -emitted. Previously we did this when the WebPage object is created, but -this only worked due to luck. Since WebKit r271642, it no longer works. -window-object-cleared is emitted right after page-created, meaning that -right after Geary registers its JS, it all gets wiped away. Oops. - -Fixes #1168 ---- - .../web-process/web-process-extension.vala | 57 ++++++++++--------- - 1 file changed, 31 insertions(+), 26 deletions(-) - -diff --git a/src/client/web-process/web-process-extension.vala b/src/client/web-process/web-process-extension.vala -index 6785903e0..5a7599e68 100644 ---- a/src/client/web-process/web-process-extension.vala -+++ b/src/client/web-process/web-process-extension.vala -@@ -48,6 +48,7 @@ public class GearyWebExtension : Object { - public GearyWebExtension(WebKit.WebExtension extension) { - this.extension = extension; - extension.page_created.connect(on_page_created); -+ WebKit.ScriptWorld.get_default().window_object_cleared.connect(on_window_object_cleared); - } - - private void on_console_message(WebKit.WebPage page, -@@ -134,32 +135,6 @@ public class GearyWebExtension : Object { - - private void on_page_created(WebKit.WebExtension extension, - WebKit.WebPage page) { -- WebKit.Frame frame = page.get_main_frame(); -- JSC.Context context = frame.get_js_context(); -- -- var extension_class = context.register_class( -- this.get_type().name(), -- null, -- null, -- null -- ); -- extension_class.add_method( -- EXTENSION_CLASS_SEND, -- (instance, values) => { -- return this.on_page_send_message(page, values); -- }, -- GLib.Type.NONE -- ); -- context.set_value( -- EXTENSION_CLASS_VAR, -- new JSC.Value.object(context, extension_class, extension_class) -- ); -- -- context.set_value( -- REMOTE_LOAD_VAR, -- new JSC.Value.boolean(context, false) -- ); -- - page.console_message_sent.connect(on_console_message); - page.send_request.connect(on_send_request); - page.user_message_received.connect(on_page_message_received); -@@ -269,4 +244,34 @@ public class GearyWebExtension : Object { - return true; - } - -+ private void on_window_object_cleared(WebKit.ScriptWorld world, -+ WebKit.WebPage page, -+ WebKit.Frame frame) -+ { -+ JSC.Context context = frame.get_js_context(); -+ -+ var extension_class = context.register_class( -+ this.get_type().name(), -+ null, -+ null, -+ null -+ ); -+ extension_class.add_method( -+ EXTENSION_CLASS_SEND, -+ (instance, values) => { -+ return this.on_page_send_message(page, values); -+ }, -+ GLib.Type.NONE -+ ); -+ context.set_value( -+ EXTENSION_CLASS_VAR, -+ new JSC.Value.object(context, extension_class, extension_class) -+ ); -+ -+ context.set_value( -+ REMOTE_LOAD_VAR, -+ new JSC.Value.boolean(context, false) -+ ); -+ } -+ - } --- -GitLab - diff --git a/temp/geary/APKBUILD b/temp/geary/APKBUILD deleted file mode 100644 index 98151e291..000000000 --- a/temp/geary/APKBUILD +++ /dev/null @@ -1,98 +0,0 @@ -# Forked from Alpine to apply Purism's mobile patches -pkgname=geary -pkgver=9999_git20210412 -pkgrel=0 -# https://source.puri.sm/Librem5/geary -# 3.38.2+git20210118+7bb025-0pureos3 -_commit="33d9c90f0846d15dd3f31880ac5b3ffaf0badf61" -pkgdesc="Geary is an email application built around conversations" -url="https://wiki.gnome.org/Apps/Geary" -# libhandy is not available on s390x or mips -arch="all !s390x !mips !mips64" -license="LGPL-2.1-or-later AND CC-BY-3.0 AND BSD-2-Clause" -depends="iso-codes dbus:org.freedesktop.Secrets" -makedepends=" - appstream-glib-dev - cmake - enchant2-dev - folks-dev - gcr-dev - glib-dev - gmime-dev - gnome-online-accounts-dev - gspell-dev - gsound-dev - gtk+3.0-dev - iso-codes-dev - itstool - json-glib-dev - libcanberra-dev - libgee-dev - libhandy1-dev - libnotify-dev - libpeas-dev - libsecret-dev - libstemmer-dev - libunwind-dev - libxml2-dev - meson - sqlite-dev - vala - webkit2gtk-dev - ytnef-dev - " -checkdepends=" - desktop-file-utils - ibus - xvfb-run - " -options="!check" # https://gitlab.gnome.org/GNOME/geary/-/issues/776 -subpackages="$pkgname-lang $pkgname-doc" -source=" - https://source.puri.sm/Librem5/geary/-/archive/$_commit/geary-$_commit.tar.gz - 0001-Geary.Imap.FolderSession-Don-t-crash-on-empty-preview.patch - 0002-Bump-version-of-libhandy-to-1.0-in-order-to-fix-issu.patch - 0003-Removed-hack-workarround-for-libhandy-issue-305.patch - 0004-Bumped-version-of-libhandy-to-1.0.1.patch - 0005-web-process-extension-register-GearyWebExtension-JS-in-the.patch - purism_patches.series - $_commit.series::https://source.puri.sm/Librem5/geary/-/raw/$_commit/debian/patches/series - " -builddir="$srcdir/$pkgname-$_commit" - -prepare() { - # NOTE: patches are kept in this repo, since they are no longer available in - # the tarball from purism's repo. This check will cause an error if the list - # of patches in purism's repo is different than the list in this repo. The - # list in this repo should be kept in sync when this package is upgrades! - if ! diff -q $srcdir/purism_patches.series $srcdir/$_commit.series; then - echo "Included patch list does not match patch list from $_commit" - exit 1 - fi - default_prepare -} - -build() { - abuild-meson \ - -Dlibunwind_optional=true \ - -Dprofile=release \ - . output - meson compile ${JOBS:+-j ${JOBS}} -C output -} - -check() { - xvfb-run meson test --no-rebuild -v -C output -} - -package() { - DESTDIR="$pkgdir" meson install --no-rebuild -C output -} - -sha512sums="fc5bc6651113c9874c0118dd35e2c2994d13392fa1c50d0ce15495e31fc7c051c4c4dc639fd4a63db55d32c5ddd46c85c8e2c56c76be3c3a1c05453a5c12fdbf geary-33d9c90f0846d15dd3f31880ac5b3ffaf0badf61.tar.gz -c5ccfbf647ba145ae590611d94e4ded0ae3b5781372fd189bf40e7ed208ba4f309646b1807598dfab80f49c8a46b204953ac9affe4c5c2e3d70e9f3778a0ec7e 0001-Geary.Imap.FolderSession-Don-t-crash-on-empty-preview.patch -0db6b44e7a1a64ac96120f956d5e59ef73f9ca8b28a8797b309060e42e063586a8de076b84487729aa20337b8acf9cf0eb4d1ca5cf3bde5b866133ad5d026c40 0002-Bump-version-of-libhandy-to-1.0-in-order-to-fix-issu.patch -7ff94be3ea24e1685251f1bf4c89363991aa4936ffff95f8d6aef752a7854dc171b513340ecb31a729fa20efa0580107cf268daa134f010fb4eb7cb038f34e79 0003-Removed-hack-workarround-for-libhandy-issue-305.patch -4d77cf8273635493d7c0ede84eb0013a5cc0fc78c82eb32e97a1b5fcb966fea7641078e1cb10087639b835cf91cfc27fb1290f97ea301d5074e4dbbe5b120558 0004-Bumped-version-of-libhandy-to-1.0.1.patch -0ae3131b736f1530b0a07493a2bcb36eb41ced2cc60629509872949887ae1770936992c90914004d9c5900e32c88772a007a835bc49f8aaf6a6553ae2daa2ce7 0005-web-process-extension-register-GearyWebExtension-JS-in-the.patch -a540fba131de46eede657f83cd2d59a932aec094cd5f1861208eab94190fae2ed3320068e9267ece151336a30577b91bd3ae1850338f6f70b9a5e5c535cd53c0 purism_patches.series -a540fba131de46eede657f83cd2d59a932aec094cd5f1861208eab94190fae2ed3320068e9267ece151336a30577b91bd3ae1850338f6f70b9a5e5c535cd53c0 33d9c90f0846d15dd3f31880ac5b3ffaf0badf61.series" diff --git a/temp/geary/purism_patches.series b/temp/geary/purism_patches.series deleted file mode 100644 index eb408ca83..000000000 --- a/temp/geary/purism_patches.series +++ /dev/null @@ -1,6 +0,0 @@ -pureos/backport/Geary.Imap.FolderSession-Don-t-crash-on-empty-preview.patch -pureos/backport/Bump-version-of-libhandy-to-1.0-in-order-to-fix-issu.patch -pureos/backport/Removed-hack-workarround-for-libhandy-issue-305.patch -pureos/backport/Bumped-version-of-libhandy-to-1.0.1.patch -pureos/mr/Geary.RFC822.Message-Handle-0-size-of-body-and-header-in-.patch -pureos/mr/tests-Use-longer-timeout-for-client-tests.patch