Hi I’m Wes 👋. I like warm weather and tinkering with computers; ranging from
small microcontrollers, up to large servers and the operating systems that run
upon them. I’m a Rustacean🦀
with a fondness for
mechanical keyboards. Read more on the about page →
View of sugar cane fields from where I was working.
Since I started running the first alpha release of Chimera Linux in
2023, my goal has been to eventually migrate to Chimera as my primary operating
system. This includes personal tinkering as well as for my job as a programmer.
A recent trip to Central Queensland afforded an opportunity to test the waters
of daily driving Chimera Linux for work. The trip spanned two weeks and involved
working remotely (as usual) during the week, and sightseeing on the weekends.
This post details some of the barriers that I encountered and how I worked
around them. While the post is focussed on Chimera Linux, the details probably
apply to most distributions using musl libc.
Since declaring in my last post
that “it was time to return to slightly less frivolous projects for a bit” I
instead spent the last week-and-change attempting to make Chimera Linux
run on Pentium class 32-bit x86 hardware.
Despite having used considerable quantities of AMD processors and Intel NICs,
we don’t get adequate design support for new projects. In addition, the x86
silicon currently offered is not very appealing for our niche of passively
cooled boards. After about 20 years of WRAP, ALIX and APU, it is time for me
to move on to different things.
This reminded me that I had two ALIX boards in neat little aluminium cases
sitting in the cupboard:
an alix2d13 purchased in 2011, and an alix3d2 purchased in 2012. My
immediate thought was the alix3d2 would be perfect for hosting my retro
website.
alix3d2
They are powered by an AMD Geode LX800 CPU clocked at 500Mhz with 256Mb of RAM.
The Geode is mostly an i686 class 32-bit x86 CPU. Instead
of installing an OS that I know works on them like OpenWRT or NetBSD I have
spent the last week and a bit bringing up Chimera Linux on i586 (Pentium).
I wanted to use Chimera Linux because:
I was already hosting my retro site with it.
I had already packaged the Rust binary that serves part of the site.
Chimera makes cross-compiling that package super easy, as well as service
monitoring with Dinit.
I thought it would be fun to use a modern distro on Pentium class hardware.
The process of bringing up a new platform on Chimera Linux was interesting, but
tested me at times. Especially early on when I was getting segfaults in apk,
thus preventing anything from working.
This post aims to document the steps I took (which may not be optimal) in
case it happens to be useful.
Over the last week I’ve had a lot of fun building a little retro-themed
website that I’m hosting at home. Inspired by Ruben’s Retro Corner
I’ve been meaning to do this for a while, and actually started on it in June
last year. More recently Joel Humphries shared on The Sizzle forum that he’d
built a little site that he was hosting at home on a Raspberry Pi. This
reignited my interest in getting my own site up again. For the fun of it I
decided to implement it in HTML4 and serve it over plain HTTP so that it
would work on old computers.
Stylus is an open-source browser extension for managing and applying “user
styles”—custom snippets of CSS—to websites. It allows you to tweak sites you
visit to tailor them to your preferences. In this post I list the ways I use
Stylus to make my browsing experience nicer.
Ghostty by Mitchell Hashimoto is the new hotness in the terminal emulator
world. It recently came out of private beta launching publicly as 1.0. It’s
similar to other GPU accelerated terminal emulators like Alacritty and
Kitty, but differs in that it uses the native toolkit on macOS and Linux
(GTK). For nerds it’s also interesting because it’s implemented in Zig.
In my quest to make linkedlist.org—my link blog—faster, I set
up multiple deployments around the world. I used pyinfra to automate the
process and Chimera Linux as the host operating system. Join me on this
adventure in over-engineering to see how I dropped the average response time
across nine global locations from 807ms to 189ms without spending a fortune.
Over the course of the last few months some fine folks in the Linux community
have been plugging away implementing support for Qualcomm Snapdragon X based
ARM laptops. Recently Canonical published Ubuntu 24.10
Concept for testing on these laptops, which I
installed and tested on my Lenovo Yoga Slim 7x.
Almost two years ago, in Jan 2023 I migrated from my Fediverse presence from my
self-hosted Pleroma instance to a single user Mastodon instance hosted by
masto.host. Since then I’ve wanted to retire the Pleroma instance, but I
didn’t want to just take it offline. I wanted to preserve my posts and
links to them. That became a priority over the weekend so I built a
tool, pleroma-archive to do it.
I’ve started a new tech focused link blog over at
linkedlist.org. “Not another tech blog”, I hear you
groan, and rightly so. However my intention is not to cover topics that are
already well reported upon like Apple, Google, Microsoft, the latest drama at
OpenAI, and other stuff like that. Instead, I plan to focus more open-source,
programming, hardware, software, Linux, Rust, retro computing etc. There’s some
more details in the welcome post.
In this post I’m going to cover the process I took to the build the site
(twice) and some of the considerations that went into it—for a site with only a
handful of pages there was a surprising amount of them.
JSON Feed is a specification for representing an RSS-style feed in JSON. I
wanted to add one as an alternative alongside the Atom feed on a new website
I’m building. The website is built with Zola, which unfortunately doesn’t
support the format, so this is how I went about adding one.