wpewebkit: Fails to build (a required package was not found)

  • Done
  • quality assurance status badge
Details
4 participants
  • kiasoc5
  • Leo Famulari
  • Liliana Marie Prikler
  • Liliana Marie Prikler
Owner
unassigned
Submitted by
kiasoc5
Severity
normal

Debbugs page

kiasoc5 wrote 3 years ago
(address . bug-guix@gnu.org)
MtA6SvI--7-2@tutanota.com
```
-- Found ICU: /gnu/store/7sik9fp2ffvnr7l01s423x4r5pn75rf9-icu4c-69.1/include (found suitable version "69.1", minimum required is "60.2")
-- Found JPEG: /gnu/store/vhxayydx3y9n2gi2sc0dam26p7k1aaj8-libjpeg-turbo-2.0.5/lib/libjpeg.so (found version "62")
-- Found LibEpoxy: /gnu/store/amq5psiagcz04lz4kil3yl553a9cj26b-libepoxy-1.5.5/include (found suitable version "1.5.5", minimum required is "1.4.0")
-- Found LibGcrypt: /gnu/store/5z3gh8yq8a8dzlhm7llx50cjf1vj1r2w-libgcrypt-1.8.8/lib/libgcrypt.so (found suitable version "1.8.8", minimum required is "1.6.0")
CMake Error at /gnu/store/aain9m7r37jlzd21kvgvrkhc2pm7mk1w-cmake-minimal-3.21.3/share/cmake-3.21/Modules/FindPkgConfig.cmake:562 (message):
  A required package was not found
Call Stack (most recent call first):
  /gnu/store/aain9m7r37jlzd21kvgvrkhc2pm7mk1w-cmake-minimal-3.21.3/share/cmake-3.21/Modules/FindPkgConfig.cmake:784 (_pkg_check_modules_internal)
  Source/cmake/FindLibSoup.cmake:35 (pkg_check_modules)
  Source/cmake/WebKitFindPackage.cmake:104 (_find_package)
  Source/cmake/OptionsWPE.cmake:29 (find_package)
  Source/cmake/WebKitCommon.cmake:58 (include)
  CMakeLists.txt:173 (include)


-- Configuring incomplete, errors occurred!
```
Liliana Marie Prikler wrote 3 years ago
aedd0194e117d16d6872043f4ab37661aafc4584.camel@ist.tugraz.at
Am Dienstag, dem 11.01.2022 um 22:49 +0100 schrieb
kiasoc5@tutanota.com:
Toggle quote (29 lines)
> ```
> -- Found ICU: /gnu/store/7sik9fp2ffvnr7l01s423x4r5pn75rf9-icu4c-
> 69.1/include (found suitable version "69.1", minimum required is
> "60.2")
> -- Found JPEG: /gnu/store/vhxayydx3y9n2gi2sc0dam26p7k1aaj8-libjpeg-
> turbo-2.0.5/lib/libjpeg.so (found version "62")
> -- Found LibEpoxy: /gnu/store/amq5psiagcz04lz4kil3yl553a9cj26b-
> libepoxy-1.5.5/include (found suitable version "1.5.5", minimum
> required is "1.4.0")
> -- Found LibGcrypt: /gnu/store/5z3gh8yq8a8dzlhm7llx50cjf1vj1r2w-
> libgcrypt-1.8.8/lib/libgcrypt.so (found suitable version "1.8.8",
> minimum required is "1.6.0")
> CMake Error at /gnu/store/aain9m7r37jlzd21kvgvrkhc2pm7mk1w-cmake-
> minimal-3.21.3/share/cmake-3.21/Modules/FindPkgConfig.cmake:562
> (message):
>   A required package was not found
> Call Stack (most recent call first):
>   /gnu/store/aain9m7r37jlzd21kvgvrkhc2pm7mk1w-cmake-minimal-
> 3.21.3/share/cmake-3.21/Modules/FindPkgConfig.cmake:784
> (_pkg_check_modules_internal)
>   Source/cmake/FindLibSoup.cmake:35 (pkg_check_modules)
>   Source/cmake/WebKitFindPackage.cmake:104 (_find_package)
>   Source/cmake/OptionsWPE.cmake:29 (find_package)
>   Source/cmake/WebKitCommon.cmake:58 (include)
>   CMakeLists.txt:173 (include)
>
>
> -- Configuring incomplete, errors occurred!
> ```
wpewebkit seems to have been ignored in the core-updates merge. It
still uses old-style inputs and (more importantly) libsoup now refers
to libsoup 3.0 which is incompatible with most packages that depend on
the old version. libsoup-minimal-2 should be used in its place.

