This Week in Spectrum, 2025-W20
I'm still recovering, and it's rough. There are some small signs of progress but it's a bit two steps forward, one step back. But here's what I managed to do this week in spite of things: • Updated[1] the binary cache builder scripts for Scaleway's block storage API migration. (The old one no longer works.) • Finished the networking test[2] I mentioned a couple of updates ago. • Deployed Anubis[3] on https://spectrum-os.org/git/ to stop the server being overloaded by AI scrapers. I'm unhappy it's come to this, but it made me feel better to realise it only activates on things that look like graphical web browsers, so curl, lynx, etc. still get through fine. • Dropped the hack[4] Spectrum had for loading device trees on aarch64 where they were spread across more than a dozen UKI extensions, thanks to systemd having dropped the limit of how many each UKI could include after I brought it up[5]. • Tested and merged a crosvm update in Nixpkgs[6]. • Finished some work to support encrypted user data partitions. This was a big blocker preventing Spectrum being really useful for anything. Currently, partitions have to be manually mounted on the command line, but I could imagine there being a nice GUI for this that runs on boot, a bit like what Tails has, since the OS itself doesn't have to be encrypted. • Discovered that the main blocker I knew about for building Spectrum for RISC-V had been resolved, so did some very early work for having Nixpkgs support RISC-V musl builds[7][8][9]. This one was a bit of a happy accident of my surgery recovery — I only tried it again on a lark because I wasn't well enough at the time to do anything else, and then made the happy discovery. Probably won't pursue this any more for a while, because apart from anything else obtaining RISC-V hardware at the moment isn't easy, but it's nice to know it's now theoretically possible. • Demi Marie Obenour helped me figure out that passthrough of Wi-Fi devices to VMs was not broken for complicated reasons to do with Cloud Hypervisor's VFIO implementation like I thought, but for simpler reasons: passthrough to a Fedora VM works, so it must just be some sort of misconfiguration in the Spectrum VM that should be relatively straightforward to narrow down and fix. I had tried to test passthrough to other guest OSes before, but since then I discovered that my main laptop has a faulty Wi-Fi card, so I suspect that produced confusing results that made me think it was something more complicated. • Continued work on arranging future funding for Spectrum. [1]: https://spectrum-os.org/git/infra/commit/?id=df2824a8e19c16a27adb951f664a539... [2]: https://spectrum-os.org/git/spectrum/tree/release/checks/networking?id=879b4... [3]: https://anubis.techaro.lol/ [4]: https://spectrum-os.org/git/spectrum/commit/?id=e06b57f4fefc834f4868540a53de... [5]: https://github.com/systemd/systemd/commit/8c5b359579b0f1029edafb0bd96b5ebfb2... [6]: https://github.com/NixOS/nixpkgs/pull/408305 [7]: https://github.com/NixOS/nixpkgs/pull/406797 [8]: https://github.com/NixOS/nixpkgs/pull/406966 [9]: https://github.com/NixOS/nixpkgs/pull/406996 Looking back at that list now, I'm pretty happy! Even though I was struggling for a lot of the week that's not too bad overall. Maybe I'm even happy enough with it that I feel justified including this bit again for the first time since the surgery: As a reminder, you can support my work by donating to Spectrum's development through GitHub Sponsors[10] or Liberapay[11]. This helps a lot, especially with ongoing maintenance (usually fixing upstream bugs etc.) that is difficult to fund via a grant. [10]: https://github.com/sponsors/alyssais/ [11]: https://liberapay.com/qyliss Until next week!
participants (1)
-
Alyssa Ross