Goodbye Offpunk, Welcome XKCDpunk!

2025-04-01

For the last three years, I’ve been working on Offpunk, a command-line gemini and web browser.

Offpunk.net

While my initial goal was to browse the Geminisphere offline, the mission has slowly morphed into cleaning and unenshitiffying the modern web, offering users a minimalistic way of browsing any website with interesting content.

Rendering the Web with Pictures in Your Terminal (ploum.net)

Focusing on essentials

From the start, it was clear that Offpunk would focus on essentials. If a website needs JavaScript to be read, it is considered as non-essential.

It worked surprisingly well. In fact, in multiple occurrence, I’ve discovered that some websites work better in Offpunk than in Firefox. I can comfortably read their content in the former, not in the latter.

By default, Offpunk blocks domains deemed as nonessentials or too enshitified like twitter, X, facebook, linkedin, tiktok. (those are configurable, of course. Defaults are in offblocklist.py).

Cleaning websites, blocking worst offenders. That’s good. But it is only a start.

It’s time to go further, to really cut out all the crap from the web.

And, honestly, besides XKCD comics, everything is crap on the modern web.

As an online technical discussion grows longer, the probability of a comparison with an existing XKCD comic approaches 1.
– XKCD’s law

XKCD’s law (ploum.net)

If we know that we will end our discussion with an XKCD’s comic, why not cut all the fluff? Why don’t we go straight to the conclusion in a true minimalistic fashion?

Introducing XKCDpunk

That’s why I’m proud to announce that, starting with today’s release, Offpunk 2.7 will now be known as XKCDpunk 1.0.

Xkcdpunk.net

XKCDpunk includes a new essential command "xkcd" which, as you guessed, takes an integer as a parameter and display the relevant XKCD comic in your terminal, while caching it to be able to browse it offline.

Screenshot of XKCDpunk showing comic 626

Of course, this is only an early release. I need to clean a lot of code to remove everything not related to accessing xkcd.com. Every non-xkcd related domain will be added to offblocklist.py.

I also need to clean every occurrence of "Offpunk" to change the name. All offpunk.net needs to be migrated to xkcd.net. Roma was not built in one day.

Don’t hesitate to install an "offpunk" package, as it will still be called in most distributions.

offpunk package versions - Repology (repology.org)

And report bugs on the xkcdpunk’s mailinglist.

xkcdpunk-users on lists.sr.ht

Goodbye Offpunk, welcome XKCDpunk!

----

Email:

gemini24@ploum.eu

permalinks:

Link

Link


Source