• Zeth will be attending PyCon UK on the 12th to 14th September 2008.

Epiphany and Webkit 2008

18 May 2008

Last summer, at GUADEC here in Birmingham, the cool young dudes first integrated Webkit as an experimental toolkit for the Epiphany web browser. Now they are working to make WebKit as the main backend for Epiphany. It is a very small team indeed, but their aim is to finish the migration by GNOME 2.26 in March 2009; if we are lucky they may have finished by GNOME 2.24 this September. The old branch with the Mozilla gecko back end is very stable and will be released as 2.24 if the Webkit migration is not finished.

This is exciting for a number of reasons, firstly we will have a fast and light, GNOME integrated browser. Secondly, and perhaps more importantly, if Webkit becomes a default GNOME library then the same browser toolkit is available in KDE desktops, GNOME desktops and Apple OS X desktops, allowing a new generation of rich client web mashup applications.

I tried Epiphany with the Webkit backend last year, it was pretty raw then. The centre of the window worked as a web browser, but it ignored the toolbars and buttons at the top of the application. So how is it 10 months later?

Pretty good I say. Of course, it is still early days, and they need a lot of help removing the old unneeded code and binding the interface to Webkit. If you know C and want to get in to an interesting open source project, this might be a good project to join as they are basically restarting a lot of it.

My adventure installing Epiphany

I wish I had a spare Gentoo machine that I could use for this, but they are all busy with important things. On Gentoo they have made ebuilds for it in the overlays that take the latest version down.

So I used a spare Ubuntu machine, I started by getting rid of anything to do with WebKit or epiphany that has been installed via Ubuntu, at time of writing these are all too old.

Then I checked out all the development versions I need:

svn co http://svn.gnome.org/svn/libsoup/trunk libsoup
svn co http://svn.gnome.org/svn/epiphany/trunk epiphany
svn co http://svn.webkit.org/repository/webkit/trunk webkit

The last took a while as it checks out the complete source tree for every platform, I didn't actually need a lot of this, so another time, if time or badwidth is a concern then I might want to try to work out a more specific checkout command.

Then while that is running, I got the other required dependencies.

sudo apt-get install libicu-dev libxslt1-dev libsqlite3-dev libjpeg62-dev \
libpng12-dev gperf bison libcurl4-gnutls-dev flex gtk-doc-tools

Then I went into the libsoup directory and compiled it:

cd libsoup
./autogen.sh
make
sudo make install

Then webkit had finished downloading by the time libsoup is done. So I went into the Webkit directory and tried to compile it with this:

cd ../webkit
./autogen.sh --prefix=/usr/local --enable-svg-experimental --with-font-backend=pango \
--with-http-backend=soup
make
sudo make install

This didn't work, so (after make distclean), I googled and tried the method used by guy called Peter Upfold. This uses QT's qmake to build WebKit-gtk, bit of a contradiction, but it works at least:

export PREFIX=/usr/local
./WebKitTools/Scripts/build-webkit --qmakearg=WEBKIT_INC_DIR=$PREFIX/include/WebKit \
--qmakearg=WEBKIT_LIB_DIR=$PREFIX/lib --gtk --qmake=qmake-qt4
cd WebKitBuild/Release/
sudo make install

Then I waited a while again.

Next update the shared library cache:

sudo ldconfig

Then I did epiphany, this was pretty quick,

cd ../epiphany
./autogen.sh --prefix=/usr/local
make
sudo make install

Then epiphany worked like a charm.

/images/posts/gnome/epiphanywebkit.png

Acid2 Test, no problem:

/images/posts/gnome/epiphanywebkitacid2.png

In the Acid3 Test, Firefox 3 only scored 71. What about Epiphany, well still no problem:

/images/posts/gnome/epiphanywebkitacid3.png

Anyhow, should be interesting what they come up with in the first Epiphany WebKit release.

Please do Digg or StumbleUpon this article,

1 jk says...

First, excuse my english.

I was using firefox like every body else, until one day i look on Top command utility (system monitor) that firefox was using 190Mb of my memory, how could this be posible? it's only a browser... FF is getting bigger and bigger, I only want to surf the web. Epiphany is perfect for that.

Epiphany is very lighter, faster and usefull. I recommend it. Excellent post.

Posted at 6:54 p.m. on June 20, 2008


What do you have to say?

Show Editing Help


PyCon UK

About

Hello, my name is Zeth, I'll be your host here.

Command Line Warriors is about taking control of your own technology, it looks at our experiences of computing; especially using GNU/Linux, the Python programming language, the command-line and issues such as techno-ethics, best practices and whatever is cool now. If you take control of your technology then you are a Warrior too!

This site is your site too which means that you can contribute and get involved. You can leave comments using the facility provided. For me, the comments and discussions are by far the best part of the site. So please do have your say!

Latest Discussions

deesha

September 8, 2008
hey all, i just wanted to check the other stuf if nay1 can help me what i want is i have to convert the line starting with my function name ...
Email Syntax Check in Python

Daniel Black

September 3, 2008
Hey, sounds good already. There's another Python script for command-line 140-character-messaging (won't call it "tweeting" for obvious reasons), Tweety Py, that's currently languishing. Not, I think, because the developer's disinterested, ...
Using new social networking service Identi.ca from the command line

Antonio Araujo

September 2, 2008
Dear friends, has anyone built debian packages of db xml 2.4.13? Best regards Antonio
Native XML storage with Berkeley DB XML - part one

Zeth

September 1, 2008
Thanks everyone for your different solutions, absolutely fantastic. I have tried them all. The one from Ciaran McCreesh was the one I was subconsciously groping for.
Sisu and typing unicode in GNOME

andylockran

September 1, 2008
In ubuntu, I do ctrl, and the functions to the right of my keyboard for extra characters. Such as: alt gr + ; + e for é I'll post more ...
Sisu and typing unicode in GNOME

Jinks

September 1, 2008
I am from Germany but i use an US-layout keyboard since that's a lot easier for most my programming needs. Now, having to also write the occassional german letter or ...
Sisu and typing unicode in GNOME

Toni

September 1, 2008
Hi, You might want to add an xkb keymap. Make backups before you begin ;) And sorry about formatting. in /usr/share/X11/xkb/symbols/gb, after "intl", add this: partial alphanumeric_keys xkb_symbols "intl_fi" { ...
Sisu and typing unicode in GNOME

Ciaran McCreesh

September 1, 2008
On a UK keyboard you do alt-gr+[ followed by a to get ä. You don't need the control key at all.
Sisu and typing unicode in GNOME

name

September 1, 2008
Hi!,
List files recursively by modified time

name

September 1, 2008
Hello!,
List files recursively by modified time

Leif

September 1, 2008
On my Norwegian keyboard, the diaeresis is easily accessible, like on Jani's Finnish one. It's one of the few keys that doesn't advance the cursor, along with the tilde, circumflex ...
Sisu and typing unicode in GNOME

Lornix

September 1, 2008
ä <= compose, ", a ö <= compose, ", o å <= compose, o, a Ä <= compose, ", A Ö <= compose, ", O Å <= compose, o, A ...
Sisu and typing unicode in GNOME

name

September 1, 2008
Good day!,
List files recursively by modified time