Mastodon Systeemkabouter blog – libwebkit2gtk-4.0 on Debian 13

libwebkit2gtk-4.0 on Debian 13

Posted on di 11 november 2025 in 2025

Just as a quick note to future self: To run Ivanti VPN on Debian, you need libwebkit2gtk-4.0, while Debian 13 moved to version 4.1. The Ivanti client will install, but fail to start the GUI:

systeemkabouter@vm:~$ /opt/pulsesecure/bin/pulseUI
/opt/pulsesecure/bin/pulseUI: error while loading shared libraries: libwebkit2gtk-4.0.so.37: cannot open shared object file: No such file or directory

I created a Debian 13 VM because I did not want to mess with older packages in my main desktop. I first want to make sure the closed source VPN software works and behaves.

After doing a simple Debian Desktop with Gnome install in the VM, I installed the VPN client package that I obtained:

root@vm:/home/systeemkabouter# apt install ./pulsesecure_22.8.R4_amd64.deb 
Note, selecting 'pulsesecure' instead of './pulsesecure_22.8.R4_amd64.deb'
Installing:
  pulsesecure

Installing dependencies:
  libatkmm-1.6-1v5  libcairomm-1.0-1v5  libgtkmm-3.0-1t64  libnss3-tools  libpangomm-1.4-1v5

Summary:
  Upgrading: 0, Installing: 6, Removing: 0, Not Upgrading: 0
  Download size: 1,211 kB / 10.3 MB
  Space needed: 49.3 MB / 3,648 MB available

Continue? [Y/n] 
Get:1 /home/systeemkabouter/pulsesecure_22.8.R4_amd64.deb pulsesecure amd64 22.8.R4 [8,049 kB]
Get:2 http://deb.debian.org/debian trixie/main amd64 libatkmm-1.6-1v5 amd64 2.28.4-1+b2 [82.3 kB]
Get:3 http://deb.debian.org/debian trixie/main amd64 libcairomm-1.0-1v5 amd64 1.14.5-2+b1 [57.3 kB]
Get:4 http://deb.debian.org/debian trixie/main amd64 libpangomm-1.4-1v5 amd64 2.46.4-1+b2 [63.0 kB]
Get:5 http://deb.debian.org/debian trixie/main amd64 libgtkmm-3.0-1t64 amd64 3.24.10-1 [1,009 kB]
Fetched 1,211 kB in 0s (24.4 MB/s)       
[cut here]

Then I edited my /etc/apt/sources.list to include bookworm repositories:

deb http://deb.debian.org/debian/ trixie main non-free-firmware non-free contrib
deb http://deb.debian.org/debian/ bookworm main non-free-firmware non-free contrib

deb http://security.debian.org/debian-security trixie-security main non-free-firmware non-free contrib
deb http://security.debian.org/debian-security bookworm-security main non-free-firmware non-free contrib

[cut here]

Followed by an apt update and an apt search for the missing library:

root@vm:/home/systeemkabouter# apt-cache search libwebkit2gtk-4.0
libwebkit2gtk-4.0-doc - WebKitGTK documentation (transitional dummy package)
libwebkit2gtk-4.0-37 - Web content engine library for GTK
libwebkit2gtk-4.0-dev - Web content engine library for GTK - development files

That looked OK, so I tried te install it. It does pull in more dependencies that could break stuff:

root@vm:/home/systeemkabouter# apt-get install libwebkit2gtk-4.0-37
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  libavif15 libdav1d6 libicu72 libjavascriptcoregtk-4.0-18 librav1e0 libsvtav1enc1
Suggested packages:
  gstreamer1.0-alsa
The following NEW packages will be installed:
  libavif15 libdav1d6 libicu72 libjavascriptcoregtk-4.0-18 librav1e0 libsvtav1enc1 libwebkit2gtk-4.0-37
0 upgraded, 7 newly installed, 0 to remove and 0 not upgraded.
Need to get 42.7 MB of archives.
After this operation, 175 MB of additional disk space will be used.
Do you want to continue? [Y/n] 
Get:1 http://security.debian.org/debian-security bookworm-security/main amd64 libjavascriptcoregtk-4.0-18 amd64 2.50.1-1~deb12u1 [7,235 kB]
Get:2 http://deb.debian.org/debian bookworm/main amd64 libdav1d6 amd64 1.0.0-2+deb12u1 [513 kB]
Get:3 http://deb.debian.org/debian bookworm/main amd64 librav1e0 amd64 0.5.1-6 [763 kB]
Get:4 http://deb.debian.org/debian bookworm/main amd64 libsvtav1enc1 amd64 1.4.1+dfsg-1 [2,121 kB]
Get:5 http://deb.debian.org/debian bookworm/main amd64 libavif15 amd64 0.11.1-1+deb12u1 [94.4 kB]
Get:6 http://deb.debian.org/debian bookworm/main amd64 libicu72 amd64 72.1-3+deb12u1 [9,376 kB]
Get:7 http://security.debian.org/debian-security bookworm-security/main amd64 libwebkit2gtk-4.0-37 amd64 2.50.1-1~deb12u1 [22.6 MB]
Fetched 42.7 MB in 0s (207 MB/s)   
[cut here]

After that, I commented the bookworm repositories in /etc/apt/sources.list so they will not be used during regular package installs and updates:

deb http://deb.debian.org/debian/ trixie main non-free-firmware non-free contrib
#deb http://deb.debian.org/debian/ bookworm main non-free-firmware non-free contrib

deb http://security.debian.org/debian-security trixie-security main non-free-firmware non-free contrib
#deb http://security.debian.org/debian-security bookworm-security main non-free-firmware non-free contrib
[cut here]

Now the GUI loads fine

Ivanti VPN screenshot

There were no real issues with packages conflicting. So if the VPN software does actually work, I could repeat the proces on my desktop machine instead of in a virtual machine.

At moments like this I miss the immutability/rollback some other Linux distributions have build-in. But other than that, Debian works fine for me.