cancel
Showing results for 
Search instead for 
Did you mean: 

Fedora 27 - webkitgtk no longer supported

SOLVED
jamey
Occasional Contributor

Fedora 27 - webkitgtk no longer supported

Hi all, I recently upgraded to Fedora 27. Only afterward did I come to find out webkitgtk is no longer in the repos and Fedora has dropped the package as of the Fedora 27 release.

 

 

 

Is anyone aware of a workaround? I manually downloaded and installed the Fedora 26 webkitgtk but it fails hard with issues involving undefined symbols.

 

performing an ldd -r against the package:

ldd -r  /lib64/libwebkitgtk-1.0.so.0

shows these issues at the bottom.

 

undefined symbol: cairo_gl_surface_get_width (/lib64/libwebkitgtk-1.0.so.0)
undefined symbol: cairo_egl_device_create (/lib64/libwebkitgtk-1.0.so.0)
undefined symbol: cairo_glx_device_create (/lib64/libwebkitgtk-1.0.so.0)
undefined symbol: cairo_gl_surface_get_height (/lib64/libwebkitgtk-1.0.so.0)
undefined symbol: cairo_gl_device_set_thread_aware (/lib64/libwebkitgtk-1.0.so.0)
undefined symbol: cairo_gl_surface_create_for_texture (/lib64/libwebkitgtk-1.0.so.0)

Any assistance would be appreciated. 

 

PulseClient used: ps-pulse-linux-5.3r3.0-b1021-centos-rhel-64-bit-installer.rpm

webkitgtk used: webkitgtk-2.4.11-5.fc26.x86_64.rpm

 

Thanks a bunch,

 

Jake

 

1 ACCEPTED SOLUTION

Accepted Solutions
jamey
Occasional Contributor

Re: Fedora 27 - webkitgtk no longer supported

Yeah, that's ugly but may hold us over until an official fix is in place! With the Holidays and the possible code rewrite being needed, that could be a while. I use Fedora as my Work OS and Enjoy working from home :-)

 

NOTE: For those on Fedora 28 try this instead: Fedora 28 workaround

 

For those who aren't sure how to do this here you go.

 

1. Make a Directory to work in:

 

mkdir -p /some/empty/dir

 

and change to that directory.

 

cd /some/empty/dir

 

