Merge pull request #173573 from jtojnar/webkitgtk-2.36.2-bp

This commit is contained in:
Martin Weinelt
2022-05-21 01:01:47 +02:00
committed by GitHub
4 changed files with 33 additions and 7 deletions

View File

@@ -6,7 +6,9 @@
, libxkbcommon
, libGL
, ninja
, libX11 }:
, libX11
, webkitgtk
}:
stdenv.mkDerivation rec {
pname = "libwpe";
@@ -33,7 +35,7 @@ stdenv.mkDerivation rec {
description = "General-purpose library for WPE WebKit";
license = licenses.bsd2;
homepage = "https://wpewebkit.org";
maintainers = with maintainers; [ matthewbauer ];
maintainers = webkitgtk.meta.maintainers ++ (with maintainers; [ matthewbauer ]);
platforms = platforms.linux;
};
}

View File

@@ -10,7 +10,9 @@
, libwpe
, libxkbcommon
, libGL
, libX11 }:
, libX11
, webkitgtk
}:
stdenv.mkDerivation rec {
pname = "wpebackend-fdo";
@@ -46,7 +48,7 @@ stdenv.mkDerivation rec {
description = "Freedesktop.org backend for WPE WebKit";
license = licenses.bsd2;
homepage = "https://wpewebkit.org";
maintainers = with maintainers; [ matthewbauer ];
maintainers = webkitgtk.meta.maintainers ++ (with maintainers; [ matthewbauer ]);
platforms = platforms.linux;
};
}

View File

@@ -18,6 +18,8 @@
, gtk3
, wayland
, libwebp
, libwpe
, libwpe-fdo
, enchant2
, xorg
, libxkbcommon
@@ -64,7 +66,7 @@ assert enableGeoLocation -> geoclue2 != null;
stdenv.mkDerivation rec {
pname = "webkitgtk";
version = "2.36.1";
version = "2.36.2";
outputs = [ "out" "dev" ];
@@ -72,7 +74,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "https://webkitgtk.org/releases/${pname}-${version}.tar.xz";
sha256 = "sha256-AUnqX7HSDyqZgWd9RclSoEczAAHqJKjcKQNSOfEsDI8=";
sha256 = "/pO920oCwONvkm77boHSiv0oi4gk9sXPanXPQCKOAI4=";
};
patches = lib.optionals stdenv.isLinux [
@@ -81,7 +83,15 @@ stdenv.mkDerivation rec {
inherit (builtins) storeDir;
inherit (addOpenGLRunpath) driverLink;
})
./libglvnd-headers.patch
# Hardcode path to WPE backend
# https://github.com/NixOS/nixpkgs/issues/110468
(substituteAll {
src = ./fdo-backend-path.patch;
wpebackend_fdo = libwpe-fdo;
})
];
preConfigure = lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) ''
@@ -163,6 +173,8 @@ stdenv.mkDerivation rec {
libseccomp
systemd
wayland
libwpe
libwpe-fdo
xdg-dbus-proxy
] ++ lib.optional enableGeoLocation geoclue2;
@@ -175,7 +187,6 @@ stdenv.mkDerivation rec {
"-DENABLE_INTROSPECTION=ON"
"-DPORT=GTK"
"-DUSE_LIBHYPHEN=OFF"
"-DUSE_WPE_RENDERER=OFF"
"-DUSE_SOUP2=${if lib.versions.major libsoup.version == "2" then "ON" else "OFF"}"
] ++ lib.optionals stdenv.isDarwin [
"-DENABLE_GAMEPAD=OFF"

View File

@@ -0,0 +1,11 @@
--- a/Source/WebKit/UIProcess/glib/WebProcessPoolGLib.cpp
+++ b/Source/WebKit/UIProcess/glib/WebProcessPoolGLib.cpp
@@ -89,7 +89,7 @@
#if PLATFORM(WAYLAND)
if (WebCore::PlatformDisplay::sharedDisplay().type() == WebCore::PlatformDisplay::Type::Wayland) {
#if USE(WPE_RENDERER)
- wpe_loader_init("libWPEBackend-fdo-1.0.so.1");
+ wpe_loader_init("@wpebackend_fdo@/lib/libWPEBackend-fdo-1.0.so.1");
if (AcceleratedBackingStoreWayland::checkRequirements()) {
parameters.hostClientFileDescriptor = IPC::Attachment(UnixFileDescriptor(wpe_renderer_host_create_client(), UnixFileDescriptor::Adopt));
parameters.implementationLibraryName = FileSystem::fileSystemRepresentation(String::fromLatin1(wpe_loader_get_loaded_implementation_library_name()));