NixOS / nixpkgs

Nix Packages collection & NixOS
MIT License
18.31k stars 14.28k forks source link

QtWebKit needs to be deprecated #53079

Closed veprbl closed 1 year ago

veprbl commented 5 years ago

QtWebKit was deprecated in Qt 5.6. We are now using an outdated unofficial port:

https://github.com/NixOS/nixpkgs/blob/b0705bcbcebfea359643112fd200b549035d9503/pkgs/development/libraries/qt-5/5.12/default.nix#L40-L49

In some cases, applications already provide support for using QtWebEngine instead, we just need to enable it. The advantage of using QtWebEngine is that it is supported by the Qt upstream.

This issue is to track progress (or lack thereof) in deprecation of QtWebKit.

Overview

Legend: ✔︎ - dependency can be removed, ✘ - no straightforward solution was found, ? - dependency can be removed at a cost

How to help?

  1. Take an open item from the list that doesn't have a comment, google "\<itemname> qtwebengine" and "\<itemname> qtwebkit". Report what you find (or add a comment if you can edit the post).
  2. Take an open item from the list that does have a comment and ping a maintainer if the fix is possible. Alternatively try fixing it yourself.
bhipple commented 5 years ago

I don't think we'll be able to kill the dependency easily in google-musicmanager, since we're already on Google's latest release, which lists this as an explicit dependency:

$ curl http://dl.google.com/linux/musicmanager/deb/dists/stable/main/binary-amd64/Packages
Package: google-musicmanager-beta
Version: 1.0.467.4929-r0
Architecture: amd64
Maintainer: Google Music Team <googleplay-support-music@google.com>
Installed-Size: 16766
Pre-Depends: dpkg (>= 1.14.0)
Depends: libc6 (>= 2.16), libexpat1 (>= 2.0.1), libflac8 (>= 1.3.0), libgcc1 (>= 1:4.1.1), libidn11 (>= 1.13), libqt5core5a (>= 5.2.0), libqt5gui5 (>= 5.0.2) | libqt5gui5-gles (>= 5.0.2), libqt5network5 (>= 5.0.2), libqt5webkit5, libqt5widgets5 (>= 5.2.0), libstdc++6 (>= 4.6), libvorbisfile3 (>= 1.1.2), xdg-utils (>= 1.0.2)
KAMiKAZOW commented 5 years ago

We are now using an outdated unofficial port

Not unofficial – endorsed by Qt: https://code.qt.io/cgit/qt/qtwebkit.git/ And currently in the process of a massive overhaul thanks to Patreon funding.

veprbl commented 5 years ago

@KAMiKAZOW This is definitely a good news for qtwebkit and its users. However, we are using a specific 5.212-alpha version that is outdated and contains known CVE's. Looking at the repo at your link, it doesn't seem to contain any significant update to address those issues. I doubt anyone would endorse this software in its current state.

KAMiKAZOW commented 5 years ago

Looking at the repo at your link, it doesn't seem to contain any significant update to address those issues.

The development happens here on Github. "My" link was solely a reference proving that it's not unofficial but instead adopted by upstream Qt.

As you can read under https://github.com/qtwebkit/qtwebkit/blob/qtwebkit-dev/ReadMe.md#this-repository-development the qtwebkit-dev branch is the update to current WebKit master.

sikmir commented 4 years ago

zeal ported to qtwebengine (https://github.com/zealdocs/zeal/pull/1125), not released yet.

bachp commented 4 years ago

Freecad will be ported with the 0.19 release https://github.com/FreeCAD/FreeCAD/commit/75fd7231e05be6a7fcd76cd2c00f9eda0bef2f28, not released yet

bachp commented 4 years ago

messagelib no longer depends on qtwebengine since https://github.com/NixOS/nixpkgs/commit/c2366ae35036be6e1b26ec36ad6c9cf4d346ed27

gebner commented 4 years ago

freecad no longer depends on qtwebkit since we switched to the 0.19 prerelease in #98845/#100972.

jerith666 commented 3 years ago

The issue for OpenShot linked in the description is outdated; it's been superseded by https://github.com/OpenShot/openshot-qt/pull/3604.

milahu commented 2 years ago

no straightforward solution was found

example: https://github.com/scrapinghub/splash/issues/349

splash is not in nixpkgs. its needed for the legacy project portia (a GUI for scrapy)

impl commented 2 years ago

p4v doesn't depend on qtwebkit since #110168.

K900 commented 2 years ago

apitrace is done: #201032

gador commented 2 years ago

teamviewer builds and runs fine without qtwebkit in version 15.29.4 I cannot test the connectivity, though, since I don't have a teamviewer partner to test it with @jagajaga and @jraygauthier as maintainers

aidalgol commented 2 years ago

@das-g How are you going with fixing the kmymoney build? I'm hitting build errors in my attempts to build against qtwebengine.

das-g commented 2 years ago

@aidalgol working on it, should be ready in some minutes.

das-g commented 2 years ago

@aidalgol PR to switch kmymoney from qtwebkit to qtwebengine: https://github.com/NixOS/nixpkgs/pull/201953

LunNova commented 2 years ago

qgis depends on it and isn't in the main list.

Looks like it can build with QtWebEngine but won't work due to some bugs, see https://github.com/qgis/QGIS/commit/7c1d6165f127f682399f694d2a37377525eaba5d

totoroot commented 1 year ago

yacas does not rely on QtWebKit, since PR #147826 got merged. I think we can tick its box :ballot_box_with_check:

totoroot commented 1 year ago

quiterss seems to be unmaintained (see https://github.com/QuiteRSS/quiterss/issues/1566) so the issue dealing with the removal of QtWebKit (https://github.com/QuiteRSS/quiterss/issues/1573) will probably never be resolved.

The suggested move to QuiteRSS2 (https://github.com/QuiteRSS/quiterss2) might make sense, since it uses QtWebEngine, but I'm unsure about any unwanted implications this could lead to. Also, it too hasn't had commits since May 2020 and there is no stable release.

totoroot commented 1 year ago

qlandkartegt hasn't seen any updates since 2015 and can therefore probably be considered unmaintained/abandoned: https://sourceforge.net/projects/qlandkartegt/

On the AUR (patches fetched from there) it has been unmaintained as well: https://aur.archlinux.org/packages/qlandkartegt

I'd suggest changing the ✔︎ to a ✘ for its entry.

totoroot commented 1 year ago

copyq does not rely on QtWebKit, since PR https://github.com/NixOS/nixpkgs/pull/130670 got merged. I think we can tick its box :ballot_box_with_check:

totoroot commented 1 year ago

Issue for a port from QtWebKit to QtWebEngine for kexi and kreport are still open: pkgs/development/libraries/kreport/

K900 commented 1 year ago

Qtwebkit has been marked insecure since #201028. No point in trying to check every single box.

totoroot commented 1 year ago

Fantastic :sweat_smile: Thanks for the notice!