Action Item #523


Retest webkit suitability

Added by Hammel over 6 years ago. Updated about 3 years ago.

In Progress
04 - Root File System
Target version:
Start date:
29 Apr 2016
Due date:
% Done:


Estimated time:
04 - Low


Webkit support for GTK+ has been bumped to WebKit 2.4 with a new package. This is available in the latest Buildroot (2016.02). We're at 2015.02. So a bump in Buildroot may provide a webkit enabled surf package, meaning we could replace the C interfaces for appmgr and videofe with web-enabled interface, making icon handling easier and providing a more developer-friendly API for extending these.

We need to investigate if bumping Buildroot to 2016.02 and re-adding the surf package (custom package) will now work. Previously this didn't work. But the reasons I suspected for it not working appear to be fixed if you look at the list of changes associated with webkit in Buildroot.

Actions #1

Updated by Hammel almost 6 years ago

  • Category set to 04 - Root File System
  • Status changed from New to In Progress
  • Assignee set to Hammel
  • Target version set to 1.0 - Atreides
  • % Done changed from 0 to 90
  • Severity changed from 03 - Medium to 04 - Low

I didn't find much value in using webkit, mostly because of the overhead it brings (lots of build dependencies, etc.). So after testing I checked the changes into a new branch in the pibox repo: "mjhammel/br-2016-05". The build works on hardware, if I remember correctly. It just didn't have any added value with respect to webkit.

I can revisit this later when I migrate to a newer release of buildroot (like, say, the 2017.02 release).

Actions #2

Updated by Hammel about 3 years ago

There are now other options besides webkit. One is V8 + electron. This is a self contained nodejs package with GTK rendering engine. It's available for ARM. The downside is the size of the applications. A hello-world was 170MB.

There are also other rendering engines like Gecko, Blink and NetSurf, however it's not clear how to use these to build an app.

I still think using browsing technology just complicates a purpose built device. Using C/GTK/Cairo is simple enough and far more lightweight. Other than the omxplayer package, the largest opkg I have is piclock (which has themes) that clocks in at just under 2MB.


Also available in: Atom PDF