Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] astroid: build with guri and webkit2gtk-4.1
@ 2024-02-29 23:15 oreo639
  2024-03-01 17:51 ` bitmeise
                   ` (15 more replies)
  0 siblings, 16 replies; 17+ messages in thread
From: oreo639 @ 2024-02-29 23:15 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1324 bytes --]

There is a new pull request by oreo639 against master on the void-packages repository

https://github.com/oreo639/void-packages astroid
https://github.com/void-linux/void-packages/pull/49013

astroid: build with guri and webkit2gtk-4.1
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**


@bitmeise Can you test this and verify if it works for you?

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/49013.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-astroid-49013.patch --]
[-- Type: text/x-diff, Size: 4688 bytes --]

From 28800d52b935e3b397a2b0b374f0ea4bedcc80a3 Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Thu, 29 Feb 2024 15:13:22 -0800
Subject: [PATCH] astroid: build with guri and webkit2gtk-4.1

---
 srcpkgs/astroid/patches/webkit2gtk41.patch | 95 ++++++++++++++++++++++
 srcpkgs/astroid/template                   |  4 +-
 2 files changed, 97 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/astroid/patches/webkit2gtk41.patch

diff --git a/srcpkgs/astroid/patches/webkit2gtk41.patch b/srcpkgs/astroid/patches/webkit2gtk41.patch
new file mode 100644
index 00000000000000..d25ca7163a6911
--- /dev/null
+++ b/srcpkgs/astroid/patches/webkit2gtk41.patch
@@ -0,0 +1,95 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 6eb00cf..1a2ea30 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -95,11 +95,10 @@ endif()
+ 
+ pkg_check_modules (GTKMM3     REQUIRED  gtkmm-3.0>=3.10)
+ pkg_check_modules (GLIBMM2    REQUIRED  glibmm-2.4)
+-pkg_check_modules (WEBKIT2GTK REQUIRED  webkit2gtk-4.0>=2.22)
++pkg_check_modules (WEBKIT2GTK REQUIRED  webkit2gtk-4.1>=2.22)
+ pkg_check_modules (SASS       REQUIRED  libsass)
+ pkg_check_modules (GIOMM2     REQUIRED  giomm-2.4)
+-pkg_check_modules (GIOUNIX    REQUIRED  gio-unix-2.0)
+-pkg_check_modules (LIBSOUP    REQUIRED  libsoup-2.4)
++pkg_check_modules (GIOUNIX    REQUIRED  gio-unix-2.0>=2.66)
+ 
+ string (REGEX REPLACE "([0-9]+\.[0-9]+)\.[0-9]+" "\\1" GMIME_MAJOR_MINOR ${Notmuch_GMIME_VERSION})
+ pkg_check_modules (GMIME      REQUIRED  gmime-${GMIME_MAJOR_MINOR}>=${Notmuch_GMIME_VERSION})
+@@ -167,7 +166,6 @@ add_compile_options (
+   ${GLIBMM2_CFLAGS}
+   ${GIOMM2_CFLAGS}
+   ${GIOUNIX_CFLAGS}
+-  ${LIBSOUP_CFLAGS}
+   ${GMIME_CFLAGS}
+   ${WEBKIT2GTK_CFLAGS}
+   ${VTE2_CFLAGS}
+@@ -337,7 +335,6 @@ target_link_libraries (
+   ${GLIBMM2_LDFLAGS}
+   ${GIOMM2_LDFLAGS}
+   ${GIOUINX_LDFLAGS}
+-  ${LIBSOUP_LDFLAGS}
+   ${GMIME_LDFLAGS}
+   ${VTE2_LDFLAGS}
+   ${SASS_LDFLAGS}
+diff --git a/src/astroid.cc b/src/astroid.cc
+index 3d5dc9f..5402c81 100644
+--- a/src/astroid.cc
++++ b/src/astroid.cc
+@@ -6,6 +6,8 @@
+ # include <gtkmm.h>
+ # include <gtkmm/window.h>
+ 
++# include <glib.h>
++
+ /* program options */
+ # include <boost/program_options.hpp>
+ # include <boost/filesystem.hpp>
+@@ -53,8 +55,6 @@
+ # include <gmime/gmime.h>
+ # include <utils/gmime/gmime-compat.h>
+ 
+-# include <libsoup/soup.h>
+-
+ using namespace std;
+ using namespace boost::filesystem;
+ 
+@@ -550,15 +550,16 @@ namespace Astroid {
+ 
+     MainWindow * mw = (MainWindow*) get_windows ()[0];
+ 
+-    SoupURI *uri = soup_uri_new(url.c_str());
++    GUriFlags guriflags = (GUriFlags)(G_URI_FLAGS_HAS_PASSWORD | G_URI_FLAGS_ENCODED_PATH | G_URI_FLAGS_ENCODED_QUERY | G_URI_FLAGS_ENCODED_FRAGMENT | G_URI_FLAGS_SCHEME_NORMALIZE | G_URI_FLAGS_PARSE_RELAXED);
++    GUri *guri = g_uri_parse (url.c_str(), guriflags, NULL);
+ 
+-    if (SOUP_URI_IS_VALID(uri)) {
++    if (guri) {
+       /* we got an mailto url */
+       ustring from, to, cc, bcc, subject, body;
+ 
+-      to = soup_uri_decode (soup_uri_get_path (uri));
++      to = g_uri_unescape_string (g_uri_get_path (guri), NULL);
+ 
+-      const char * soup_query = soup_uri_get_query (uri);
++      const char * soup_query = g_uri_get_query (guri);
+       if (soup_query) {
+         std::istringstream query_string (soup_query);
+         std::string keyval;
+@@ -568,7 +569,7 @@ namespace Astroid {
+           ustring key = keyval.substr (0, pos);
+           key = key.lowercase ();
+ 
+-          ustring val = soup_uri_decode (keyval.substr (pos+1).c_str());
++          ustring val = g_uri_unescape_string (keyval.substr (pos+1).c_str(), NULL);
+ 
+           if (key == "from") {
+             from = ustring (val);
+@@ -591,7 +592,7 @@ namespace Astroid {
+       mw->add_mode (new EditMessage (mw, url));
+     }
+ 
+-    soup_uri_free (uri);
++    g_uri_unref (guri);
+   }
+ 
+   int Astroid::hint_level () {
diff --git a/srcpkgs/astroid/template b/srcpkgs/astroid/template
index 02d7743130fb39..d29371f3c35c1f 100644
--- a/srcpkgs/astroid/template
+++ b/srcpkgs/astroid/template
@@ -5,9 +5,9 @@ revision=13
 build_style=cmake
 build_helper=gir
 hostmakedepends="pkg-config scdoc protobuf gobject-introspection"
-makedepends="libnotmuch-devel gtkmm-devel webkit2gtk-devel libsass-devel
+makedepends="libnotmuch-devel gtkmm-devel libwebkit2gtk41-devel libsass-devel
  gmime3-devel boost-devel protobuf-devel vte3-devel gobject-introspection
- libpeas-devel libsoup-devel"
+ libpeas-devel"
 checkdepends="gnupg notmuch w3m cmark xvfb-run"
 short_desc="Graphical threads-with-tags style email client for Notmuch"
 maintainer="Ameise <ameise@bitparlament.de>"

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: astroid: build with guri and webkit2gtk-4.1
  2024-02-29 23:15 [PR PATCH] astroid: build with guri and webkit2gtk-4.1 oreo639
@ 2024-03-01 17:51 ` bitmeise
  2024-03-01 21:32 ` [PR PATCH] [Updated] " oreo639
                   ` (14 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: bitmeise @ 2024-03-01 17:51 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 323 bytes --]

New comment by bitmeise on void-packages repository

https://github.com/void-linux/void-packages/pull/49013#issuecomment-1973629367

Comment:
I can confirm that this patch works me (smoke tested). Are there any visible changes I should look out for?
Where is this patch coming from?

Also, you should bump the revision.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PR PATCH] [Updated] astroid: build with guri and webkit2gtk-4.1
  2024-02-29 23:15 [PR PATCH] astroid: build with guri and webkit2gtk-4.1 oreo639
  2024-03-01 17:51 ` bitmeise
@ 2024-03-01 21:32 ` oreo639
  2024-03-01 21:33 ` oreo639
                   ` (13 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: oreo639 @ 2024-03-01 21:32 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1329 bytes --]

There is an updated pull request by oreo639 against master on the void-packages repository

https://github.com/oreo639/void-packages astroid
https://github.com/void-linux/void-packages/pull/49013

astroid: build with guri and webkit2gtk-4.1
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**


@bitmeise Can you test this and verify if it works for you?

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/49013.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-astroid-49013.patch --]
[-- Type: text/x-diff, Size: 4782 bytes --]

From 41b2e22467e5bda0aa692190c4f600fa99890605 Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Thu, 29 Feb 2024 15:13:22 -0800
Subject: [PATCH] astroid: build with guri and webkit2gtk-4.1

---
 srcpkgs/astroid/patches/webkit2gtk41.patch | 95 ++++++++++++++++++++++
 srcpkgs/astroid/template                   |  7 +-
 2 files changed, 99 insertions(+), 3 deletions(-)
 create mode 100644 srcpkgs/astroid/patches/webkit2gtk41.patch

diff --git a/srcpkgs/astroid/patches/webkit2gtk41.patch b/srcpkgs/astroid/patches/webkit2gtk41.patch
new file mode 100644
index 00000000000000..d25ca7163a6911
--- /dev/null
+++ b/srcpkgs/astroid/patches/webkit2gtk41.patch
@@ -0,0 +1,95 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 6eb00cf..1a2ea30 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -95,11 +95,10 @@ endif()
+ 
+ pkg_check_modules (GTKMM3     REQUIRED  gtkmm-3.0>=3.10)
+ pkg_check_modules (GLIBMM2    REQUIRED  glibmm-2.4)
+-pkg_check_modules (WEBKIT2GTK REQUIRED  webkit2gtk-4.0>=2.22)
++pkg_check_modules (WEBKIT2GTK REQUIRED  webkit2gtk-4.1>=2.22)
+ pkg_check_modules (SASS       REQUIRED  libsass)
+ pkg_check_modules (GIOMM2     REQUIRED  giomm-2.4)
+-pkg_check_modules (GIOUNIX    REQUIRED  gio-unix-2.0)
+-pkg_check_modules (LIBSOUP    REQUIRED  libsoup-2.4)
++pkg_check_modules (GIOUNIX    REQUIRED  gio-unix-2.0>=2.66)
+ 
+ string (REGEX REPLACE "([0-9]+\.[0-9]+)\.[0-9]+" "\\1" GMIME_MAJOR_MINOR ${Notmuch_GMIME_VERSION})
+ pkg_check_modules (GMIME      REQUIRED  gmime-${GMIME_MAJOR_MINOR}>=${Notmuch_GMIME_VERSION})
+@@ -167,7 +166,6 @@ add_compile_options (
+   ${GLIBMM2_CFLAGS}
+   ${GIOMM2_CFLAGS}
+   ${GIOUNIX_CFLAGS}
+-  ${LIBSOUP_CFLAGS}
+   ${GMIME_CFLAGS}
+   ${WEBKIT2GTK_CFLAGS}
+   ${VTE2_CFLAGS}
+@@ -337,7 +335,6 @@ target_link_libraries (
+   ${GLIBMM2_LDFLAGS}
+   ${GIOMM2_LDFLAGS}
+   ${GIOUINX_LDFLAGS}
+-  ${LIBSOUP_LDFLAGS}
+   ${GMIME_LDFLAGS}
+   ${VTE2_LDFLAGS}
+   ${SASS_LDFLAGS}
+diff --git a/src/astroid.cc b/src/astroid.cc
+index 3d5dc9f..5402c81 100644
+--- a/src/astroid.cc
++++ b/src/astroid.cc
+@@ -6,6 +6,8 @@
+ # include <gtkmm.h>
+ # include <gtkmm/window.h>
+ 
++# include <glib.h>
++
+ /* program options */
+ # include <boost/program_options.hpp>
+ # include <boost/filesystem.hpp>
+@@ -53,8 +55,6 @@
+ # include <gmime/gmime.h>
+ # include <utils/gmime/gmime-compat.h>
+ 
+-# include <libsoup/soup.h>
+-
+ using namespace std;
+ using namespace boost::filesystem;
+ 
+@@ -550,15 +550,16 @@ namespace Astroid {
+ 
+     MainWindow * mw = (MainWindow*) get_windows ()[0];
+ 
+-    SoupURI *uri = soup_uri_new(url.c_str());
++    GUriFlags guriflags = (GUriFlags)(G_URI_FLAGS_HAS_PASSWORD | G_URI_FLAGS_ENCODED_PATH | G_URI_FLAGS_ENCODED_QUERY | G_URI_FLAGS_ENCODED_FRAGMENT | G_URI_FLAGS_SCHEME_NORMALIZE | G_URI_FLAGS_PARSE_RELAXED);
++    GUri *guri = g_uri_parse (url.c_str(), guriflags, NULL);
+ 
+-    if (SOUP_URI_IS_VALID(uri)) {
++    if (guri) {
+       /* we got an mailto url */
+       ustring from, to, cc, bcc, subject, body;
+ 
+-      to = soup_uri_decode (soup_uri_get_path (uri));
++      to = g_uri_unescape_string (g_uri_get_path (guri), NULL);
+ 
+-      const char * soup_query = soup_uri_get_query (uri);
++      const char * soup_query = g_uri_get_query (guri);
+       if (soup_query) {
+         std::istringstream query_string (soup_query);
+         std::string keyval;
+@@ -568,7 +569,7 @@ namespace Astroid {
+           ustring key = keyval.substr (0, pos);
+           key = key.lowercase ();
+ 
+-          ustring val = soup_uri_decode (keyval.substr (pos+1).c_str());
++          ustring val = g_uri_unescape_string (keyval.substr (pos+1).c_str(), NULL);
+ 
+           if (key == "from") {
+             from = ustring (val);
+@@ -591,7 +592,7 @@ namespace Astroid {
+       mw->add_mode (new EditMessage (mw, url));
+     }
+ 
+-    soup_uri_free (uri);
++    g_uri_unref (guri);
+   }
+ 
+   int Astroid::hint_level () {
diff --git a/srcpkgs/astroid/template b/srcpkgs/astroid/template
index 02d7743130fb39..4efbb0b8ffdc6b 100644
--- a/srcpkgs/astroid/template
+++ b/srcpkgs/astroid/template
@@ -1,13 +1,14 @@
 # Template file for 'astroid'
 pkgname=astroid
 version=0.16
-revision=13
+revision=14
 build_style=cmake
 build_helper=gir
 hostmakedepends="pkg-config scdoc protobuf gobject-introspection"
-makedepends="libnotmuch-devel gtkmm-devel webkit2gtk-devel libsass-devel
+makedepends="libnotmuch-devel gtkmm-devel libwebkit2gtk41-devel libsass-devel
  gmime3-devel boost-devel protobuf-devel vte3-devel gobject-introspection
- libpeas-devel libsoup-devel"
+ libpeas-devel"
+depends="gvim"
 checkdepends="gnupg notmuch w3m cmark xvfb-run"
 short_desc="Graphical threads-with-tags style email client for Notmuch"
 maintainer="Ameise <ameise@bitparlament.de>"

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: astroid: build with guri and webkit2gtk-4.1
  2024-02-29 23:15 [PR PATCH] astroid: build with guri and webkit2gtk-4.1 oreo639
  2024-03-01 17:51 ` bitmeise
  2024-03-01 21:32 ` [PR PATCH] [Updated] " oreo639
@ 2024-03-01 21:33 ` oreo639
  2024-03-01 21:34 ` oreo639
                   ` (12 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: oreo639 @ 2024-03-01 21:33 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 393 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/49013#issuecomment-1973953929

Comment:
> Are there any visible changes I should look out for?

The only real change is that the URI parsing for `astroid --mailto`, to use Glib instead of libsoup-2.0.

> Where is this patch coming from?

I wrote it, I'm planning to submit it upstream.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: astroid: build with guri and webkit2gtk-4.1
  2024-02-29 23:15 [PR PATCH] astroid: build with guri and webkit2gtk-4.1 oreo639
                   ` (2 preceding siblings ...)
  2024-03-01 21:33 ` oreo639
@ 2024-03-01 21:34 ` oreo639
  2024-03-01 21:46 ` oreo639
                   ` (11 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: oreo639 @ 2024-03-01 21:34 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 392 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/49013#issuecomment-1973953929

Comment:
> Are there any visible changes I should look out for?

The only real change is for the URI parsing for `astroid --mailto`, to use Glib instead of libsoup-2.0.

> Where is this patch coming from?

I wrote it, I'm planning to submit it upstream.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: astroid: build with guri and webkit2gtk-4.1
  2024-02-29 23:15 [PR PATCH] astroid: build with guri and webkit2gtk-4.1 oreo639
                   ` (3 preceding siblings ...)
  2024-03-01 21:34 ` oreo639
@ 2024-03-01 21:46 ` oreo639
  2024-03-02  9:15 ` bitmeise
                   ` (10 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: oreo639 @ 2024-03-01 21:46 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 392 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/49013#issuecomment-1973953929

Comment:
> Are there any visible changes I should look out for?

The only real change is for the URI parsing for `astroid --mailto`, to use Glib instead of libsoup-2.0.

> Where is this patch coming from?

https://github.com/astroidmail/astroid/pull/745

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: astroid: build with guri and webkit2gtk-4.1
  2024-02-29 23:15 [PR PATCH] astroid: build with guri and webkit2gtk-4.1 oreo639
                   ` (4 preceding siblings ...)
  2024-03-01 21:46 ` oreo639
@ 2024-03-02  9:15 ` bitmeise
  2024-03-02  9:33 ` oreo639
                   ` (9 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: bitmeise @ 2024-03-02  9:15 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

New comment by bitmeise on void-packages repository

https://github.com/void-linux/void-packages/pull/49013#issuecomment-1974741853

Comment:
I'm just curious: Is this about getting rid of old dependencies in the ecosystem from a Void perspective?
As a small contributor I'm definitely fine with the changes. I generally think though that changes should be integrated upstream as often as possible. We could wait for them to do so.

Well, in that case, you are the Void member :)

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: astroid: build with guri and webkit2gtk-4.1
  2024-02-29 23:15 [PR PATCH] astroid: build with guri and webkit2gtk-4.1 oreo639
                   ` (5 preceding siblings ...)
  2024-03-02  9:15 ` bitmeise
@ 2024-03-02  9:33 ` oreo639
  2024-03-02  9:33 ` oreo639
                   ` (8 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: oreo639 @ 2024-03-02  9:33 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 562 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/49013#issuecomment-1974746222

Comment:
> Is this about getting rid of old dependencies in the ecosystem from a Void perspective?

webkit2gtk is a massive dependency and having to compile it 3 times is not ideal. Many distros have already stopped shipping it and the changes in this case are relatively simple.

> I generally think though that changes should be integrated upstream as often as possible.

Of course, that is why I submitted a PR upstream.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: astroid: build with guri and webkit2gtk-4.1
  2024-02-29 23:15 [PR PATCH] astroid: build with guri and webkit2gtk-4.1 oreo639
                   ` (6 preceding siblings ...)
  2024-03-02  9:33 ` oreo639
@ 2024-03-02  9:33 ` oreo639
  2024-03-02  9:34 ` oreo639
                   ` (7 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: oreo639 @ 2024-03-02  9:33 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 592 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/49013#issuecomment-1974746222

Comment:
> Is this about getting rid of old dependencies in the ecosystem from a Void perspective?

webkit2gtk is a massive dependency and having to compile it 3 times is not ideal. Many distros have already stopped shipping it and the changes in this case are relatively simple.

> I generally think though that changes should be integrated upstream as often as possible.

Of course, that is why I submitted a PR upstream and this is marked as a draft.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: astroid: build with guri and webkit2gtk-4.1
  2024-02-29 23:15 [PR PATCH] astroid: build with guri and webkit2gtk-4.1 oreo639
                   ` (7 preceding siblings ...)
  2024-03-02  9:33 ` oreo639
@ 2024-03-02  9:34 ` oreo639
  2024-03-02  9:35 ` oreo639
                   ` (6 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: oreo639 @ 2024-03-02  9:34 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 714 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/49013#issuecomment-1974746222

Comment:
> Is this about getting rid of old dependencies in the ecosystem from a Void perspective?

webkit2gtk is a massive dependency and having to compile it 3 times is not ideal. Many distros have already stopped shipping webkit2gtk-4.0 and the changes in this case are relatively simple. (the changes are necessary since libsoup2 and libsoup3 cannot be loaded in the same process at the same time)

> I generally think though that changes should be integrated upstream as often as possible.

Of course, that is why I submitted a PR upstream and this is marked as a draft.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: astroid: build with guri and webkit2gtk-4.1
  2024-02-29 23:15 [PR PATCH] astroid: build with guri and webkit2gtk-4.1 oreo639
                   ` (8 preceding siblings ...)
  2024-03-02  9:34 ` oreo639
@ 2024-03-02  9:35 ` oreo639
  2024-03-02  9:37 ` oreo639
                   ` (5 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: oreo639 @ 2024-03-02  9:35 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 719 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/49013#issuecomment-1974746222

Comment:
> Is this about getting rid of old dependencies in the ecosystem from a Void perspective?

webkit2gtk is a massive dependency and having to compile it 3 times is not ideal. Many distros have already stopped shipping webkit2gtk-4.0 and the changes in this case are relatively simple. (the guri changes are necessary since libsoup2 and libsoup3 cannot be loaded in the same process at the same time)

> I generally think though that changes should be integrated upstream as often as possible.

Of course, that is why I submitted a PR upstream and this is marked as a draft.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: astroid: build with guri and webkit2gtk-4.1
  2024-02-29 23:15 [PR PATCH] astroid: build with guri and webkit2gtk-4.1 oreo639
                   ` (9 preceding siblings ...)
  2024-03-02  9:35 ` oreo639
@ 2024-03-02  9:37 ` oreo639
  2024-06-01  1:50 ` github-actions
                   ` (4 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: oreo639 @ 2024-03-02  9:37 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 757 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/49013#issuecomment-1974746222

Comment:
> Is this about getting rid of old dependencies in the ecosystem from a Void perspective?

webkit2gtk is a massive dependency and having to compile it 3 times is not ideal. Many distros have already stopped shipping webkit2gtk-4.0 and the changes in this case are relatively simple. (the guri changes are necessary since libsoup2 and libsoup3 cannot be loaded in the same process at the same time, and libsoup3 removed the SoupUri api)

> I generally think though that changes should be integrated upstream as often as possible.

Of course, that is why I submitted a PR upstream and this is marked as a draft.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: astroid: build with guri and webkit2gtk-4.1
  2024-02-29 23:15 [PR PATCH] astroid: build with guri and webkit2gtk-4.1 oreo639
                   ` (10 preceding siblings ...)
  2024-03-02  9:37 ` oreo639
@ 2024-06-01  1:50 ` github-actions
  2024-06-01  8:31 ` oreo639
                   ` (3 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: github-actions @ 2024-06-01  1:50 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 305 bytes --]

New comment by github-actions[bot] on void-packages repository

https://github.com/void-linux/void-packages/pull/49013#issuecomment-2143209557

Comment:
Pull Requests become stale 90 days after last activity and are closed 14 days after that.  If this pull request is still relevant bump it or assign it.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: astroid: build with guri and webkit2gtk-4.1
  2024-02-29 23:15 [PR PATCH] astroid: build with guri and webkit2gtk-4.1 oreo639
                   ` (11 preceding siblings ...)
  2024-06-01  1:50 ` github-actions
@ 2024-06-01  8:31 ` oreo639
  2024-06-18 23:31 ` [PR PATCH] [Updated] " oreo639
                   ` (2 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: oreo639 @ 2024-06-01  8:31 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 146 bytes --]

New comment by oreo639 on void-packages repository

https://github.com/void-linux/void-packages/pull/49013#issuecomment-2143360895

Comment:
bump

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PR PATCH] [Updated] astroid: build with guri and webkit2gtk-4.1
  2024-02-29 23:15 [PR PATCH] astroid: build with guri and webkit2gtk-4.1 oreo639
                   ` (12 preceding siblings ...)
  2024-06-01  8:31 ` oreo639
@ 2024-06-18 23:31 ` oreo639
  2024-06-18 23:32 ` oreo639
  2024-06-21  5:30 ` [PR PATCH] [Merged]: " oreo639
  15 siblings, 0 replies; 17+ messages in thread
From: oreo639 @ 2024-06-18 23:31 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1329 bytes --]

There is an updated pull request by oreo639 against master on the void-packages repository

https://github.com/oreo639/void-packages astroid
https://github.com/void-linux/void-packages/pull/49013

astroid: build with guri and webkit2gtk-4.1
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**


@bitmeise Can you test this and verify if it works for you?

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/49013.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-astroid-49013.patch --]
[-- Type: text/x-diff, Size: 16671 bytes --]

From b480b131df8aafbe7521fd3e80e711b7d1face68 Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Thu, 29 Feb 2024 15:13:22 -0800
Subject: [PATCH] astroid: build with guri and webkit2gtk-4.1

---
 srcpkgs/astroid/patches/webkit2gtk41.patch | 437 +++++++++++++++++++++
 srcpkgs/astroid/template                   |   7 +-
 2 files changed, 441 insertions(+), 3 deletions(-)
 create mode 100644 srcpkgs/astroid/patches/webkit2gtk41.patch

diff --git a/srcpkgs/astroid/patches/webkit2gtk41.patch b/srcpkgs/astroid/patches/webkit2gtk41.patch
new file mode 100644
index 00000000000000..bcd3aa07a309b5
--- /dev/null
+++ b/srcpkgs/astroid/patches/webkit2gtk41.patch
@@ -0,0 +1,437 @@
+From 4c76a4cf6226752f5270197ba8747c7c7550e35e Mon Sep 17 00:00:00 2001
+From: Johannes Rosenberger <johannes.rosenberger@tum.de>
+Date: Tue, 4 Jun 2024 22:43:06 +0200
+Subject: [PATCH 1/2] improve mailto uri handling
+
+1. This introduces consistent mailto uri handling, supporting passing a
+   body and all headers that can be given as agruments to EditMessage,
+   namely, To, From, Cc, Bcc and Subject.
+   Other headers are not dropped but prepended to the email body with a note.
+
+2. Positional (i.e., non-option) commandline arguments are now
+   interpreted as --mailto options.
+
+3. Multiple --mailto options on the commandline are now supported, and are
+   merged into one mailto argument before being passed to EditMessage.
+
+4. A consequence is that libsoup is not used any more, enabling
+   compatibility with webkit2gtk-4.1 while maintaining compatibility with
+   gio (glib) 2.16, and thus building on older and current distros.
+---
+ .github/workflows/ci-debian-build-test.yml |  1 -
+ CMakeLists.txt                             |  6 +-
+ src/astroid.cc                             | 91 ++++++++++------------
+ src/astroid.hh                             |  1 +
+ src/message_thread.cc                      |  3 +-
+ src/modes/edit_message.cc                  | 89 +++++++++++++++++++--
+ src/modes/edit_message.hh                  |  4 +-
+ src/modes/thread_view/thread_view.cc       |  4 -
+ 8 files changed, 127 insertions(+), 72 deletions(-)
+
+diff --git a/.github/workflows/ci-debian-build-test.yml b/.github/workflows/ci-debian-build-test.yml
+index 3015b7f06..ddc33728f 100644
+--- a/.github/workflows/ci-debian-build-test.yml
++++ b/.github/workflows/ci-debian-build-test.yml
+@@ -59,7 +59,6 @@ jobs:
+             libpeas-dev \
+             libprotobuf-dev \
+             libsass-dev \
+-            libsoup2.4-dev \
+             libvte-2.91-dev \
+             libwebkit2gtk-${WEBKITGTK_VERSION}-dev \
+             ninja-build \
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8613572ec..498e4a260 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -98,8 +98,7 @@ pkg_check_modules (GLIBMM2    REQUIRED  glibmm-2.4)
+ pkg_check_modules (WEBKIT2GTK REQUIRED  webkit2gtk-4.0>=2.22)
+ pkg_check_modules (SASS       REQUIRED  libsass)
+ pkg_check_modules (GIOMM2     REQUIRED  giomm-2.4)
+-pkg_check_modules (GIOUNIX    REQUIRED  gio-unix-2.0)
+-pkg_check_modules (LIBSOUP    REQUIRED  libsoup-2.4)
++pkg_check_modules (GIOUNIX    REQUIRED  gio-unix-2.0>=2.16)
+ 
+ string (REGEX REPLACE "([0-9]+\.[0-9]+)\.[0-9]+" "\\1" GMIME_MAJOR_MINOR ${Notmuch_GMIME_VERSION})
+ pkg_check_modules (GMIME      REQUIRED  gmime-${GMIME_MAJOR_MINOR}>=${Notmuch_GMIME_VERSION})
+@@ -154,7 +153,6 @@ include_directories (
+   ${GLIBMM2_INCLUDE_DIRS}
+   ${GIOMM2_INCLUDE_DIRS}
+   ${GIOUNIX_INCLUDE_DIRS}
+-  ${LIBSOUP_INCLUDE_DIRS}
+   ${GMIME_INCLUDE_DIRS}
+   ${WEBKIT2GTK_INCLUDE_DIRS}
+   ${VTE2_INCLUDE_DIRS}
+@@ -169,7 +167,6 @@ add_compile_options (
+   ${GLIBMM2_CFLAGS}
+   ${GIOMM2_CFLAGS}
+   ${GIOUNIX_CFLAGS}
+-  ${LIBSOUP_CFLAGS}
+   ${GMIME_CFLAGS}
+   ${WEBKIT2GTK_CFLAGS}
+   ${VTE2_CFLAGS}
+@@ -339,7 +336,6 @@ target_link_libraries (
+   ${GLIBMM2_LDFLAGS}
+   ${GIOMM2_LDFLAGS}
+   ${GIOUNIX_LDFLAGS}
+-  ${LIBSOUP_LDFLAGS}
+   ${GMIME_LDFLAGS}
+   ${VTE2_LDFLAGS}
+   ${SASS_LDFLAGS}
+diff --git a/src/astroid.cc b/src/astroid.cc
+index 3d5dc9f54..b23e8f6e6 100644
+--- a/src/astroid.cc
++++ b/src/astroid.cc
+@@ -53,8 +53,6 @@
+ # include <gmime/gmime.h>
+ # include <utils/gmime/gmime-compat.h>
+ 
+-# include <libsoup/soup.h>
+-
+ using namespace std;
+ using namespace boost::filesystem;
+ 
+@@ -126,7 +124,7 @@ namespace Astroid {
+ # ifdef DEBUG
+       ( "test-config,t",  "use test config (same as used when tests are run), only makes sense from the source root")
+ # endif
+-      ( "mailto,m", po::value<ustring>(), "compose mail with mailto url or address")
++      ( "mailto,m", po::value< vector<ustring> >()->composing(), "compose mail with mailto url or address")
+       ( "no-auto-poll",   "do not poll automatically")
+       ( "disable-log",    "disable logging")
+       ( "log-stdout",     "log to stdout regardless of configuration")
+@@ -139,6 +137,9 @@ namespace Astroid {
+ # else
+       ;
+ # endif
++
++      /* default option (without --<option> prefix) */
++    pdesc.add("mailto", -1);
+   }
+   // }}}
+ 
+@@ -153,7 +154,11 @@ namespace Astroid {
+     bool show_help = false;
+ 
+     try {
+-      po::store ( po::parse_command_line (argc, argv, desc), vm );
++      po::store ( po::command_line_parser(argc, argv).
++                      options(desc).
++                      positional(pdesc).
++                      run(),
++                  vm );
+     } catch (po::unknown_option &ex) {
+       LOG (error) << "unknown option" << endl;
+       LOG (error) << ex.what() << endl;
+@@ -438,7 +443,11 @@ namespace Astroid {
+       po::variables_map vm;
+ 
+       try {
+-        po::store ( po::parse_command_line (argc, argv, desc), vm );
++        po::store ( po::command_line_parser(argc, argv).
++                        options(desc).
++                        positional(pdesc).
++                        run(),
++                    vm );
+       } catch (po::unknown_option &ex) {
+         LOG (error) << "unknown option" << endl;
+         LOG (error) << ex.what() << endl;
+@@ -446,8 +455,28 @@ namespace Astroid {
+       }
+ 
+       if (vm.count("mailto")) {
+-        ustring mailtourl = vm["mailto"].as<ustring>();
+-        send_mailto (mailtourl);
++        vector <ustring> mailto_list = vm["mailto"].as<vector <ustring>>();
++
++        // is the conversion from ustring to std::string really safe?
++        std::string mailto = "";
++        std::string next;
++
++        ustring::size_type sep;
++
++        for (std::vector<ustring>::size_type i = 0; i < mailto_list.size(); i++) {
++          next = mailto_list[i];
++          sep = next.find("?");
++          if (sep != next.npos)
++            next[sep] = '&';
++          if (next.substr(0, 7) == "mailto:")
++            next.erase(0,7);
++          mailto += "&to=" +  next;
++        }
++
++        mailto[0] = '?';
++        mailto.insert(0, "mailto:");
++
++        send_mailto (mailto);
+         new_window = false;
+       }
+ 
+@@ -545,53 +574,11 @@ namespace Astroid {
+     open_new_window ();
+   }
+ 
+-  void Astroid::send_mailto (ustring url) {
+-    LOG (info) << "astroid: mailto: " << url;
++  void Astroid::send_mailto (ustring uri) {
++    LOG (info) << "astroid: mailto: " << uri;
+ 
+     MainWindow * mw = (MainWindow*) get_windows ()[0];
+-
+-    SoupURI *uri = soup_uri_new(url.c_str());
+-
+-    if (SOUP_URI_IS_VALID(uri)) {
+-      /* we got an mailto url */
+-      ustring from, to, cc, bcc, subject, body;
+-
+-      to = soup_uri_decode (soup_uri_get_path (uri));
+-
+-      const char * soup_query = soup_uri_get_query (uri);
+-      if (soup_query) {
+-        std::istringstream query_string (soup_query);
+-        std::string keyval;
+-        while (std::getline(query_string, keyval, '&')) {
+-          ustring::size_type pos = keyval.find ("=");
+-
+-          ustring key = keyval.substr (0, pos);
+-          key = key.lowercase ();
+-
+-          ustring val = soup_uri_decode (keyval.substr (pos+1).c_str());
+-
+-          if (key == "from") {
+-            from = ustring (val);
+-          } else if (key == "cc") {
+-            cc = ustring (val);
+-          } else if (key == "bcc") {
+-            bcc = ustring (val);
+-          } else if (key == "subject" ) {
+-            subject = ustring (val);
+-          } else if (key == "body") {
+-            body = ustring (val);
+-          }
+-        }
+-      }
+-
+-      mw->add_mode (new EditMessage (mw, to, from, cc, bcc, subject, body));
+-
+-    } else {
+-      /* we probably just got the address on the cmd line */
+-      mw->add_mode (new EditMessage (mw, url));
+-    }
+-
+-    soup_uri_free (uri);
++    mw->add_mode (new EditMessage (mw, uri));
+   }
+ 
+   int Astroid::hint_level () {
+diff --git a/src/astroid.hh b/src/astroid.hh
+index f04803716..06089281a 100644
+--- a/src/astroid.hh
++++ b/src/astroid.hh
+@@ -94,6 +94,7 @@ namespace Astroid {
+ 
+       int _hint_level = 0;
+       po::options_description desc;
++      po::positional_options_description pdesc;
+   };
+ 
+   /* globally available instance of our main Astroid-class */
+diff --git a/src/message_thread.cc b/src/message_thread.cc
+index e84e9e5a1..5a66a5695 100644
+--- a/src/message_thread.cc
++++ b/src/message_thread.cc
+@@ -721,8 +721,7 @@ namespace Astroid {
+ 
+         ustring scheme = Glib::uri_parse_scheme (a);
+         if (scheme == "mailto") {
+-
+-          a = a.substr (scheme.length ()+1, a.length () - scheme.length()-1);
++          a = a.substr (7);
+           UstringUtils::trim (a);
+           al += Address(a);
+         }
+diff --git a/src/modes/edit_message.cc b/src/modes/edit_message.cc
+index 3c236ff27..e695e0ece 100644
+--- a/src/modes/edit_message.cc
++++ b/src/modes/edit_message.cc
+@@ -6,6 +6,7 @@
+ # include <memory>
+ 
+ # include <gtkmm.h>
++# include <glib.h>
+ 
+ # include <boost/filesystem.hpp>
+ 
+@@ -35,19 +36,88 @@ using namespace boost::filesystem;
+ namespace Astroid {
+   int EditMessage::edit_id = 0;
+ 
+-  EditMessage::EditMessage (MainWindow * mw, ustring _to, ustring _from, ustring _cc, ustring _bcc, ustring _subject, ustring _body) :
++  EditMessage::EditMessage (MainWindow * mw, ustring mailto, ustring _from, ustring _cc, ustring _bcc, ustring _subject, ustring _body) :
+     EditMessage (mw, false) { // {{{
+-
+     in_read = false;
+-    to  = _to;
+-    cc  = _cc;
+-    bcc = _bcc;
+-    subject = _subject;
+-    body = _body;
++    to  = "";
++    cc  = "";
++    bcc = "";
++    subject = "";
++    body = "";
++
++    if (ustring (g_uri_parse_scheme(mailto.c_str())) != "mailto") {
++      // if the prefix 'mailto:' is missing, assume it is only the receipient's address
++      to = mailto;
++    } else {
++      mailto.erase(0,7);
++      ustring::size_type sep = mailto.find("?");
++
++      to = g_uri_unescape_string (mailto.substr(0, sep).c_str(), NULL);
++      try {
++        mailto.erase(0, sep+1);
++      } catch (const std::out_of_range& ex) {
++        mailto = "";
++      }
++
++      ustring key;
++      ustring val;
++
++      while (mailto.size() > 0) {
++        sep = mailto.find("=");
++        key = mailto.substr(0, sep);
++        try {
++          mailto.erase (0,sep+1);
++        } catch (const std::out_of_range& ex) {
++          // = not found, i.e. syntax error
++          break;
++        }
++        sep = mailto.find("&");
++        val = ustring (g_uri_unescape_string (mailto.substr(0, sep).c_str(), NULL));
++        try {
++          if (sep == mailto.npos) {
++            mailto = "";
++          } else {
++            mailto.erase (0, sep+1);
++          }
++        } catch (const std::out_of_range& ex) {
++          // no value
++          break;
++        }
++
++        key = key.lowercase ();
++        if (!val.empty ()) {
++          if (key == "to") {
++            append_address (&to, val);
++          } else if (key == "cc") {
++            append_address (&cc, val);
++          } else if (key == "bcc") {
++            append_address (&bcc, val);
++          } else if (key == "subject") {
++            subject += val;
++          } else if (key == "body") {
++            body += val;
++          } else if (key == "from") {
++            // we accept only one "From" address
++            set_from (Address (val));
++          } else {
++            body = ustring::compose ("Unknown header: %1: %2\n%3", key, val, body);
++          }
++        }
++      }
++    }
++
++    append_address (&cc, _cc);
++    append_address (&bcc, _bcc);
++    subject += _subject;
++    body += _body;
++
++
+     if (!_from.empty ()) {
++      // we accept only one "From" address
+       set_from (Address (_from));
+     }
+ 
++
+     /* reload message */
+     prepare_message ();
+     read_edited_message ();
+@@ -1029,6 +1099,11 @@ namespace Astroid {
+     }
+   }
+ 
++  void EditMessage::append_address (ustring *s, ustring a) {
++    *s += (s->empty() ? a : "," + a);
++  }
++
++
+   /* }}} */
+ 
+   /* send message {{{ */
+diff --git a/src/modes/edit_message.hh b/src/modes/edit_message.hh
+index 4aa812ec7..cc30b07ac 100644
+--- a/src/modes/edit_message.hh
++++ b/src/modes/edit_message.hh
+@@ -31,7 +31,8 @@ namespace Astroid {
+ 
+     public:
+       EditMessage (MainWindow *, bool edit_when_ready = true);
+-      EditMessage (MainWindow *, ustring to, ustring from = "", ustring cc = "", ustring bcc = "", ustring subject = "", ustring body = "");
++      // mailto can be mailto uri or simply To: addresses
++      EditMessage (MainWindow *, ustring mailto, ustring from = "", ustring cc = "", ustring bcc = "", ustring subject = "", ustring body = "");
+       EditMessage (MainWindow *, refptr<Message> _msg);
+       ~EditMessage ();
+ 
+@@ -166,6 +167,7 @@ namespace Astroid {
+       void on_from_combo_changed ();
+       //bool on_from_combo_key_press (GdkEventKey *);
+       void on_element_action (int id, ThreadView::ElementAction action);
++      void append_address (ustring *s, ustring a);
+ 
+     public:
+       void grab_modal () override;
+diff --git a/src/modes/thread_view/thread_view.cc b/src/modes/thread_view/thread_view.cc
+index c38efcc8d..3dca442ab 100644
+--- a/src/modes/thread_view/thread_view.cc
++++ b/src/modes/thread_view/thread_view.cc
+@@ -196,10 +196,6 @@ namespace Astroid {
+             ustring scheme = Glib::uri_parse_scheme (uri);
+ 
+             if (scheme == "mailto") {
+-
+-              uri = uri.substr (scheme.length ()+1, uri.length () - scheme.length()-1);
+-              UstringUtils::trim(uri);
+-
+               main_window->add_mode (new EditMessage (main_window, uri));
+ 
+             } else if (scheme == "id" || scheme == "mid" ) {
+
+From 52641da9716c9b60ef8b04caddd2307359ff44ed Mon Sep 17 00:00:00 2001
+From: oreo639 <oreo6391@gmail.com>
+Date: Thu, 29 Feb 2024 14:46:27 -0800
+Subject: [PATCH 2/2] use webkit2gtk-4.1 when available and 4.0 as fallback
+
+This is derived from 7ac88057441f432dbe44ea478e23dbfda70d32ac by oreo639 <oreo6391@gmail.com>,
+but only the part necessary after 4c76a4cf6226752f5270197ba8747c7c7550e35e.
+---
+ CMakeLists.txt | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 498e4a260..8991f07e9 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -95,7 +95,10 @@ endif()
+ 
+ pkg_check_modules (GTKMM3     REQUIRED  gtkmm-3.0>=3.10)
+ pkg_check_modules (GLIBMM2    REQUIRED  glibmm-2.4)
+-pkg_check_modules (WEBKIT2GTK REQUIRED  webkit2gtk-4.0>=2.22)
++pkg_check_modules (WEBKIT2GTK webkit2gtk-4.1)
++if (NOT WEBKIT2GTK_FOUND)
++  pkg_check_modules (WEBKIT2GTK REQUIRED webkit2gtk-4.0>=2.22)
++endif ()
+ pkg_check_modules (SASS       REQUIRED  libsass)
+ pkg_check_modules (GIOMM2     REQUIRED  giomm-2.4)
+ pkg_check_modules (GIOUNIX    REQUIRED  gio-unix-2.0>=2.16)
diff --git a/srcpkgs/astroid/template b/srcpkgs/astroid/template
index 02d7743130fb39..4efbb0b8ffdc6b 100644
--- a/srcpkgs/astroid/template
+++ b/srcpkgs/astroid/template
@@ -1,13 +1,14 @@
 # Template file for 'astroid'
 pkgname=astroid
 version=0.16
-revision=13
+revision=14
 build_style=cmake
 build_helper=gir
 hostmakedepends="pkg-config scdoc protobuf gobject-introspection"
-makedepends="libnotmuch-devel gtkmm-devel webkit2gtk-devel libsass-devel
+makedepends="libnotmuch-devel gtkmm-devel libwebkit2gtk41-devel libsass-devel
  gmime3-devel boost-devel protobuf-devel vte3-devel gobject-introspection
- libpeas-devel libsoup-devel"
+ libpeas-devel"
+depends="gvim"
 checkdepends="gnupg notmuch w3m cmark xvfb-run"
 short_desc="Graphical threads-with-tags style email client for Notmuch"
 maintainer="Ameise <ameise@bitparlament.de>"

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PR PATCH] [Updated] astroid: build with guri and webkit2gtk-4.1
  2024-02-29 23:15 [PR PATCH] astroid: build with guri and webkit2gtk-4.1 oreo639
                   ` (13 preceding siblings ...)
  2024-06-18 23:31 ` [PR PATCH] [Updated] " oreo639
@ 2024-06-18 23:32 ` oreo639
  2024-06-21  5:30 ` [PR PATCH] [Merged]: " oreo639
  15 siblings, 0 replies; 17+ messages in thread
From: oreo639 @ 2024-06-18 23:32 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1329 bytes --]

There is an updated pull request by oreo639 against master on the void-packages repository

https://github.com/oreo639/void-packages astroid
https://github.com/void-linux/void-packages/pull/49013

astroid: build with guri and webkit2gtk-4.1
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**


@bitmeise Can you test this and verify if it works for you?

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/49013.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-astroid-49013.patch --]
[-- Type: text/x-diff, Size: 17554 bytes --]

From ff4b9d78bb8825fad0644fb453c95cff2f03692d Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Thu, 29 Feb 2024 15:13:22 -0800
Subject: [PATCH] astroid: build with guri and webkit2gtk-4.1

---
 srcpkgs/astroid/patches/webkit2gtk41.patch | 468 +++++++++++++++++++++
 srcpkgs/astroid/template                   |   7 +-
 2 files changed, 472 insertions(+), 3 deletions(-)
 create mode 100644 srcpkgs/astroid/patches/webkit2gtk41.patch

diff --git a/srcpkgs/astroid/patches/webkit2gtk41.patch b/srcpkgs/astroid/patches/webkit2gtk41.patch
new file mode 100644
index 00000000000000..49de01d36bf74c
--- /dev/null
+++ b/srcpkgs/astroid/patches/webkit2gtk41.patch
@@ -0,0 +1,468 @@
+From a98affc88b03b18aa8e52ffccddf12a81141821a Mon Sep 17 00:00:00 2001
+From: Johannes Rosenberger <johannes.rosenberger@tum.de>
+Date: Tue, 4 Jun 2024 22:37:00 +0200
+Subject: [PATCH] fix typo in CMakeLists.txt
+
+---
+ CMakeLists.txt | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 5dd70705..8613572e 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -338,7 +338,7 @@ target_link_libraries (
+   ${GTKMM3_LDFLAGS}
+   ${GLIBMM2_LDFLAGS}
+   ${GIOMM2_LDFLAGS}
+-  ${GIOUINX_LDFLAGS}
++  ${GIOUNIX_LDFLAGS}
+   ${LIBSOUP_LDFLAGS}
+   ${GMIME_LDFLAGS}
+   ${VTE2_LDFLAGS}
+@@ -368,7 +368,7 @@ target_link_libraries (
+   ${WEBKIT2GTK_LDFLAGS}
+   ${GLIBMM2_LDFLAGS}
+   ${GIOMM2_LDFLAGS}
+-  ${GIOUINX_LDFLAGS}
++  ${GIOUNIX_LDFLAGS}
+   ${CMAKE_THREAD_LIBS_INIT}
+   ${PROTOBUF_LIBRARIES}
+   ${GTKMM3_LDFLAGS}
+From 4c76a4cf6226752f5270197ba8747c7c7550e35e Mon Sep 17 00:00:00 2001
+From: Johannes Rosenberger <johannes.rosenberger@tum.de>
+Date: Tue, 4 Jun 2024 22:43:06 +0200
+Subject: [PATCH 1/2] improve mailto uri handling
+
+1. This introduces consistent mailto uri handling, supporting passing a
+   body and all headers that can be given as agruments to EditMessage,
+   namely, To, From, Cc, Bcc and Subject.
+   Other headers are not dropped but prepended to the email body with a note.
+
+2. Positional (i.e., non-option) commandline arguments are now
+   interpreted as --mailto options.
+
+3. Multiple --mailto options on the commandline are now supported, and are
+   merged into one mailto argument before being passed to EditMessage.
+
+4. A consequence is that libsoup is not used any more, enabling
+   compatibility with webkit2gtk-4.1 while maintaining compatibility with
+   gio (glib) 2.16, and thus building on older and current distros.
+---
+ .github/workflows/ci-debian-build-test.yml |  1 -
+ CMakeLists.txt                             |  6 +-
+ src/astroid.cc                             | 91 ++++++++++------------
+ src/astroid.hh                             |  1 +
+ src/message_thread.cc                      |  3 +-
+ src/modes/edit_message.cc                  | 89 +++++++++++++++++++--
+ src/modes/edit_message.hh                  |  4 +-
+ src/modes/thread_view/thread_view.cc       |  4 -
+ 8 files changed, 127 insertions(+), 72 deletions(-)
+
+diff --git a/.github/workflows/ci-debian-build-test.yml b/.github/workflows/ci-debian-build-test.yml
+index 3015b7f06..ddc33728f 100644
+--- a/.github/workflows/ci-debian-build-test.yml
++++ b/.github/workflows/ci-debian-build-test.yml
+@@ -59,7 +59,6 @@ jobs:
+             libpeas-dev \
+             libprotobuf-dev \
+             libsass-dev \
+-            libsoup2.4-dev \
+             libvte-2.91-dev \
+             libwebkit2gtk-${WEBKITGTK_VERSION}-dev \
+             ninja-build \
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8613572ec..498e4a260 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -98,8 +98,7 @@ pkg_check_modules (GLIBMM2    REQUIRED  glibmm-2.4)
+ pkg_check_modules (WEBKIT2GTK REQUIRED  webkit2gtk-4.0>=2.22)
+ pkg_check_modules (SASS       REQUIRED  libsass)
+ pkg_check_modules (GIOMM2     REQUIRED  giomm-2.4)
+-pkg_check_modules (GIOUNIX    REQUIRED  gio-unix-2.0)
+-pkg_check_modules (LIBSOUP    REQUIRED  libsoup-2.4)
++pkg_check_modules (GIOUNIX    REQUIRED  gio-unix-2.0>=2.16)
+ 
+ string (REGEX REPLACE "([0-9]+\.[0-9]+)\.[0-9]+" "\\1" GMIME_MAJOR_MINOR ${Notmuch_GMIME_VERSION})
+ pkg_check_modules (GMIME      REQUIRED  gmime-${GMIME_MAJOR_MINOR}>=${Notmuch_GMIME_VERSION})
+@@ -154,7 +153,6 @@ include_directories (
+   ${GLIBMM2_INCLUDE_DIRS}
+   ${GIOMM2_INCLUDE_DIRS}
+   ${GIOUNIX_INCLUDE_DIRS}
+-  ${LIBSOUP_INCLUDE_DIRS}
+   ${GMIME_INCLUDE_DIRS}
+   ${WEBKIT2GTK_INCLUDE_DIRS}
+   ${VTE2_INCLUDE_DIRS}
+@@ -169,7 +167,6 @@ add_compile_options (
+   ${GLIBMM2_CFLAGS}
+   ${GIOMM2_CFLAGS}
+   ${GIOUNIX_CFLAGS}
+-  ${LIBSOUP_CFLAGS}
+   ${GMIME_CFLAGS}
+   ${WEBKIT2GTK_CFLAGS}
+   ${VTE2_CFLAGS}
+@@ -339,7 +336,6 @@ target_link_libraries (
+   ${GLIBMM2_LDFLAGS}
+   ${GIOMM2_LDFLAGS}
+   ${GIOUNIX_LDFLAGS}
+-  ${LIBSOUP_LDFLAGS}
+   ${GMIME_LDFLAGS}
+   ${VTE2_LDFLAGS}
+   ${SASS_LDFLAGS}
+diff --git a/src/astroid.cc b/src/astroid.cc
+index 3d5dc9f54..b23e8f6e6 100644
+--- a/src/astroid.cc
++++ b/src/astroid.cc
+@@ -53,8 +53,6 @@
+ # include <gmime/gmime.h>
+ # include <utils/gmime/gmime-compat.h>
+ 
+-# include <libsoup/soup.h>
+-
+ using namespace std;
+ using namespace boost::filesystem;
+ 
+@@ -126,7 +124,7 @@ namespace Astroid {
+ # ifdef DEBUG
+       ( "test-config,t",  "use test config (same as used when tests are run), only makes sense from the source root")
+ # endif
+-      ( "mailto,m", po::value<ustring>(), "compose mail with mailto url or address")
++      ( "mailto,m", po::value< vector<ustring> >()->composing(), "compose mail with mailto url or address")
+       ( "no-auto-poll",   "do not poll automatically")
+       ( "disable-log",    "disable logging")
+       ( "log-stdout",     "log to stdout regardless of configuration")
+@@ -139,6 +137,9 @@ namespace Astroid {
+ # else
+       ;
+ # endif
++
++      /* default option (without --<option> prefix) */
++    pdesc.add("mailto", -1);
+   }
+   // }}}
+ 
+@@ -153,7 +154,11 @@ namespace Astroid {
+     bool show_help = false;
+ 
+     try {
+-      po::store ( po::parse_command_line (argc, argv, desc), vm );
++      po::store ( po::command_line_parser(argc, argv).
++                      options(desc).
++                      positional(pdesc).
++                      run(),
++                  vm );
+     } catch (po::unknown_option &ex) {
+       LOG (error) << "unknown option" << endl;
+       LOG (error) << ex.what() << endl;
+@@ -438,7 +443,11 @@ namespace Astroid {
+       po::variables_map vm;
+ 
+       try {
+-        po::store ( po::parse_command_line (argc, argv, desc), vm );
++        po::store ( po::command_line_parser(argc, argv).
++                        options(desc).
++                        positional(pdesc).
++                        run(),
++                    vm );
+       } catch (po::unknown_option &ex) {
+         LOG (error) << "unknown option" << endl;
+         LOG (error) << ex.what() << endl;
+@@ -446,8 +455,28 @@ namespace Astroid {
+       }
+ 
+       if (vm.count("mailto")) {
+-        ustring mailtourl = vm["mailto"].as<ustring>();
+-        send_mailto (mailtourl);
++        vector <ustring> mailto_list = vm["mailto"].as<vector <ustring>>();
++
++        // is the conversion from ustring to std::string really safe?
++        std::string mailto = "";
++        std::string next;
++
++        ustring::size_type sep;
++
++        for (std::vector<ustring>::size_type i = 0; i < mailto_list.size(); i++) {
++          next = mailto_list[i];
++          sep = next.find("?");
++          if (sep != next.npos)
++            next[sep] = '&';
++          if (next.substr(0, 7) == "mailto:")
++            next.erase(0,7);
++          mailto += "&to=" +  next;
++        }
++
++        mailto[0] = '?';
++        mailto.insert(0, "mailto:");
++
++        send_mailto (mailto);
+         new_window = false;
+       }
+ 
+@@ -545,53 +574,11 @@ namespace Astroid {
+     open_new_window ();
+   }
+ 
+-  void Astroid::send_mailto (ustring url) {
+-    LOG (info) << "astroid: mailto: " << url;
++  void Astroid::send_mailto (ustring uri) {
++    LOG (info) << "astroid: mailto: " << uri;
+ 
+     MainWindow * mw = (MainWindow*) get_windows ()[0];
+-
+-    SoupURI *uri = soup_uri_new(url.c_str());
+-
+-    if (SOUP_URI_IS_VALID(uri)) {
+-      /* we got an mailto url */
+-      ustring from, to, cc, bcc, subject, body;
+-
+-      to = soup_uri_decode (soup_uri_get_path (uri));
+-
+-      const char * soup_query = soup_uri_get_query (uri);
+-      if (soup_query) {
+-        std::istringstream query_string (soup_query);
+-        std::string keyval;
+-        while (std::getline(query_string, keyval, '&')) {
+-          ustring::size_type pos = keyval.find ("=");
+-
+-          ustring key = keyval.substr (0, pos);
+-          key = key.lowercase ();
+-
+-          ustring val = soup_uri_decode (keyval.substr (pos+1).c_str());
+-
+-          if (key == "from") {
+-            from = ustring (val);
+-          } else if (key == "cc") {
+-            cc = ustring (val);
+-          } else if (key == "bcc") {
+-            bcc = ustring (val);
+-          } else if (key == "subject" ) {
+-            subject = ustring (val);
+-          } else if (key == "body") {
+-            body = ustring (val);
+-          }
+-        }
+-      }
+-
+-      mw->add_mode (new EditMessage (mw, to, from, cc, bcc, subject, body));
+-
+-    } else {
+-      /* we probably just got the address on the cmd line */
+-      mw->add_mode (new EditMessage (mw, url));
+-    }
+-
+-    soup_uri_free (uri);
++    mw->add_mode (new EditMessage (mw, uri));
+   }
+ 
+   int Astroid::hint_level () {
+diff --git a/src/astroid.hh b/src/astroid.hh
+index f04803716..06089281a 100644
+--- a/src/astroid.hh
++++ b/src/astroid.hh
+@@ -94,6 +94,7 @@ namespace Astroid {
+ 
+       int _hint_level = 0;
+       po::options_description desc;
++      po::positional_options_description pdesc;
+   };
+ 
+   /* globally available instance of our main Astroid-class */
+diff --git a/src/message_thread.cc b/src/message_thread.cc
+index e84e9e5a1..5a66a5695 100644
+--- a/src/message_thread.cc
++++ b/src/message_thread.cc
+@@ -721,8 +721,7 @@ namespace Astroid {
+ 
+         ustring scheme = Glib::uri_parse_scheme (a);
+         if (scheme == "mailto") {
+-
+-          a = a.substr (scheme.length ()+1, a.length () - scheme.length()-1);
++          a = a.substr (7);
+           UstringUtils::trim (a);
+           al += Address(a);
+         }
+diff --git a/src/modes/edit_message.cc b/src/modes/edit_message.cc
+index 3c236ff27..e695e0ece 100644
+--- a/src/modes/edit_message.cc
++++ b/src/modes/edit_message.cc
+@@ -6,6 +6,7 @@
+ # include <memory>
+ 
+ # include <gtkmm.h>
++# include <glib.h>
+ 
+ # include <boost/filesystem.hpp>
+ 
+@@ -35,19 +36,88 @@ using namespace boost::filesystem;
+ namespace Astroid {
+   int EditMessage::edit_id = 0;
+ 
+-  EditMessage::EditMessage (MainWindow * mw, ustring _to, ustring _from, ustring _cc, ustring _bcc, ustring _subject, ustring _body) :
++  EditMessage::EditMessage (MainWindow * mw, ustring mailto, ustring _from, ustring _cc, ustring _bcc, ustring _subject, ustring _body) :
+     EditMessage (mw, false) { // {{{
+-
+     in_read = false;
+-    to  = _to;
+-    cc  = _cc;
+-    bcc = _bcc;
+-    subject = _subject;
+-    body = _body;
++    to  = "";
++    cc  = "";
++    bcc = "";
++    subject = "";
++    body = "";
++
++    if (ustring (g_uri_parse_scheme(mailto.c_str())) != "mailto") {
++      // if the prefix 'mailto:' is missing, assume it is only the receipient's address
++      to = mailto;
++    } else {
++      mailto.erase(0,7);
++      ustring::size_type sep = mailto.find("?");
++
++      to = g_uri_unescape_string (mailto.substr(0, sep).c_str(), NULL);
++      try {
++        mailto.erase(0, sep+1);
++      } catch (const std::out_of_range& ex) {
++        mailto = "";
++      }
++
++      ustring key;
++      ustring val;
++
++      while (mailto.size() > 0) {
++        sep = mailto.find("=");
++        key = mailto.substr(0, sep);
++        try {
++          mailto.erase (0,sep+1);
++        } catch (const std::out_of_range& ex) {
++          // = not found, i.e. syntax error
++          break;
++        }
++        sep = mailto.find("&");
++        val = ustring (g_uri_unescape_string (mailto.substr(0, sep).c_str(), NULL));
++        try {
++          if (sep == mailto.npos) {
++            mailto = "";
++          } else {
++            mailto.erase (0, sep+1);
++          }
++        } catch (const std::out_of_range& ex) {
++          // no value
++          break;
++        }
++
++        key = key.lowercase ();
++        if (!val.empty ()) {
++          if (key == "to") {
++            append_address (&to, val);
++          } else if (key == "cc") {
++            append_address (&cc, val);
++          } else if (key == "bcc") {
++            append_address (&bcc, val);
++          } else if (key == "subject") {
++            subject += val;
++          } else if (key == "body") {
++            body += val;
++          } else if (key == "from") {
++            // we accept only one "From" address
++            set_from (Address (val));
++          } else {
++            body = ustring::compose ("Unknown header: %1: %2\n%3", key, val, body);
++          }
++        }
++      }
++    }
++
++    append_address (&cc, _cc);
++    append_address (&bcc, _bcc);
++    subject += _subject;
++    body += _body;
++
++
+     if (!_from.empty ()) {
++      // we accept only one "From" address
+       set_from (Address (_from));
+     }
+ 
++
+     /* reload message */
+     prepare_message ();
+     read_edited_message ();
+@@ -1029,6 +1099,11 @@ namespace Astroid {
+     }
+   }
+ 
++  void EditMessage::append_address (ustring *s, ustring a) {
++    *s += (s->empty() ? a : "," + a);
++  }
++
++
+   /* }}} */
+ 
+   /* send message {{{ */
+diff --git a/src/modes/edit_message.hh b/src/modes/edit_message.hh
+index 4aa812ec7..cc30b07ac 100644
+--- a/src/modes/edit_message.hh
++++ b/src/modes/edit_message.hh
+@@ -31,7 +31,8 @@ namespace Astroid {
+ 
+     public:
+       EditMessage (MainWindow *, bool edit_when_ready = true);
+-      EditMessage (MainWindow *, ustring to, ustring from = "", ustring cc = "", ustring bcc = "", ustring subject = "", ustring body = "");
++      // mailto can be mailto uri or simply To: addresses
++      EditMessage (MainWindow *, ustring mailto, ustring from = "", ustring cc = "", ustring bcc = "", ustring subject = "", ustring body = "");
+       EditMessage (MainWindow *, refptr<Message> _msg);
+       ~EditMessage ();
+ 
+@@ -166,6 +167,7 @@ namespace Astroid {
+       void on_from_combo_changed ();
+       //bool on_from_combo_key_press (GdkEventKey *);
+       void on_element_action (int id, ThreadView::ElementAction action);
++      void append_address (ustring *s, ustring a);
+ 
+     public:
+       void grab_modal () override;
+diff --git a/src/modes/thread_view/thread_view.cc b/src/modes/thread_view/thread_view.cc
+index c38efcc8d..3dca442ab 100644
+--- a/src/modes/thread_view/thread_view.cc
++++ b/src/modes/thread_view/thread_view.cc
+@@ -196,10 +196,6 @@ namespace Astroid {
+             ustring scheme = Glib::uri_parse_scheme (uri);
+ 
+             if (scheme == "mailto") {
+-
+-              uri = uri.substr (scheme.length ()+1, uri.length () - scheme.length()-1);
+-              UstringUtils::trim(uri);
+-
+               main_window->add_mode (new EditMessage (main_window, uri));
+ 
+             } else if (scheme == "id" || scheme == "mid" ) {
+
+From 52641da9716c9b60ef8b04caddd2307359ff44ed Mon Sep 17 00:00:00 2001
+From: oreo639 <oreo6391@gmail.com>
+Date: Thu, 29 Feb 2024 14:46:27 -0800
+Subject: [PATCH 2/2] use webkit2gtk-4.1 when available and 4.0 as fallback
+
+This is derived from 7ac88057441f432dbe44ea478e23dbfda70d32ac by oreo639 <oreo6391@gmail.com>,
+but only the part necessary after 4c76a4cf6226752f5270197ba8747c7c7550e35e.
+---
+ CMakeLists.txt | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 498e4a260..8991f07e9 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -95,7 +95,10 @@ endif()
+ 
+ pkg_check_modules (GTKMM3     REQUIRED  gtkmm-3.0>=3.10)
+ pkg_check_modules (GLIBMM2    REQUIRED  glibmm-2.4)
+-pkg_check_modules (WEBKIT2GTK REQUIRED  webkit2gtk-4.0>=2.22)
++pkg_check_modules (WEBKIT2GTK webkit2gtk-4.1)
++if (NOT WEBKIT2GTK_FOUND)
++  pkg_check_modules (WEBKIT2GTK REQUIRED webkit2gtk-4.0>=2.22)
++endif ()
+ pkg_check_modules (SASS       REQUIRED  libsass)
+ pkg_check_modules (GIOMM2     REQUIRED  giomm-2.4)
+ pkg_check_modules (GIOUNIX    REQUIRED  gio-unix-2.0>=2.16)
diff --git a/srcpkgs/astroid/template b/srcpkgs/astroid/template
index 02d7743130fb39..4efbb0b8ffdc6b 100644
--- a/srcpkgs/astroid/template
+++ b/srcpkgs/astroid/template
@@ -1,13 +1,14 @@
 # Template file for 'astroid'
 pkgname=astroid
 version=0.16
-revision=13
+revision=14
 build_style=cmake
 build_helper=gir
 hostmakedepends="pkg-config scdoc protobuf gobject-introspection"
-makedepends="libnotmuch-devel gtkmm-devel webkit2gtk-devel libsass-devel
+makedepends="libnotmuch-devel gtkmm-devel libwebkit2gtk41-devel libsass-devel
  gmime3-devel boost-devel protobuf-devel vte3-devel gobject-introspection
- libpeas-devel libsoup-devel"
+ libpeas-devel"
+depends="gvim"
 checkdepends="gnupg notmuch w3m cmark xvfb-run"
 short_desc="Graphical threads-with-tags style email client for Notmuch"
 maintainer="Ameise <ameise@bitparlament.de>"

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PR PATCH] [Merged]: astroid: build with guri and webkit2gtk-4.1
  2024-02-29 23:15 [PR PATCH] astroid: build with guri and webkit2gtk-4.1 oreo639
                   ` (14 preceding siblings ...)
  2024-06-18 23:32 ` oreo639
@ 2024-06-21  5:30 ` oreo639
  15 siblings, 0 replies; 17+ messages in thread
From: oreo639 @ 2024-06-21  5:30 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1173 bytes --]

There's a merged pull request on the void-packages repository

astroid: build with guri and webkit2gtk-4.1
https://github.com/void-linux/void-packages/pull/49013

Description:
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**


@bitmeise Can you test this and verify if it works for you?

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2024-06-21  5:30 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-02-29 23:15 [PR PATCH] astroid: build with guri and webkit2gtk-4.1 oreo639
2024-03-01 17:51 ` bitmeise
2024-03-01 21:32 ` [PR PATCH] [Updated] " oreo639
2024-03-01 21:33 ` oreo639
2024-03-01 21:34 ` oreo639
2024-03-01 21:46 ` oreo639
2024-03-02  9:15 ` bitmeise
2024-03-02  9:33 ` oreo639
2024-03-02  9:33 ` oreo639
2024-03-02  9:34 ` oreo639
2024-03-02  9:35 ` oreo639
2024-03-02  9:37 ` oreo639
2024-06-01  1:50 ` github-actions
2024-06-01  8:31 ` oreo639
2024-06-18 23:31 ` [PR PATCH] [Updated] " oreo639
2024-06-18 23:32 ` oreo639
2024-06-21  5:30 ` [PR PATCH] [Merged]: " oreo639

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).