Sunday, July 26, 2026

Free GUI: Browser Engine

 All Posts Tagged: Free GUI  

Free GUI needs a browser engine that can work with a system-wide customizable toolbar system, and whatever other system-wide features that get incorporated into the application ecosystem infrastructure. (spoken with a mockingly nerdy lisp while pushing your over-sized glasses back up your nose.)

There is a long list of possible features for this idea. The number and selection of these features, and especially the particular form they must be adapted to, will depend on the intensity of the larger idea that comes into view. In virtually any permutation of the idea however, a specially adapted browser engine is one of the key must-haves.

The browser engine has to be able to function with the rest of the toolbar customization system, and whatever other systems the idea incorporates, such as an umbrella plugin management system or a common configuration system, etc.

Browser Engines


Options: Gecko (Firefox), Blink (Chrome), LibWeb (Ladybird), Servo, Webkit

Considerations: modularity, efficiency, maturity, license, language

Servo (My Favorite)


Servo is being developed specifically to be highly modular (or embeddable) and efficient. It is hard to say how seriously they take themselves when they have stated that it is not intended to be a production ready browser. If they simply mean that it is only ever going to be an embeddable browser, then that is great because it might mean they still intend on focusing their attention on making it very stable and minimal.

At the time of this writing, Servo is still making progress, and it is at version 0.3 or so.

Mozilla / Firefox's Gecko

Somebody really should have started years ago, to maintain an updated fork (or official branch) of the Gecko engine that is highly modular to be used by the FLOSS community. This point is as late as the age of the Gecko engine itself, but it is also so obvious that it is confusing to see why it hasn't been done yet. 

The only reason I can imagine for this not to have occurred is that it is technically extremely difficult - and that Mozilla makes it technically extremely difficult. Mozilla imitates everything else under the sun that they do not have the finances to translate into successes. Yet they did not imitate Chrome's efforts (or Electron's) to make their engine highly modular and usable by the community. They should have seen that as an obvious priority for a more democratic internet, and as a demonstration of understanding FLOSS values (which they do not really value).

Google Chrome's Blink


There's more for me to learn about Blink's details of modularity. Generally you hear about V8 and its efficiencies, and I assume that it automatically covers Blink as well.

I don't know if Blink is specifically easy to embed. Obviously there are many Chrome-based browsers that use different GUI toolkits, which seems like a pretty solid indication of its modularity.

Chrome has been adopted by the Linux Foundation, but I must admit I have prejudices against it, and I am truly truly averse to using it specifically because it drowns out the internet. I am pretty anxty about this general scenario.

Licensing


The browser engine needs to fit into the larger licensing scheme for the whole idea, which is also still very much up in the air between a permissive license, and a fully copyleft license.

2 Considerations


  1. Copyleft license ecosystem
    • GPL / AGPL / LGPL
  2. Permissive license ecosystem
    • MIT / Apache / BSD

I would much prefer a fully copyleft ecosystem, but that might not be realistic.




What are the options for a browser engine at that point?






No comments: