In defence of GNOME Web
So you probably already know that Mozilla recently went bang and fired 25% of its workforce before announcing that whoops lol actually we are still going to be able to feed the hungry fox this year. Among the teams affected were the servo developers, a lot of the threat response team, and (I believe) the entirety of the team behind MDN: the only good resource for web development don’t @ me. As you can imagine this has led to quite the tizzy as people have puzzled about what exactly this means for the Firefox browser, Mozilla as an organisation, and the future of browsing and, indeed, the web as a whole.
While nothing is likely to change in the immediate future, it seems clear that Mozilla is trying to consolidate its efforts into fewer projects to try and increase short-term stability while sacrificing experimentation. We’ve been assured that Firefox is still under active development, and that while Servo is kicking the bucket they are going to continue building new features in Rust for Gecko. But the whole affair has woken the community up to something they’ve largely been ignoring for quite a while: Mozilla is effectively the only thing standing between us and a totally Google-dominated web.
Cue horrific memories of Internet Explorer.
Of course, Apple’s Safari still technically holds its ground and is unlikely to make any moves towards Google since mummy and daddy are in a bit of a standoff over how the web should work, but since Safari is no longer cross-platform its impact is limited, and since it’s proprietary it isn’t filling Firefox’s shoes any time soon. What are we left with then? Vivaldi? Chromium-based. Opera? Chromium-based. Brave? Chromium-based. Microsoft Edge? Chromium-based. Chromium? I don’t know about that one. I’ll have to check.
Why does any of this matter, though? Surely having a shared engine between all browsers is a positive thing? Well, as somebody who develops for the web I can confirm this would indeed be a hell of a lot easier, but it’s also a monopolistic nightmare. Blink, the rendering engine used in Chromium and its offshoot browsers is developed in-house by Google. In consortium with other browser engine developers such as the Gecko team at Mozilla and the Webkit team, they are responsible for interpreting and proposing new specifications relating to how the web works. If Mozilla were to go away one day, it would leave Chromium-based browsers even less challenged than they currently are, giving them undisputed control over how the web is interpreted for its users.
Mozilla’s role as a non-profit and the producer of the world’s second most popular browser engine is a very important one. Its mission statement is to protect the privacy and rights of users online, and it uses its position of relative strength to fight for these rights in the decision-making process. Without it, we will basically have Apple and Google shouting at one another about how to align a
div. Fucking nightmare.
These are all bigger-picture problems, though. Let’s think about the other ramification of Firefox disappearing: we will be down the most popular free and open source browser available for free desktop users. All browsers based on Chromium – even the open source ones – have the issue of being based on a browser which has [unclear licensing according to the FSF][chromium-licensing] and code that includes calls home to el goog. While many browser projects attempt to remove these, it’s a herculian effort and ultimately you’re still left with a homogeny problem in the browser space.
But wait a second. There’s a browser that’s been sat under our gnoses for quite a while now. While some people may not gnow it, we’ve had a perfectly suitable, free software browser to call gnome (I’ll stop this immediately). That’s right: the venerable GNOME Web.
Fine, I guess I’ll explain.
Unless you’re a user of Elementary OS or Bodhi Linux, or are just the world’s biggest GNOME fan, you’ve probably not encountered GNOME Web before. Also known by its codename Epiphany, GNOME Web is a simple, GTK-based web browser based on WebkitGTK (an implementation of Webkit, which was originally developed as a collaboration between Apple and the KHTML team and also powers Safari). It’s a nice little browser which has good integration with GTK-based interfaces such as GNOME, Pantheon, and XFCE (and has decent integration with KDE because KDE and GNOME have worked pretty well together for quite a while now). It may lack a few of the nicer features that come with mature browsers like Chrome and Firefox, but it does the essentials pretty well:
- Website installation: not to be confused with PWAs (which only Chromium properly supports), GNOME Web allows you to install sites to your computer as sandboxed apps
- Ad blocking: this is built in to the application itself, although it’s not enabled by default (I think it is in the latest versions on Flathub). It doesn’t work as well as uBlock Origin. For example, it sometimes fails to block in-video ads on YouTube, but you should really be using youtube-dl at this point anyway because YouTube is just awful
- General website rendering and support is pretty good. Ironically, elementary’s website doesn’t work in the latest version. It just crashes. Whoops. But apart from that I’ve had no issues
The biggest omission I’ve come across is the lack of extension support, which apparently they would like to support through the WebExtensions API. This is a pretty glaring hole for some people, I’m sure, but this brings me to my first point:
Why should I bother?
- For the good of the software: Software without users is just a bunch of code. If there is genuinely no desire for it to exist, it will soon cease to exist. There is no point in an individual or group of individuals pouring effort and time into maintaining a project if nobody uses it. If more people use GNOME Web, it will demonstrate a need for it, introduce more developers and testers to the project, and also (maybe) convince some web devs to clean up their designs
- For a more consistent experience: Particularly if you’re a GTK user, you might be surprised at how nice it is to use a browser that’s actually integrated into your system. Firefox does okay with GTK, Chromium looks like utter shit, and GNOME Web is completely integrated, exactly as nature intended
- Because it’s in our hands: GNOME Web, much like GNOME itself, is a project that is entirely in the hands of the free software community. We get to decide how it’s shaped and what direction it takes
- Because it will soon be in our pockets: With the introduction of
phoc, GNOME is coming to the Librem 5 and PinePhone, and with it we will be getting GNOME Web (by default on the Librem I presume). More users testing and prodding this could make it a really nice smartphone experience, since you’ve all been complaining for years that “GNOME looks like a tablet”
Okay. But Does It Work?
Yes. For the most part, GNOME Web functions absolutely fine. It plays video, it plays music, it has a nice reader mode. What won’t it do? Some important stuff like video conferencing on Jitsi and all of that stuff we probably shouldn’t be doing anyway.
One thing that GNOME Web does not have is support for DRM. That means no Spotify, no Netflix, no… Hulu? I don’t know. I’m out of touch on all of this. Some people may see this as a bad thing, but I can categorically say this is actually the correct way to work with the web. Web content should not contain DRM in the first place, and browsers that support it are actively harming users by supporting it.
Do I believe that these services should be inaccessible? No. But I do believe the default browser on an operating system like GNU/Linux should be as free as possible, and that if users really really want to watch Netflix/listen to Spotify on their machine it should be a conscious decision to go and download another browser to do so. As mentioned above, most distros of Linux include Firefox/Chromium as their default browser, with shockingly few even coming with GNOME Web installed or other free browsers like Midori. On the one hand, this is great for users coming from Windows/macOS as it means they get the same experience they’re already used to. But on the other hand, it means free software is betraying its mission. Do users care? Probably not. But I care, damnit.
I’ve been using GNOME Web for a while now alongside Firefox and have started using it more following this news. It’s not perfect, it lacks some things I really liked about Firefox, but I do like the fact that my computer now doesn’t make the sound of a poorly maintained Boeing 747 during my daily visit to the hamster dance website.