Status update, February 2022

My very first status update! It’s only been two weeks, but they certainly felt packed to me. Let’s take a look at what has happened so far.

Sourcehut

One obvious first task was to set up a local development version of the Sourcehut components. Currently, the best instructions for this are in a blog post by Simon. They did work well enough to get me started. But as they don’t get updated, there were a few things I had to figure out on my own. Also, some services are not documented at all. To make the entire process as frictionless as possible for potential contributors, an effort is underway to properly document the entire setup in the official sr.ht-docs. Sit tight for updates!

I had kept a note around for a few weeks that an email I received from sr.ht about a new OAuth token was not encrypted. Having a working setup, I was able to determine that this was an issue in the core-go module and get my first patch merged soon after. Great success!

I then proceeded to set up this blog (see below), mostly as a pretext to poke around in pages.sr.ht. When browsing the blog, I noticed that a few performance improvements could be made. While I was still poking, Umar Getagazov sent in a patch to support HEAD and conditional requests, which unlocked vastly improved caching behavior in most browsers. With that part done, I added support for compression. Browsing user sites should now be even snappier and less bandwidth-intensive. I could definitely feel it on my blog!

On the outlook side of things, I felt that tackling custom cache settings would be a good continuation of this work and hope to get this shipped soon.

Last, but not least, I am happy to announce that we finally set up a community hub for the names.sr.ht project. The idea is to integrate a domain registry and a hosted DNS service into Sourcehut. If you are interested, make sure to join the mailing list.

In other news

The great thing about working at Sourcehut is of course working on free software!

I never had much of a website, so I spend a bit of time setting up this blog. It’s just a horrible collection of scripts to mimic a static site generator, lacking most of the features. But I was just curious how far I could get with this approach. I think I have RSS! ☺

I also have started a little tool called wwcd (What Would Cron Do?). Given a crontab entry, it tells you the next execution time. It’s probably not too useful on its own, but I have an idea for a little project that will build on this. It might even turn out to be slightly more useful…

Next up is the gemini space! When I first explored it, I tested a few different clients. One that really stuck out to me is Lagrange. I found it very visually pleasing, and the document outline is super useful. I immediately thought: “This would be cool for documentation!” Drew DeVault already had a script to render man pages, but it was just text, so the document outline was empty. I held my own beer and made it slightly more useful. Probably does not scale very well, but sooo pretty (in Lagrange)!

And finally, I started something that scratches a long-standing itch of mine. I have been using xBrowserSync for a while. I really like it, but I couldn’t find any clients besides the official ones. If you are experimenting with more esoteric browsers, you’re out of luck. So I created xbscli, which will become a fully featured command line client for the xBrowserSync API. It’s still in early stages, but read access already works fine. Maybe it can help make xBrowserSync even more xBrowser in the future!

That’s it, thanks for reading. If you have questions or comments, feel free to send them to my public inbox.