Sign In

    Enjoy FOSSwire's content? Have it delivered! Subscribe

    Midori - a Lightweight WebKit Browser for Linux

    Midori logo

    There are a couple of others (Konqueror, Epiphany), but the primary open source browser that you're likely to be using on Linux is Firefox.

    Now don't get me wrong, Firefox is great for a lot of things. It is endlessly customisable and has ubiquitous support from website developers. It does have disadvantages too, however, including not exactly being the quickest beast out there.

    WebKit is an open source browser engine (the code that does the heavy lifting inside your browser) that Apple made for its Safari browser. It is derived from the KHTML engine that was developed for Konqueror, but was reworked quite a bit by Apple and now various other third parties.

    A lot of people prefer WebKit to Gecko (the engine behind Firefox). It's clean, fast and has a lot of different companies and organisations behind it. It's not just limited to Safari - it's in lots of mobile phone browsers, powers Google's Chrome browser and lots more.

    Midori is a lightweight web browser for Linux built on top of WebKit. It doesn't have a load of features right now, but if you're looking for something that's quick, but has good compatibility with websites that don't play well in other alternative browsers like Konqueror, it's worth a look.

    Midori showing the FOSSwire home page

    Despite some of its limitations, Midori does have built in support for User Scripts (which you might know as Greasemonkey), a bookmark manager, a customisable search box and a few other features.

    It won't be suitable for everyone, however, or perhaps for all your browsing needs. I didn't find a way to run Flash inside, which might put some people off. Despite that, if you want a browser that's very quick and very light, even if you don't use it full-time, seriously take a look at Midori.

    If you're running the latest Ubuntu version, Intrepid Ibex, you'll be able to install Midori by searching in Add/Remove Programs. Alternatively, still trying searching in your package manager, or you can get the source code.

    [found via]


    Epiphany switches to WebKit

    In an announcement email this morning, the developers of the Epiphany web browser have announced that the next release will be based off of WebKit, and only WebKit.

    We are a small team, with only one maintainer and a hand-full of
    regular contributors. Maintaining the abstraction layer, and the Gecko
    back-end require lot of effort and time. Much time alone is spent on
    keeping up with Gecko API changes, and we have not had much
    contributions to the Gecko back-end in a long time. [...]

    This single back-end will be * WebKit *.

    This is the first time users will be able to experience WebKit on a GNOME desktop by default. Currently, to use WebKit, users need to download and install Konqueror from the KDE desktop or manually compile WebKit into epiphany.

    The WebKit-enabled epiphany will make it into GNOME 2.24 this fall, or GNOME 2.26 next year depending on the development speed.


    Compile Epiphany from source to use WebKit

    Please note - I managed to write this tutorial such that it works, right up to the step where you compile Epiphany. Where it fails miserably. WebKit builds fine, and you can use the test WebKit browser without a problem, but I was unable to get it to work completely. I thought it would be a shame to let this tutorial go to waste however, so here it is. YMMV. If anyone knows how to get Epiphany to build properly, or has any other success with this, please do let me know.

    It's easy to assume that Firefox is the only open source browser out there, or even that it is one of the only real options for browsing on Linux. That isn't true however, and GNOME web browser Epiphany is a fine choice for browsing on Linux.

    By default, Epiphany ships with and uses the Gecko rendering engine, just as Firefox does, but it is possible to build it to use the WebKit engine. WebKit is an alternative open source rendering engine, developed by Apple and used in its Safari browser (but was originally forked from KDE's KHTML). Compiling Epiphany with WebKit has to be done when compiling it from source, unfortunately, you can't just flick a WebKit switch yet. So - let's get to the recompiling!

    Be warned - this can be a lengthy and potentially tricky process. But stick with me, and we should end up with a new shiny WebKit-ised Epiphany at the end!

    If you already have Epiphany installed via your package manager, I suggest you remove it now, to prevent the two versions conflicting. You can always remove your custom compiled copy and reinstall the stock version again later if you wish.

    Throughout this tutorial, I'm going to assume you've created a folder called build in your home directory where all the files we use in the tutorial are. If not, you might have to adjust some of the paths in commands later on.

    First of all, we need to download the source code to the current development version of WebKitGtk and compile it. The code needs to be downloaded from Subversion. Making sure you have an svn client installed, do this:

    $ svn checkout http://svn.webkit.org/repository/webkit/trunk WebKit

    If you're not an SVN fan, you can download a .tar.bz2 package from here as well. Once you've downloaded the source, which can take some time (it is just over 1 GB uncompressed), we have quite a bit of setup to do before we can begin compiling unfortunately. WebKit might be apparently much cleaner than Gecko is, but sadly the build system is far from simple for us Linux users at the moment.

    So before we begin the compile of WebKit, use your package manager to install the following packages if they are not already installed:

    • libicu-dev
    • libxslt-dev
    • libcurl-dev
    • libsqlite3-dev
    • libjpeg62-dev
    • libpng12-dev
    • gperf
    • bison
    • flex

    $ sudo apt-get install libicu-dev libxslt-dev libcurl4-openssl-dev libsqlite3-dev libjpeg62-dev libpng12-dev gperf bison flex

    You also need a working installation of the Qt 4 version of qmake. This is a right pain at the moment, as it means pulling down several Qt dependencies to build a GTK application, but it is a necessary evil for the time being. On Ubuntu, the necessary package can be installed with:

    $ sudo apt-get install libqt4-dev

    Now, I think we're just about ready to build WebKit. Phew. Warning - this next step will take quite some time, unless your system is really fast, or, heaven forbid, something goes wrong.

    $ export PREFIX=/usr/local
    $ cd WebKit
    $ ./WebKitTools/Scripts/build-webkit --qmakearg=WEBKIT_INC_DIR=$PREFIX/include/WebKit --qmakearg=WEBKIT_LIB_DIR=$PREFIX/lib --gtk --qmake=qmake-qt4

    Once that compiles, you should get a message like this:

    ===========================================================
    WebKit is now built. To run GtkLauncher with this newly-built
    code, use the "WebKitTools/Scripts/run-launcher" script.

    NOTE: WebKit has been built with SVG support enabled.
    GtkLauncher will have SVG viewing capabilities.

    NOTE: WebKit has been built with experimental SVG features enabled.
    Your build supports basic animation, filters, foreignObject & use support.
    ===========================================================

    The good news is that's the bulk of the work done now, we just need to copy WebKit in place, test it and then work on Epiphany.

    $ cd WebKitBuild/Release/
    $ sudo make install
    $ cd ..
    $ WebKitTools/Scripts/run-launcher --gtk

    At this point, you should get a basic test browser, running GTK inside WebKit, looking something like the screenshot below! Now, just to build Epiphany to connect to our new WebKit installation.

    WebKit GTK Launcher

    Now, let's download the source code to Epiphany which you can find on this page. At the time of writing, that's version 2.20.2, so that's what I'll be using in this tutorial.

    You'll also need to have all the dependencies for Epiphany satisfied, or it won't build properly. Ubuntu users can use the following apt command to automatically pull down dependencies and install them:

    $ sudo apt-get build-dep epiphany
    $ sudo apt-get install gnome-doc-utils

    Once you've downloaded that, extract it as normal and set up our build environment as follows:

    $ tar xjvf epiphany-2.20.2.tar.bz2
    $ cd epiphany-2.20.2
    $ export PKG_CONFIG_PATH=/lib/pkgconfig
    $ sudo cp /lib/pkgconfig/WebKitGtk.pc /lib/pkgconfig/WebKitGdk.pc

    We run configure with a simple command to enable WebKit:

    $ ./configure --with-engine=webkit

    And make like anything else!

    $ make
    $ sudo make install