When I set up the infrastructure for Casuarina Linux I repurposed an AMD AM4 system with Ryzen 9 5950X 16-Core CPU (105W TDP) and 32Gb of DDR4 RAM as the build server. I set it up in our laundry, connected it via a smart plug, and reset its counters. Over the course of the project I would regularly pull package updates from Chimera Linux, build and install them locally, and then push them to the repo, which would trigger Buildbot to build and publish them.
Wesley Moore
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 →
Recent Posts
Platform Support for GNU Extensions to Basic Regular Expressions
Recently I was reviewing some shell script a colleague had written:
if grep -e '@[^@]\+@' "$DIR/install.sh" ; then
I thought the \ before the + was a mistake, and also pointed out that if
+ was to be used we’d probably need to pass -E for extended regular
expression (ERE) support. The colleague replied that \+ in a basic regular
expression (BRE) was the same as + in ERE (one or more repetitions).
This was news to me! I wanted to know more, so I turned to the FreeBSD
re_format(7) man page. Historically this is where most of my
knowledge about the distinction between BREs and EREs came from. There was no
mention of it there. I spun up a FreeBSD virtual machine and performed a quick
test, which confirmed that \+ did in fact work.
Introducing My New Linux Distro: Casuarina Linux
Over the past few months I’ve been working on a Linux distribution derived from Chimera Linux, and
it’s now available for download. The distribution is called Casuarina Linux. It swaps out musl in
Chimera for glibc to gain more binary compatibility with the wider GNU/Linux ecosystem.
Exploring Linux on a LoongArch Mini PC
Ever the fan of an underdog, I recently acquired a new mini-PC with a
Loongson 3A6000 CPU. This CPU uses the LoongArch64 instruction set
architecture (ISA). loongarch64 is a 64-bit RISC ISA inspired by MIPS and
RISC-V introduced by Loongson Technology in 2021.
From Wikipedia:
A Loongson developer described it as “…a new RISC ISA, which is a bit like MIPS or RISC-V. LoongArch includes a reduced 32-bit version (LA32R), a standard 32-bit version (LA32S) and a 64-bit version (LA64)”.31 The stated rationale was to make Loongson and China not dependent on foreign technology or authorisation to develop their processor capability, whilst not infringing on any technology patents.32
Tech Stack 2026
A summary of my personal tech stack as we start 2026. I previously did one of these in 2024. I was prompted to write this one by David Bushell and Robb Knight’s App Defaults 2026 posts.
Doing My Day Job on Chimera Linux
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.
Trying to Get Chimera Linux Running on Pentium Class Hardware
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.
This was sparked by a friend linking to the EoL page on the PC Engines website quoting the fact that they were exiting the market:
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.
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.
Building a Website Fit for 1999
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.
Making the Web More Readable With Stylus
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.
Replicating My Alacritty Appearance in Ghostty
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.
Projects
A selection of projects I've built or contributed to:
-
Casuarina Linux
A Linux distribution derived from Chimera Linux that uses glibc.
-
Feedlynx
Collect links to read or watch later in an RSS feed.
-
đź“°RSS Please
Generate RSS feeds from web pages.
-
Linked List
A link blog covering tech outside big tech.
-
Allsorts
Font parser, shaping engine, and subsetter implemented in Rust.
-
⤵️Git Grab
Clone a git repository into a standard location organised by domain and path.
-
Bit Cannon
A blog about operating system exploration.