Cheers
Leo Famulari wrote 3 years ago
Re: bug#53197: wpewebkit: Fails to build (a required package was not found)
(name . Liliana Marie Prikler)(address . liliana.prikler@ist.tugraz.at)
Yd8dtOQ/XQ/OKZH9@jasmine.lan
On Wed, Jan 12, 2022 at 08:28:13AM +0100, Liliana Marie Prikler wrote:
Toggle quote (5 lines)
> wpewebkit seems to have been ignored in the core-updates merge. It
> still uses old-style inputs and (more importantly) libsoup now refers
> to libsoup 3.0 which is incompatible with most packages that depend on
> the old version. libsoup-minimal-2 should be used in its place.

This is kind of off-topic for your message, but I pay attention to
webkitgtk because it's security-critical for the Epiphany "gnome-web"
browser and GNOME overall, but I never looked at wpewebkit.

It doesn't have any dependents in Guix. It was commented-out in the
inputs of gst-plugins-bad, but there was no contextual explanation in
the surrounding code or commit message, so I removed the comment.

The latest wpewebkit release is 2.34.3, according to this page:


It seems to be share a release pattern with webkitgtk:


I suggest we try to keep this package up to date or remove it from Guix.
Liliana Marie Prikler wrote 3 years ago
(name . Leo Famulari)(address . leo@famulari.name)
d9d67773d3237d684767da6531cdf988fa597e6a.camel@ist.tugraz.at
Am Mittwoch, dem 12.01.2022 um 13:28 -0500 schrieb Leo Famulari:
Toggle quote (13 lines)
> On Wed, Jan 12, 2022 at 08:28:13AM +0100, Liliana Marie Prikler wrote:
> > wpewebkit seems to have been ignored in the core-updates merge.  It
> > still uses old-style inputs and (more importantly) libsoup now refers
> > to libsoup 3.0 which is incompatible with most packages that depend
> > on the old version.  libsoup-minimal-2 should be used in its place.
>
> This is kind of off-topic for your message, but I pay attention to
> webkitgtk because it's security-critical for the Epiphany "gnome-web"
> browser and GNOME overall, but I never looked at wpewebkit.
>
> It doesn't have any dependents in Guix. It was commented-out in the
> inputs of gst-plugins-bad, but there was no contextual explanation in
> the surrounding code or commit message, so I removed the comment.
WPEWebkit along with some hitherto unpackaged... package[1] would be
used to enable a source[2] that rendered a Web page inside GStreamer.
Wild stuff.

Toggle quote (7 lines)
> The latest wpewebkit release is 2.34.3, according to this page:
>
> https://wpewebkit.org/code/
>
> It seems to be share a release pattern with webkitgtk:
>
> https://webkitgtk.org/
They share a release schedule, because both of them are ports of the
same rendering engine (Webkit), but they are adjusted towards different
contexts (GTK and embedded respectively), so their inputs and I expect
also parts of their build systems differ.

Toggle quote (2 lines)
> I suggest we try to keep this package up to date or remove it from
> Guix.
I agree, but note that the above shows how we can't expect wpewebkit to
build fine when webkitgtk does. For the record, I'd prefer keeping it
updated, even if there's no users currently. Eventually, Guix will
overtake the embedded browsing market :)

