Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 359296 - [Browser] [WebKit] No internal browser found by Eclipse 3.7.1 on OpenSUSE 11.4 x86-64 (installed WebKitGTK 1.3.10 is not used)
Summary: [Browser] [WebKit] No internal browser found by Eclipse 3.7.1 on OpenSUSE 11....
Status: CLOSED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: SWT (show other bugs)
Version: 4.2   Edit
Hardware: PC Linux
: P3 normal with 2 votes (vote)
Target Milestone: ---   Edit
Assignee: Grant Gayed CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-09-28 15:26 EDT by Rob Sigel CLA
Modified: 2018-01-31 15:45 EST (History)
6 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Rob Sigel CLA 2011-09-28 15:26:53 EDT
Build Identifier: M20110909-1335

No compatible Browser libraries are found/loaded by SWT in a default install (fully updated/patched) of OpenSUSE 11.4.  Eclipse-SDK-3.7.1-linux-gtk-x86_64 is forced to use the forms version of the Welcome View and external browsers for Help content.

As an Eclipse RCP developer, the lack of a compatible Browser component in the default install of a major distro is inconvenient.

The default install of OpenSUSE 11.4 contains XULRunner 2.0 (known incompatible - see Bug 327696) and the supposedly compatible WebKitGTK 1.3.10.

Package: libwebkitgtk-1_0-0
Version: 1.3.10-5.1
Provides:
  libwebkitgtk-1.0.so.0()(64bit)
  libwebkitgtk2 = 1.3.10
  libWebKitGtk0 = 1.3.10
  libwebkitgtk-1_0-0 = 1.3.10-5.1
  libwebkitgtk-1_0-0(x86-64) = 1.3.10-5.1

A workaround is to install the latest version of the package mozilla-xulrunner192 from the repos.  (No version of xulrunner192 is installed by default.)  But according to the docs and SWT FAQ, SWT was going to be compatible with WebKitGTK 1.2.x+ as of Eclipse 3.7.0.


Reproducible: Always

Steps to Reproduce:
1. install a clean VM of OpenSUSE 11.4 x86_64
2. add the community online repos for updates
3. update OpenSUSE
4. download/install Eclipse 3.7.1
5. run Eclipse (add '-consoleLog -debug' to see log messages in the console about missing internal browsers)
6. observe the forms-based Welcome view (not HTML) at the initial startup
7. open Window->Preferences, select General->Web Browser
8. observe that "Use internal web browser" is disabled
9. observe the browser-related log message in the console, and in the Error Log view.  (Yes, it mentions the lack of MOZILLA_FIVE_HOME, but that's only because there are no diagnostic logging messages when WebKit itself fails to load, despite it being the new default browser.)
Comment 1 Vitaliy Yakovchuk CLA 2011-10-21 07:36:09 EDT
Got the same bug. The problem is that old name of Webkit Gtk library was libwebkit, and a new name is libwebkitgtk.

Creation a symbolic link with old rules name solves the problem.

Try to create the link manually:

sudo ln -s /usr/lib/libwebkitgtk-1.0.so /usr/lib/libwebkit-1.0.so.2

Restart Eclipse, open Preferences Window and check "Use internal web browser" in General/Web Browser.

In my case internal browser works fine (at least on my Gentoo system).
Comment 2 Grant Gayed CLA 2011-10-21 10:04:05 EDT
The eclipse 3.7 and 3.7.1 releases should be able to use WebKitGTK 1.2.x and 1.4.x without problem.  Similar to GTK+, WebKitGTK uses odd minor revision numbers (ie.- the '3' in 1.3.x) to denote dev-stream work, which the Browser does not officially support, though I'm a bit surprised that it's not working "by accident".  Does OpenSuSE 11.4 really only ship a dev-stream webkit library, and not also something "proper" like WebKitGTK 1.2.x or 1.4.x?

re: comment 1
This should be working in eclipse >= 3.7.x.  Are you using an older version than this?
Comment 3 Steve Ash CLA 2011-11-28 12:47:45 EST
FWIW I just experienced the same problem.  I have Eclipse 3.7.1 on OpenSUSE 11.4 x64.  I had no "internal browser" option, and I was using a plugin (eclipse color theme picker) which created an SWT Browser instance.  I was blowing up with:

Caused by: org.eclipse.swt.SWTError: No more handles [Unknown Mozilla path (MOZILLA_FIVE_HOME not set)]
	at org.eclipse.swt.SWT.error(SWT.java:4308)
	at org.eclipse.swt.browser.Mozilla.initMozilla(Mozilla.java:1826)
	at org.eclipse.swt.browser.Mozilla.create(Mozilla.java:687)
	at org.eclipse.swt.browser.Browser.<init>(Browser.java:99)
	at com.github.eclipsecolortheme.preferences.ColorThemePreferencePage.createContents(ColorThemePreferencePage.java:101)

I have libwebkit installed (whatever 11.4 installed by default), and so I tried (perhaps naively) setting: -Dorg.eclipse.swt.browser.DefaultType=webkit

But that didn't work.

Then I found this issue, and per the report's workaround I installed xulrunner192 via YAST and it resolved the problem.
Comment 4 Carlos Alegria CLA 2012-09-18 19:00:15 EDT
I can confirm this is happening in Arch x86_64 + Xfce too. I also solved the issue by creating a symbolic link:

ln -s /usr/lib/libwebkitgtk-1.0.so.0.13.4 /usr/lib/libwebkit-1.0.so.2

Thanks for this suggestion!

(In reply to comment #1)
> Got the same bug. The problem is that old name of Webkit Gtk library was
> libwebkit, and a new name is libwebkitgtk.
> 
> Creation a symbolic link with old rules name solves the problem.
> 
> Try to create the link manually:
> 
> sudo ln -s /usr/lib/libwebkitgtk-1.0.so /usr/lib/libwebkit-1.0.so.2
> 
> Restart Eclipse, open Preferences Window and check "Use internal web
> browser" in General/Web Browser.
> 
> In my case internal browser works fine (at least on my Gentoo system).
Comment 5 Leo Ufimtsev CLA 2018-01-31 15:45:20 EST
In the meantime we've implemented webkit2 support and SWT works on webkit1 and webkit2. Mozilla is deprecated.

528844 – (webkit2Default) [Webkit2] Make webkit2 default.
https://bugs.eclipse.org/bugs/show_bug.cgi?id=528844