2. Get the GnuCash package (Don't DNF install it)

 

wget http://dl.fedoraproject.org/pub/fedora/linux/releases/27/Everything/x86_64/os/Packages/g/gnucash-2.6.18-1.fc27.x86_64.rpm

 

3. Extract the contents of the package.

 

rpm2cpio gnucash-2.6.18-1.fc27.x86_64.rpm | cpio -idmv

 

4. Move the required files to /usr/local/pulse (I'm assuming you have already installed and are now stuck in the same spot we are here)

 

sudo cp usr/lib64/gnucash/libjavascriptcoregtk-1.0.so.0.16.19 /usr/local/pulse/
sudo cp usr/lib64/gnucash/libwebkitgtk-1.0.so.0.22.17 /usr/local/pulse/

 

 

5. Change directory and create soft links.

 

cd /usr/local/pulse

 

sudo ln -s libjavascriptcoregtk-1.0.so.0.16.19 libjavascriptcoregtk-1.0.so

 

sudo ln -s libjavascriptcoregtk-1.0.so.0.16.19 libjavascriptcoregtk-1.0.so.0

 

sudo ln -s libwebkitgtk-1.0.so.0.22.17 libwebkitgtk-1.0.so

 

sudo ln -s libwebkitgtk-1.0.so.0.22.17 libwebkitgtk-1.0.so.0

 

When this is done you should be able to launch the GUI like always and setup your VPN Connection. I've confirmed it works to include 2FA via Duo connection.

 

Note: You can now remove the rpm and extracted rpm from your system.

 

 

sudo rm -rf /some/empty/dir
sudo rm -rf gnucash-2.6.18-1.fc27.x86_64.rpm

 

View solution in original post

25 REPLIES 25
kita
Regular Contributor

Re: Fedora 27 - webkitgtk no longer supported

Hello Jake,

 

Thank you for bringing this to our attention. We'll attempt to run some testing against Fedora 27 and confirm the problem.  If confirmed, we will file a bug report on this issue. 

jamey
Occasional Contributor

Re: Fedora 27 - webkitgtk no longer supported

Great thank you! looking forward to the results.

 

Also, I tried to remove all of my packages and start fresh. To show my current process and point of getting stuck.

 

I had to also install xulrunner.

 

Process: 

rpm -ivh ps-pulse-linux-5.3r3.0-b1021-centos-rhel-64-bit-installer.rpm

 

I then run: 

sudo /usr/local/pulse/PulseClient_x86_64.sh install_dependency_packages

(this complaints about xulrunner and webkitgtk) 

 

I grab a rpm for both in this case:

xulrunner-44.0-9.fc26.x86_64.rpm

webkitgtk-2.4.11-5.fc26.x86_64.rpm

 

installation of xulrunner goes fine.

rpm -ivh xulrunner-44.0-9.fc26.x86_64.rpm

 

try to install webkitgtk:

rpm -ivh webkitgtk-2.4.11-5.fc26.x86_64.rpm

get this error:

error: Failed dependencies:
	webkitgtk < 2.4.12 is obsoleted by (installed) fedora-obsolete-packages-27-11.noarch

 

I uninstall the obsolete fedora package:

sudo dnf remove fedora-obsolete-packages-27-11

 

I can now install the webhitgtk:

rpm -ivh webkitgtk-2.4.11-5.fc26.x86_64.rpm

run the dependency script now works fine but when running the GUI it never comes up.

 

if I run the GUI from the command line:

 /usr/local/pulse/pulseUi

I'm back to the original issue of missing cairo symbols.

 

ERROR:

/usr/local/pulse/pulseUi: symbol lookup error: /lib64/libwebkitgtk-1.0.so.0: undefined symbol: cairo_gl_surface_get_width

 

here is the full output of an ldd -r on the webkitgtk package.

ldd -r  /lib64/libwebkitgtk-1.0.so.0

output:

	linux-vdso.so.1 (0x00007fff90ff5000)
	libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f834840e000)
	libjavascriptcoregtk-1.0.so.0 => /lib64/libjavascriptcoregtk-1.0.so.0 (0x00007f8347ac5000)
	libenchant.so.1 => /lib64/libenchant.so.1 (0x00007f83478b9000)
	libharfbuzz-icu.so.0 => /lib64/libharfbuzz-icu.so.0 (0x00007f83476b6000)
	libharfbuzz.so.0 => /lib64/libharfbuzz.so.0 (0x00007f834741e000)
	libgmodule-2.0.so.0 => /lib64/libgmodule-2.0.so.0 (0x00007f834721a000)
	libgthread-2.0.so.0 => /lib64/libgthread-2.0.so.0 (0x00007f8347018000)
	libgstapp-1.0.so.0 => /lib64/libgstapp-1.0.so.0 (0x00007f8346e09000)
	libgstaudio-1.0.so.0 => /lib64/libgstaudio-1.0.so.0 (0x00007f8346b9d000)
	libgstfft-1.0.so.0 => /lib64/libgstfft-1.0.so.0 (0x00007f8346992000)
	libgstpbutils-1.0.so.0 => /lib64/libgstpbutils-1.0.so.0 (0x00007f834675a000)
	libgstvideo-1.0.so.0 => /lib64/libgstvideo-1.0.so.0 (0x00007f83464c5000)
	libgstbase-1.0.so.0 => /lib64/libgstbase-1.0.so.0 (0x00007f8346261000)
	libgstreamer-1.0.so.0 => /lib64/libgstreamer-1.0.so.0 (0x00007f8345f2c000)
	libgtk-x11-2.0.so.0 => /lib64/libgtk-x11-2.0.so.0 (0x00007f83458a9000)
	libgdk-x11-2.0.so.0 => /lib64/libgdk-x11-2.0.so.0 (0x00007f83455e7000)
	libpangocairo-1.0.so.0 => /lib64/libpangocairo-1.0.so.0 (0x00007f83453d9000)
	libatk-1.0.so.0 => /lib64/libatk-1.0.so.0 (0x00007f83451b3000)
	libcairo.so.2 => /lib64/libcairo.so.2 (0x00007f8344e9a000)
	libgdk_pixbuf-2.0.so.0 => /lib64/libgdk_pixbuf-2.0.so.0 (0x00007f8344c72000)
	libjpeg.so.62 => /lib64/libjpeg.so.62 (0x00007f8344a0a000)
	libsecret-1.so.0 => /lib64/libsecret-1.so.0 (0x00007f83447b8000)
	libsoup-2.4.so.1 => /lib64/libsoup-2.4.so.1 (0x00007f83444c7000)
	libgio-2.0.so.0 => /lib64/libgio-2.0.so.0 (0x00007f834412d000)
	libxslt.so.1 => /lib64/libxslt.so.1 (0x00007f8343eee000)
	libxml2.so.2 => /lib64/libxml2.so.2 (0x00007f8343b88000)
	libGL.so.1 => /lib64/libGL.so.1 (0x00007f83438fc000)
	libEGL.so.1 => /lib64/libEGL.so.1 (0x00007f83436e8000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007f83434e4000)
	libpangoft2-1.0.so.0 => /lib64/libpangoft2-1.0.so.0 (0x00007f83432cd000)
	libpango-1.0.so.0 => /lib64/libpango-1.0.so.0 (0x00007f834307f000)
	libgobject-2.0.so.0 => /lib64/libgobject-2.0.so.0 (0x00007f8342e2c000)
	libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x00007f8342b18000)
	libfontconfig.so.1 => /lib64/libfontconfig.so.1 (0x00007f83428d3000)
	libfreetype.so.6 => /lib64/libfreetype.so.6 (0x00007f834261e000)
	libpng16.so.16 => /lib64/libpng16.so.16 (0x00007f83423eb000)
	libsqlite3.so.0 => /lib64/libsqlite3.so.0 (0x00007f83420ee000)
	libicui18n.so.57 => /lib64/libicui18n.so.57 (0x00007f8341c7b000)
	libicuuc.so.57 => /lib64/libicuuc.so.57 (0x00007f83418d6000)
	libicudata.so.57 => /lib64/libicudata.so.57 (0x00007f833fe59000)
	libwebp.so.7 => /lib64/libwebp.so.7 (0x00007f833fbf1000)
	libXcomposite.so.1 => /lib64/libXcomposite.so.1 (0x00007f833f9ee000)
	libXdamage.so.1 => /lib64/libXdamage.so.1 (0x00007f833f7eb000)
	libXfixes.so.3 => /lib64/libXfixes.so.3 (0x00007f833f5e5000)
	libXrender.so.1 => /lib64/libXrender.so.1 (0x00007f833f3db000)
	libXt.so.6 => /lib64/libXt.so.6 (0x00007f833f173000)
	libX11.so.6 => /lib64/libX11.so.6 (0x00007f833ee35000)
	libz.so.1 => /lib64/libz.so.1 (0x00007f833ec1e000)
	libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007f833e898000)
	libm.so.6 => /lib64/libm.so.6 (0x00007f833e543000)
	libc.so.6 => /lib64/libc.so.6 (0x00007f833e15e000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f834aa84000)
	libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f833df47000)
	libgraphite2.so.3 => /lib64/libgraphite2.so.3 (0x00007f833dd1b000)
	libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f833daa8000)
	libgsttag-1.0.so.0 => /lib64/libgsttag-1.0.so.0 (0x00007f833d86d000)
	liborc-0.4.so.0 => /lib64/liborc-0.4.so.0 (0x00007f833d5f1000)
	librt.so.1 => /lib64/librt.so.1 (0x00007f833d3e9000)
	libXinerama.so.1 => /lib64/libXinerama.so.1 (0x00007f833d1e6000)
	libXi.so.6 => /lib64/libXi.so.6 (0x00007f833cfd5000)
	libXrandr.so.2 => /lib64/libXrandr.so.2 (0x00007f833cdca000)
	libXcursor.so.1 => /lib64/libXcursor.so.1 (0x00007f833cbbf000)
	libXext.so.6 => /lib64/libXext.so.6 (0x00007f833c9ad000)
	libpixman-1.so.0 => /lib64/libpixman-1.so.0 (0x00007f833c708000)
	libxcb-shm.so.0 => /lib64/libxcb-shm.so.0 (0x00007f833c504000)
	libxcb.so.1 => /lib64/libxcb.so.1 (0x00007f833c2dc000)
	libxcb-render.so.0 => /lib64/libxcb-render.so.0 (0x00007f833c0ce000)
	libgcrypt.so.20 => /lib64/libgcrypt.so.20 (0x00007f833bdb5000)
	libgpg-error.so.0 => /lib64/libgpg-error.so.0 (0x00007f833bba0000)
	libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00007f833b953000)
	libffi.so.6 => /lib64/libffi.so.6 (0x00007f833b74b000)
	libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f833b522000)
	libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f833b308000)
	libmount.so.1 => /lib64/libmount.so.1 (0x00007f833b0b4000)
	liblzma.so.5 => /lib64/liblzma.so.5 (0x00007f833ae8e000)
	libGLX.so.0 => /lib64/libGLX.so.0 (0x00007f833ac5c000)
	libGLdispatch.so.0 => /lib64/libGLdispatch.so.0 (0x00007f833a9a6000)
	libthai.so.0 => /lib64/libthai.so.0 (0x00007f833a79c000)
	libexpat.so.1 => /lib64/libexpat.so.1 (0x00007f833a56a000)
	libbz2.so.1 => /lib64/libbz2.so.1 (0x00007f833a359000)
	libSM.so.6 => /lib64/libSM.so.6 (0x00007f833a151000)
	libICE.so.6 => /lib64/libICE.so.6 (0x00007f8339f35000)
	libXau.so.6 => /lib64/libXau.so.6 (0x00007f8339d31000)
	libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00007f8339a4a000)
	libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x00007f8339817000)
	libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007f8339613000)
	libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00007f8339404000)
	libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007f8339200000)
	libpcre2-8.so.0 => /lib64/libpcre2-8.so.0 (0x00007f8338f7c000)
	libblkid.so.1 => /lib64/libblkid.so.1 (0x00007f8338d31000)
	libuuid.so.1 => /lib64/libuuid.so.1 (0x00007f8338b2c000)
	libdatrie.so.1 => /lib64/libdatrie.so.1 (0x00007f8338925000)
