Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch from webkit2gtk 4.0 to 4.1 #92

Closed
wants to merge 1 commit into from
Closed

Conversation

jbicha
Copy link

@jbicha jbicha commented Jan 25, 2024

webkit2gtk 4.1 is the same as 4.0 except that 4.1 uses libsoup3 and 4.0 uses libsoup2.4. Since your project doesn't use libsoup directly, this is an easy swap.

Every distro with current webkitgtk support should have the 4.1 packages including Debian 12 and Ubuntu 22.04 LTS.

Fedora has stopped building the 4.0 packages in preparation for their Fedora 40 release in a few months. Debian and Ubuntu are working on removing 4.0 also.

@pboushy
Copy link

pboushy commented May 3, 2024

This looks like it could prevent old gp-saml-gui from running on older OSes (e.g. Ubuntu 20.04)

Wouldn't it be better to have it use either 4.0 or 4.1?

@jbicha
Copy link
Author

jbicha commented May 3, 2024

webkit2gtk does not have any security support in Ubuntu 20.04 LTS. No other distros that old provide security support for webkit2gtk either. Personally, I think you'd be better off just switching like this merge request does.

However, it is possible to modify the code to fall back to importing 4.0 if 4.1 is not available.

@dlenski
Copy link
Owner

dlenski commented May 3, 2024

webkit2gtk does not have any security support in Ubuntu 20.04 LTS. No other distros that old provide security support for webkit2gtk either.

It's still an extremely widely-used distribution (and what I'm using myself 😬).
And it appears that it is still receiving security updates from Ubuntu, at least it's in the security suite for Ubuntu 20.04 LTS packages

This looks like it could prevent old gp-saml-gui from running on older OSes (e.g. Ubuntu 20.04)

Wouldn't it be better to have it use either 4.0 or 4.1?

I agree with @pboushy here. How about this?

import warnings
import gi

gi.require_version('Gtk', '3.0')
try:
    gi.require_version('WebKit2', '4.1')
except ValueError:  # I wish this were ImportError
    gi.require_version('WebKit2', '4.0')
    warnings.warn("Using WebKit2Gtk 4.0 (obsolete); please upgrade to WebKit2Gtk 4.1")

@jbicha
Copy link
Author

jbicha commented May 3, 2024

You can get a better view by looking at https://launchpad.net/ubuntu/+source/webkit2gtk . Yes, Ubuntu 20.04 LTS did get security support for webkit2gtk but it stopped a year ago.

This is because of upstream webkit2gtk's dependency/support policy: https://docs.webkit.org/Ports/WebKitGTK%20and%20WPE%20WebKit/DependenciesPolicy.html

So honestly, I wouldn't recommend you use an old distro if you want to use webkit2gtk apps that access the Internet. Maybe there isn't much risk for this app (I know almost nothing about the app.) My interest here was basically because I needed to update packages in Debian and Ubuntu.

@dlenski
Copy link
Owner

dlenski commented May 3, 2024

You can get a better view by looking at https://launchpad.net/ubuntu/+source/webkit2gtk . Yes, Ubuntu 20.04 LTS did get security support for webkit2gtk but it stopped a year ago.

This is because of upstream webkit2gtk's dependency/support policy: https://docs.webkit.org/Ports/WebKitGTK%20and%20WPE%20WebKit/DependenciesPolicy.html

Thanks. So it actually doesn't get the full 5 years’ worth of support that we'd expect for Ubuntu LTS (https://ubuntu.com/about/release-cycle#:~:text=The%20lifecycle%20consists,without%20a%20subscription)…?

🤔

That's pretty surprising.

So honestly, I wouldn't recommend you use an old distro if you want to use webkit2gtk apps that access the Internet. Maybe there isn't much risk for this app (I know almost nothing about the app.) My interest here was basically because I needed to update packages in Debian and Ubuntu.

To a large extent, end users of proprietary VPN software like PAN GlobalProtect Just Want It To Work™ (see #37 (comment)) and have no control over the security properties of the servers, which are themselves frequently obsolete and inconsistent (see GnuTLS issue #958 for some discussion).

So I've gone with adf8261 as the solution here (warns and falls back to 4.0, if needed).

dlenski added a commit that referenced this pull request May 3, 2024
Thanks to @jbicha in #92 for
bringing this to my attention; I've chosen to implement this with automatic
fallback to v4.0, with a warning.
@jbicha
Copy link
Author

jbicha commented May 4, 2024

Yes, it's mentioned (although the specifics are currently out of date) at https://wiki.ubuntu.com/SecurityTeam/FAQ#WebKitGTK

@jbicha jbicha closed this May 4, 2024
dlenski added a commit that referenced this pull request May 4, 2024
@dlenski dlenski mentioned this pull request May 9, 2024
erseco pushed a commit to erseco/gp-saml-gui that referenced this pull request Oct 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants