Merge pull request #226182 from wegank/qt6-qtwebengine-refactor

qt6.qtwebengine: separate linux-only parts

Changed files
+13 -9
pkgs
development
libraries
qt-6
modules
+13 -9
pkgs/development/libraries/qt-6/modules/qtwebengine.nix
···
substituteInPlace cmake/Functions.cmake \
--replace "/bin/bash" "${buildPackages.bash}/bin/bash"
+
# Patch library paths in sources
+
substituteInPlace src/core/web_engine_library_info.cpp \
+
--replace "QLibraryInfo::path(QLibraryInfo::DataPath)" "\"$out\"" \
+
--replace "QLibraryInfo::path(QLibraryInfo::TranslationsPath)" "\"$out/translations\"" \
+
--replace "QLibraryInfo::path(QLibraryInfo::LibraryExecutablesPath)" "\"$out/libexec\""
+
''
+
+ lib.optionalString stdenv.isLinux ''
sed -i -e '/lib_loader.*Load/s!"\(libudev\.so\)!"${lib.getLib systemd}/lib/\1!' \
src/3rdparty/chromium/device/udev_linux/udev?_loader.cc
···
substituteInPlace src/3rdparty/chromium/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.cc \
--replace "/usr/share/X11/xkb" "${xkeyboard_config}/share/X11/xkb"
-
-
# Patch library paths in sources
-
substituteInPlace src/core/web_engine_library_info.cpp \
-
--replace "QLibraryInfo::path(QLibraryInfo::DataPath)" "\"$out\"" \
-
--replace "QLibraryInfo::path(QLibraryInfo::TranslationsPath)" "\"$out/translations\"" \
-
--replace "QLibraryInfo::path(QLibraryInfo::LibraryExecutablesPath)" "\"$out/libexec\""
'';
cmakeFlags = [
···
# android only. https://bugreports.qt.io/browse/QTBUG-100293
# "-DQT_FEATURE_webengine_native_spellchecker=ON"
"-DQT_FEATURE_webengine_sanitizer=ON"
+
"-DQT_FEATURE_webengine_kerberos=ON"
+
] ++ lib.optionals stdenv.isLinux [
"-DQT_FEATURE_webengine_webrtc_pipewire=ON"
-
"-DQT_FEATURE_webengine_kerberos=ON"
-
] ++ lib.optional enableProprietaryCodecs "-DQT_FEATURE_webengine_proprietary_codecs=ON";
+
] ++ lib.optionals enableProprietaryCodecs [
+
"-DQT_FEATURE_webengine_proprietary_codecs=ON"
+
];
propagatedBuildInputs = [
# Image formats
···
libevent
ffmpeg_4
-
+
] ++ lib.optionals stdenv.isLinux [
dbus
zlib
minizip