:: Re: [DNG] Browsers
Top Page
Delete this message
Reply to this message
Author: Rick Moen
Date:  
To: dng
Subject: Re: [DNG] Browsers
Quoting Hendrik Boom (hendrik@???):

> Are there other Devuan-packaged lightweight browsers anyone might
> recommend? I may switch to chromium, but I doubt that it's
> lightweight.


Not exactly the answer to your question, but to a similar one: I
maintain what I hop is a list of all Linux Web browsers, here:
http://linuxmafia.com/~rick/faq/kicking.html#linuxbrowser


While I'm at it, let's talk layout (rendering) engines.

Gecko
-----
Not much to say about this classic Mozilla Foundation codebase, except
it works, it's aging, it's used for many browsers.

Goanna
------

One thing I didn't know until just now: Pale Moon (from 'Moonchild
Productions' is based not on Gecko exactly, but on a Jan. 2016 _fork_ of
Gecko called Goanna maintained as part of the project that produced
Pale Moon. https://en.wikipedia.org/wiki/Goanna_(software)
Reasons for said fork are detailed at
http://www.ghacks.net/2015/06/22/pale-moon-to-switch-from-gecko-to-goanna-rendering-engine/

Blink
-----

There have been interesting things happening in browser layout engines.
First a couple'a year ago, Google forked Apple's WebKit engine to create
Blink, the engine in Chromium and Google Chrome. (WebKit in turn was
Apple's fork of KDE's kHTML engine.) The Blink fork was all about
Google wanting to implement per-tab processes, which was not supported
in WebKit (and thus not in Apple Safari). Blink thus underlies all
current Chromium derivatives including current proprietary Opera Web
browser. (Like WebKit, Blink is proprietary-friendly-licensed, thus
Amazon uses it in a proprietary embedded Web browser called Silk.)

Servo
-----

More recently, Mozilla Research, with some participation by Samsung,
created an all-new experimental layout engine called Servo, with it
rendering quite a lot faster (in part because of using GPU acceleration)
and able to be highly parallelise / fine-grained because some key parts
of it were written in Rust. (No, you don't want to run it today. It's
still alphaware / proof of concept code.)

WebKit (+ QtWebKit, PyQtWebkit)
------

WebKit underlies Midori, KDE Rekonq, the GNOME browser 'Web' that is the
dessicated & reanimated corpse of Epiphany (after 'Web' initially used
Gecko), and a bunch of weird things like WebOS's application runtime,
the proprietary Slimboat Web browser, Valve's Steam UI, and some
proprietary Adobe things on other OSes courtesy of WebKit's BSD
licensing for most of the browser engine. Plus the Arora Web browser
(formerly Icefox Arora) which is based on Qt4 + WebKit -- but Arora's
somewhere between 'stalled' and 'abandoned', last I checked. A
particular combination of WebKit and Qt is popular and called
(inevitably) QtWebKit. Thus Qutebrowser ('a keyboard-driven,
vim-like browser based on PyQt5 and QtWebKit'). Plus QtWeb Internet
Browser. Plus an odd little thing called Lightweight2
(https://www.linux-apps.com/p/1131910/). Likewise Dooble
(http://dooble.sourceforge.net). Add Python bindings and you
get 'PyQtWebkit', used for WCGBrowser, a lightweight 'kiosk' browser
written in Python.

QtWebEngine
-----------

QtWebEngine (not to be confused with QtWebKit) came out recently and,
IMO, has been underappreciated. It underlies QupZilla and the
delightful Otter Browser (revenge of the Opera Browser 12.x UI -- still
a bit experimental). Dooble has a partial port to QtWebEngine. And
Liri Browser (see below) can now be built for QtWebEngine.

kHTML
-----

kHTML is still in use in KDE's Konqueror 'not dead yet' Web and file
browser.


So, Servo, Goanna, QtWebEngine, and Oxide (see below) are the new
layout engine options. Those and Gecko, WebKit, kHTML, and Blink are
what we have to work with on Linux, not counting proprietary engines
(MARTHA, Prince). I don't know why anyone but Google is yet building an
open source Web browser on Blink, but my cynical guess is that it has
something to do with their habit of rather too often doing 'open source'
by developing behind closed doors and then hurling code dumps over the
transom -- which is also how Apple rather haplessly forked kHTML without
actually intending to do so. Which, come to think of it, reminds me
of how Corel Software Ltd. haplessly and accidentally forked WINE for
its late 1990s Linux/Winelib port of Corel Office 2000 by making the
exact same screwup. Some folks never learn from software history. (The
proprietary Slimjet browser is built on Blink, but nothing open source
except Chromium, to my knowledge. But read on....)



Oxide
-----

Very late in composing this e-mail, I found one exception, a fork of Google's
Blink layout engine + V8 Javascript engine called Oxide.
http://www.chriscoulson.me.uk/blog/?p=196
https://launchpad.net/oxide

Oxide is used in the Ubuntu Touch embedded browser, and in Liri Project's
Liri Browser, https://github.com/lirios/browser.


None of the above
-----------------

A very small Web browser called qtbrowser
(https://github.com/Metrological/qtbrowser) is built on Qt4 or Qt5
_without_ any distinct layout engine, oddly enough. I gather that
it's aimed squarely at embedded us in a streaming television application
called Metrological. But I gather from Manjaro Linux wiki
(https://wiki.manjaro.org/index.php?title=List_of_Qt_Applications#Web_Browsers)
that it can be built for the Linux desktop.


(Now, I'll need to amend
http://linuxmafia.com/~rick/faq/kicking.html#linuxbrowser, having
discovered a few browsers not yet mentioned there.)