undefined symbol: cairo_gl_surface_get_width	(/lib64/libwebkitgtk-1.0.so.0)
undefined symbol: cairo_egl_device_create	(/lib64/libwebkitgtk-1.0.so.0)
undefined symbol: cairo_glx_device_create	(/lib64/libwebkitgtk-1.0.so.0)
undefined symbol: cairo_gl_surface_get_height	(/lib64/libwebkitgtk-1.0.so.0)
undefined symbol: cairo_gl_device_set_thread_aware	(/lib64/libwebkitgtk-1.0.so.0)
undefined symbol: cairo_gl_surface_create_for_texture	(/lib64/libwebkitgtk-1.0.so.0)

Hope this helps!

 

doppiaemme
New Contributor

Re: Fedora 27 - webkitgtk no longer supported

Same problem here, Pulse should recompile PulseUI with the latest version of webkit tk because I am afraid that old this library will be soon depreacted by all the main distributions.

M

anonymouscoward
Occasional Visitor

Re: Fedora 27 - webkitgtk no longer supported

I've found an ugly workaround.

gnucash package has bundled these old webkitgtk libs into it to overcome this issue.

So I downloaded gnucash rpm from here gnucash-2.6.18-1.fc27.x86_64.rpm

and extracted:

libjavascriptcoregtk-1.0.so -> libjavascriptcoregtk-1.0.so.0.16.19
libjavascriptcoregtk-1.0.so.0 -> libjavascriptcoregtk-1.0.so.0.16.19
libjavascriptcoregtk-1.0.so.0.16.19