Liliana Marie Prikler wrote 3 years ago
bbf1efe5e549b6f53164effa7d3209ba6667de87.camel@gmail.com
Am Donnerstag, dem 13.01.2022 um 08:45 +0100 schrieb Liliana Marie
Prikler:
Toggle quote (2 lines)
> some hitherto unpackaged... package[1]
> [1] https://github.com/Igalia/WPEBackend-fdo
It turns out we actually do have wpebackend-fdo and are even using it
in our webkitgtk build. I'll try updating the wpe libs to 1.12.0 and
wpewebkit to 2.34.3, with a libsoup-2 variant thrown in if need be.
Liliana Marie Prikler wrote 3 years ago
[PATCH 0/3] Update WPEWebkit to 2.34.3
(name . Leo Famulari)(address . leo@famulari.name)
03a850fdf75728e719a150855c32aa886084f91a.camel@gmail.com
Hi Leo, hi Guix,

the following patches update libwpe and wpebackend-fdo to 1.12.0 and
wpewebkit to 2.34.3. I checked that all three of them build, but I so
far haven't
1. done a libsoup-minimal-2 variant -- there's no dependents of
wpewebkit yet, so it's somewhat pointless.
2. checked whether the AVX patches from WebkitGTK need to be carried
over, or
3. tested how this impacts our WebkitGTK builds.

I'd appreciate if someone could help me out here, because Webkit builds
have a high chance of killing whatever else is running on my machine at
the moment -- or my machine if that fails.

Cheers

Liliana Marie Prikler (3):
gnu: libwpe: Update to 1.12.0.
gnu: wpebackend-fdo: Update to 1.12.0.
gnu: wpewebkit: Update to 2.34.3.

gnu/packages/webkit.scm | 29 ++++++++++++++++++++---------
1 file changed, 20 insertions(+), 9 deletions(-)

--
2.34.0
Liliana Marie Prikler wrote 3 years ago
[PATCH 2/3] gnu: wpebackend-fdo: Update to 1.12.0.
(name . Leo Famulari)(address . leo@famulari.name)
02ea6f9d561cd6004f8917b858aa8e3788f41ce1.camel@gmail.com
* gnu/packages/webkit.scm (wpebackend-fdo): Update to 1.12.0.
[build-system]: Use meson-build-system.
[inputs]: Add libepoxy.
---
gnu/packages/webkit.scm | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

