Drop #199 (2023-02-14): No, Thanks! I'm Just Browsing
Blinkin' Chrome on iOS; Qutebrowser; Carbonyl
As Marvel’s “The Thing” might say (if he was addicted to the internet): “It’s BROWSIN’ TIME!” Today’s Drop is 100% focused on “alternative” clients for browsing the shambles of what Sir Berners-Lee started so long ago.
Blinkin' Chrome on iOS
While everyone was distracted by balloons, UFOs, earthquakes, and both Microsoft and Alphabet embarrassing themselves in different wAIys, Google was further busy sneaking Blink into Apple phones in their Chrome for iOS Beta. Note that you’ll need to hit that link on mobile to try to get into the Chrome for iOS beta, which is presently full.
If we poke our noses into a recent Chrome for iOS commit log, we will see that they've put Blink into place for “performance testing”. That language was likely used to appease Mr. Cook, since Apple has a pretty hard stance that it's WebKit or bust on iOS. There's no way the Chrome for iOS team would dedicate development cycles for this when they could be finding and fixing all the 0-Days waiting to be exploited. No way, unless… they've been given the green light to give attackers an even larger attack surface on one of the most used operating systems on the planet.
I highly suspect WebKit's monopolizing days on iOS are very numbered. The EU hasn't been happy with Apple's isolationist tendencies for a while, now; and, the NTIA's recent report on “Competition in the Mobile App Ecosystem” has much to say about the need for competition on mobile devices.
The really cool part in all of this is that it fills in a piece of the Arc browser puzzle for me. They have leaked that they're working on an iOS port, and I cannot see them putting an Arc bow on WebKit. Despite continued compatibility leaps, there are still too many Chrome-specific features for them to effectively work around to make Arc work like it does on macOS. I'm hopeful we'll see a more open Blink'd Chrome for iOS Beta as well a Blink-powered Arc alpha for iOS really soon.
(Must. Not. Make. “Cute”. Puns.)
One reason I really like the aforementioned Arc browser is how it re-imagines the browser interface and experience (btw there are still some charges left). They were not the first to do so.
Nine years ago last week, the Qutebrowser [GH] was born and had a somewhat unique take (for a GUI browser) on the browsing experience. The developers took a nod from the venerable Vim editor and built (via some alchemy between Qt and Python) a keyboard-first browser that does, oddly, feel quite a bit like Vim. They self-admit they weren't the first to think of this (and link to many projects in their repo), but they've executed on their vision incredibly well.
It comes with tons of batteries included, though you do need to enable some of them, such as the ad blocking (please always use an ad blocker), though you do get syntax-highlighted
"view-source://" out of the box.
Despite the QtWebKit engine being based on WebKit-proper, you are likely much safer using this browser than many other ones. Sure, you can still be phished like any of us can be. However, exploits designed to pwn Safari are likely to have just enough different behavior on Qutebrowser that the worst that could happen is enough corruption to force you to quit and restart the application.
Qutebrowser supports user scripts, but you're somewhat out of luck if you rely on browser extensions (which are mostly evil anyway).
Of course, Archwiki has you covered with tons of help hints to make working in Qutebrowser a delight.
If you've used Qutebrowser before and have any tips to share with others, drop a note in the comments.
Back in the day, if one wanted to browse the nascent web from a terminal, one used Lynx and one liked it. Kids today are not content with mere text, but they do like to kick it old school, now and again. If that describes you, then you may already be using Carbonyl — a full-featured Chromium browser right in your terminal.
And, when I say "full-featured”, I mean it: WebGL, WebGPU, audio and video playback, animations, the whole works. To quote the devs, “[i]t's snappy, starts in less than a second, runs at 60 FPS, and idles at 0% CPU usage. It does not require a window server (i.e., works in a safe-mode console), and even runs through SSH.”
You can use it via:
npm install --global carbonyl
or (if you must) Docker.
You can read all the gory details of how this came to be (it's an amazing post), or just enjoy the fact that you've got Chrome, in your terminal, whenever, and wherever you want it.
Since it's 💙💜💛 Day, I'll close by directing you to a post from one of the coolest folks on the planet, Nadieh Bremer; plus another post from someone who is just as cool (Mike Bostock).
Oh, and leave it to a non-U.S. publication to actually provide some good context on the recent luftballons loon-acy. ☮