libwebkitgtk-1.0.so -> libwebkitgtk-1.0.so.0.22.17
libwebkitgtk-1.0.so.0 -> libwebkitgtk-1.0.so.0.22.17
libwebkitgtk-1.0.so.0.22.17

to /usr/local/pulse

And everything is working now.

Hope this helps...

jamey
Occasional Contributor

Re: Fedora 27 - webkitgtk no longer supported

Yeah, that's ugly but may hold us over until an official fix is in place! With the Holidays and the possible code rewrite being needed, that could be a while. I use Fedora as my Work OS and Enjoy working from home :-)

 

NOTE: For those on Fedora 28 try this instead: Fedora 28 workaround

 

For those who aren't sure how to do this here you go.

 

1. Make a Directory to work in:

 

mkdir -p /some/empty/dir

 

and change to that directory.

 

cd /some/empty/dir

 

2. Get the GnuCash package (Don't DNF install it)

 

wget http://dl.fedoraproject.org/pub/fedora/linux/releases/27/Everything/x86_64/os/Packages/g/gnucash-2.6.18-1.fc27.x86_64.rpm

 

3. Extract the contents of the package.

 

rpm2cpio gnucash-2.6.18-1.fc27.x86_64.rpm | cpio -idmv

 

4. Move the required files to /usr/local/pulse (I'm assuming you have already installed and are now stuck in the same spot we are here)

 

sudo cp usr/lib64/gnucash/libjavascriptcoregtk-1.0.so.0.16.19 /usr/local/pulse/
sudo cp usr/lib64/gnucash/libwebkitgtk-1.0.so.0.22.17 /usr/local/pulse/

 

 

5. Change directory and create soft links.

 

cd /usr/local/pulse

 

sudo ln -s libjavascriptcoregtk-1.0.so.0.16.19 libjavascriptcoregtk-1.0.so

 

sudo ln -s libjavascriptcoregtk-1.0.so.0.16.19 libjavascriptcoregtk-1.0.so.0

 

sudo ln -s libwebkitgtk-1.0.so.0.22.17 libwebkitgtk-1.0.so

 

sudo ln -s libwebkitgtk-1.0.so.0.22.17 libwebkitgtk-1.0.so.0

 

When this is done you should be able to launch the GUI like always and setup your VPN Connection. I've confirmed it works to include 2FA via Duo connection.

 

Note: You can now remove the rpm and extracted rpm from your system.

 

 

sudo rm -rf /some/empty/dir
sudo rm -rf gnucash-2.6.18-1.fc27.x86_64.rpm

 

flipPipe
Frequent Contributor

Re: Fedora 27 - webkitgtk no longer supported

It would be nice if PS deliver a NetworkManager plugin and not a standalone application.

doppiaemme
New Contributor

Re: Fedora 27 - webkitgtk no longer supported

Hi,

if you don't need enforcements provided by host checker you can use networkmanager openconnect plugin.

Successfully tested with plasma kde

 

plasma-nm-openconnect-5.10.5-1.fc27.x86_64
openconnect-7.08-4.fc27.x86_64
NetworkManager-openconnect-1.2.4-6.fc27.x86_64

 

with PCS 8.1 and 8.3.

Regards

MM

AGuerra
New Contributor

Re: Fedora 27 - webkitgtk no longer supported

Hello,

I've followed all the steps but I continue with the problem.

If I try to execute the GUI using the terminal, i can see next message:

./pulseUi
./pulseUi: error while loading shared libraries: libwebkitgtk-1.0.so.0: cannot open shared object file: No such file or directory

 

the directory has next items:

ll
total 67576
-rwxr-xr-x. 1 root root 17254 Feb 27 2017 ConfigurePulse.sh
drwxr-xr-x. 6 root root 4096 Feb 27 2017 html
lrwxrwxrwx. 1 root root 35 Nov 27 16:46 libjavascriptcoregtk-1.0.so -> libjavascriptcoregtk-1.0.so.0.16.19
lrwxrwxrwx. 1 root root 35 Nov 27 16:46 libjavascriptcoregtk-1.0.so.0 -> libjavascriptcoregtk-1.0.so.0.16.19
-rwxr-xr-x. 1 root root 7513128 Nov 27 17:06 libjavascriptcoregtk-1.0.so.0.16.19
-rwxrwxr-x. 1 root root 2114012 Feb 27 2017 libpulseui.so
-rwxr-xr-x. 1 root root 3174036 Feb 27 2017 libpulseui.so_centos_7
-rwxr-xr-x. 1 root root 3948444 Feb 27 2017 libpulseui.so_Ubuntu_16
-rw-rw-r--. 1 root root 1136301 Sep 12 2016 libsoup-2.4.so.1
lrwxrwxrwx. 1 root root 27 Nov 27 16:46 libwebkitgtk-1.0.so -> libwebkitgtk-1.0.so.0.22.17
lrwxrwxrwx. 1 root root 27 Nov 27 16:46 libwebkitgtk-1.0.so.0 -> libwebkitgtk-1.0.so.0.22.17
-rwxr-xr-x. 1 root root 36762696 Nov 27 17:06 libwebkitgtk-1.0.so.0.22.17
-rw-r--r--. 1 root root 41 Nov 16 16:47 postinstall.log
-rwxr-xr-x. 1 aguerra aguerra 31904 Feb 27 2017 PulseClient.sh
-rwxrwxr-x. 1 root root 55988 Feb 27 2017 pulsediag
-rwsrwsr-x. 1 root root 1682784 Feb 27 2017 pulsesvc
-rw-r--r--. 1 aguerra aguerra 7338510 Feb 27 2017 pulse.tgz
-rwxrwxr-x. 1 root root 1544096 Feb 27 2017 pulseUi
-rwxr-xr-x. 1 root root 1825276 Feb 27 2017 pulseUi_centos_7
-rwxr-xr-x. 1 root root 2000960 Feb 27 2017 pulseUi_Ubuntu_16
-rwxrwxr-x. 1 root root 7528 Feb 27 2017 pulseutil
-rw-r--r--. 1 root root 4904 Feb 27 2017 README
-rw-r--r--. 1 aguerra aguerra 16 Feb 27 2017 version.txt

 

Any idea??

Thanks in advance

Alberto

jamey
Occasional Contributor

Re: Fedora 27 - webkitgtk no longer supported

what happens if you run the GUI not using the terminal? Does it launch or does it not come up?

 

Im thinking because your going directly from the command line you need to first export the LD_LIBRARY location to incluse /usr/local/pulse.

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/pulse

 

if you cat the file located at /usr/share/applications/pulseUi.desktop you will see the application does this for you with the Exec = portion if you launch the GUI as normal.

 

example of the applications desktop entry file:

#!/usr/bin/env xdg-open
[Desktop Entry]
version=1.0
Type=Application
Exec=/usr/bin/env LD_LIBRARY_PATH=/usr/local/pulse:$LD_LIBRARY_PATH /usr/local/pulse/pulseUi
Terminal=false
Name=Pulse Secure
Comment=Pulse Secure VPN client
Icon=/usr/local/pulse/html/images/Pulse-Secure128x128.png