Toggle diff (32 lines)
diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm
index 582adaddda..fc5172cfd7 100644
--- a/gnu/packages/webkit.scm
+++ b/gnu/packages/webkit.scm
@@ -99,21 +99,21 @@ (define-public libwpe
(define-public wpebackend-fdo
(package
(name "wpebackend-fdo")
- (version "1.6.1")
+ (version "1.12.0")
(source (origin
(method url-fetch)
(uri (string-append "https://wpewebkit.org/releases/"
"wpebackend-fdo-" version ".tar.xz"))
(sha256
(base32
- "1jdi43gciqjgvhnqxs160f3hmp1hkqhrllb0hhmldyxc4wryw3kl"))))
- (build-system cmake-build-system)
+ "1b3l02dns1yxw3rq18cv00qan4hp95mxw5b3ssc0fh93ap0wjfb2"))))
+ (build-system meson-build-system)
(arguments
`(#:tests? #f)) ;no tests
(native-inputs
(list pkg-config))
(inputs
- (list glib libwpe mesa wayland))
+ (list glib libepoxy libwpe mesa wayland))
(home-page "https://wpewebkit.org/")
(synopsis "Wayland WPE backend")
(description
--
2.34.0
Liliana Marie Prikler wrote 3 years ago
[PATCH 1/3] gnu: libwpe: Update to 1.12.0.
(name . Leo Famulari)(address . leo@famulari.name)
efeebab9f246a6401a82c77361520e27805e551c.camel@gmail.com
* gnu/packages/webkit.scm (libwpe): Update to 1.12.0.
[build-system]: Use meson-build-system.
---
gnu/packages/webkit.scm | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

Toggle diff (34 lines)
diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm
index 8e9aa2b1b5..582adaddda 100644
--- a/gnu/packages/webkit.scm
+++ b/gnu/packages/webkit.scm
@@ -30,6 +30,7 @@ (define-module (gnu packages webkit)
#:use-module (guix utils)
#:use-module (guix build utils)
#:use-module (guix build-system cmake)
+ #:use-module (guix build-system meson)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
#:use-module (gnu packages base)
@@ -70,7 +71,7 @@ (define-module (gnu packages webkit)
(define-public libwpe
(package
(name "libwpe")
- (version "1.6.0")
+ (version "1.12.0")
(source
(origin
(method url-fetch)
@@ -78,8 +79,8 @@ (define-public libwpe
(string-append "https://wpewebkit.org/releases/libwpe-"
version ".tar.xz"))
(sha256
- (base32 "141w35b488jjhanl3nrm0awrbcy6hb579fk8n9vbpx07m2wcd1rm"))))
- (build-system cmake-build-system)
+ (base32 "13618imck69w7fbmljlh62j4gnlspb9zfqzv9hlkck3bi8icmvp8"))))
+ (build-system meson-build-system)
(arguments
`(#:tests? #f)) ;no tests
(native-inputs
--
2.34.0
Liliana Marie Prikler wrote 3 years ago
[PATCH 3/3] gnu: wpewebkit: Update to 2.34.3.
(name . Leo Famulari)(address . leo@famulari.name)
0c85d5f5f60e855b80e9ad01687d2894c4462759.camel@gmail.com
* gnu/packages/webkit.scm (wpewebkit): Update to 2.34.3.
[#:phases]: Add ‘patch-cmake’ phase to fix an error in the install directories
of the documentation.
[inputs]: Add lcms.
---
gnu/packages/webkit.scm | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)

Toggle diff (48 lines)
diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm
index fc5172cfd7..d7751095c7 100644
--- a/gnu/packages/webkit.scm
+++ b/gnu/packages/webkit.scm
@@ -124,7 +124,7 @@ (define-public wpebackend-fdo
(define-public wpewebkit
(package
(name "wpewebkit")
- (version "2.30.5")
+ (version "2.34.3")
(source
(origin
(method url-fetch)
@@ -132,7 +132,7 @@ (define-public wpewebkit
(string-append "https://wpewebkit.org/releases/"
name "-" version ".tar.xz"))
(sha256
- (base32 "16imr0kmzhs7dz6jva9750xbsdz9v50playnagabajy30x7pymsb"))))
+ (base32 "1z20bza01ld4jvi0qx8xsl5y4czaniwpi8hxdjyirj1mrszy8pf3"))))
(build-system cmake-build-system)
(outputs '("out" "doc"))
(arguments
@@ -162,6 +162,15 @@ (define-public wpewebkit
"/xml/dtd/docbook/docbookx.dtd"))))
(find-files "Source" "\\.sgml$"))
#t))
+ (add-after 'unpack 'patch-cmake
+ (lambda _
+ (substitute* "Source/PlatformWPE.cmake"
+ (("(Documentation/wpe(-webextensions)?-)\\$\\{WPE_API_VERSION\\}"
+ all prefix)
+ (string-append prefix "${WPE_API_DOC_VERSION}"))
+ (("(html/wpe(-webextensions)?-)\\$\\{WPE_API_VERSION\\}"
+ all prefix)
+ (string-append prefix "${WPE_API_DOC_VERSION}")))))
(add-after 'install 'move-doc-files
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@@ -194,6 +203,7 @@ (define-public wpewebkit
("gst-plugins-base" ,gst-plugins-base)
("harfbuzz" ,harfbuzz)
("icu" ,icu4c)
+ ("lcms" ,lcms)
("libepoxy" ,libepoxy)
("libgcrypt" ,libgcrypt)
("libjpeg" ,libjpeg-turbo)
--
2.34.0
Leo Famulari wrote 3 years ago
Re: [PATCH 0/3] Update WPEWebkit to 2.34.3
(name . Liliana Marie Prikler)(address . liliana.prikler@gmail.com)
YeRkS1OmKvO5gW5F@jasmine.lan
On Sun, Jan 16, 2022 at 08:36:45AM +0100, Liliana Marie Prikler wrote:
Toggle quote (15 lines)
> Hi Leo, hi Guix,
>
> the following patches update libwpe and wpebackend-fdo to 1.12.0 and
> wpewebkit to 2.34.3. I checked that all three of them build, but I so
> far haven't
> 1. done a libsoup-minimal-2 variant -- there's no dependents of
> wpewebkit yet, so it's somewhat pointless.
> 2. checked whether the AVX patches from WebkitGTK need to be carried
> over, or
> 3. tested how this impacts our WebkitGTK builds.
>
> I'd appreciate if someone could help me out here, because Webkit builds
> have a high chance of killing whatever else is running on my machine at
> the moment -- or my machine if that fails.

Thanks, I'm testing the build of WebKitGtk now.

I noticed that GTK 4 depends on wpebackend-fdo. For now, we can change
GTK 4 on the master branch, but eventually wpebackend-fdo will be a
package that requires grafting to keep up to date.
Leo Famulari wrote 3 years ago
(name . Liliana Marie Prikler)(address . liliana.prikler@gmail.com)
YeRqPwJw2n0/XqO6@jasmine.lan
On Sun, Jan 16, 2022 at 08:36:45AM +0100, Liliana Marie Prikler wrote:
Toggle quote (2 lines)
> 3. tested how this impacts our WebkitGTK builds.

With these patches applied, Epiphany still works in the same way as
before. Epiphany is the major test of WebKitGTK functionality in Guix.
Liliana Marie Prikler wrote 3 years ago
(name . Leo Famulari)(address . leo@famulari.name)
541089850467e6a388adc25da9a50516aaf99c79.camel@gmail.com
Hi,

Am Sonntag, dem 16.01.2022 um 13:30 -0500 schrieb Leo Famulari:
Toggle quote (3 lines)
> I noticed that GTK 4 depends on wpebackend-fdo. For now, we can
> change GTK 4 on the master branch, but eventually wpebackend-fdo will
> be a package that requires grafting to keep up to date.
I'm fine with turning the wpebackend-fdo patch into a graft, I just
didn't notice the dependency.

Toggle quote (2 lines)
> With these patches applied, Epiphany still works in the same way as
> before.
Great, so we got WebkitGTK working, meaning we only need to disable
SSE2 outside of x86-64. I checked the file mentioned in webkitgtk's
disable-sse2 phase, and it seems wpewebkit mirrors that. So if I read
this correctly you only need to copypasta your old code.

Anything else I'm missing?
Leo Famulari wrote 3 years ago
(name . Liliana Marie Prikler)(address . liliana.prikler@gmail.com)
YfW0yK3D3dMstdnM@jasmine.lan
I pushed these patches as 07f45615c3600dd1405349a4f7c775394fbfd40d

Normally I don't push patches for other committers but this is security
sensitive.

On Sun, Jan 16, 2022 at 08:29:03PM +0100, Liliana Marie Prikler wrote:
Toggle quote (3 lines)
> I'm fine with turning the wpebackend-fdo patch into a graft, I just
> didn't notice the dependency.

I don't think a graft is necessary in this case.

Toggle quote (5 lines)
> Great, so we got WebkitGTK working, meaning we only need to disable
> SSE2 outside of x86-64. I checked the file mentioned in webkitgtk's
> disable-sse2 phase, and it seems wpewebkit mirrors that. So if I read
> this correctly you only need to copypasta your old code.

I'm not sure what old code of mine you were referring to. In any
case, wpewebkit doesn't build for us on i686-linux, so there can't be a
regression there:

Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 53197@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 53197
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help