2026-09-04 14:00:24
woohoo, just pushed an update to the zphinx* server to build with #zig v0.16 - due to the #iocalypse this is quite a substantial patch:
woohoo, just pushed an update to the zphinx* server to build with #zig v0.16 - due to the #iocalypse this is quite a substantial patch:
E pur si compilio!
#zig v0.16 #klutshnik
Hrmm, Zig is an interesting language...figured I'd kick the tires and figure out what's going on. So far it's been pretty nice.
#zig #programming
So, seems I have a new job lined up finally as I've signed the tentative offer letter. Also, still working with Zig and made progress with grabbing information from the Linux `sys` tree for sector/logical block sizes. Been a busy yet awesome day.
#zig #programming
phew it* finally compiles! with #zig v0.16 (i know i'm a bit late) the #iocalypse was quite some effort to avert. now let's try to port #klutshnik** too
[*] zphinx server:
Why the #Zig project bans all LLM contributions – How Open Source Survives the Age of Free Code
https://lumramabaja.com/posts/engineering-sacrifice-ho…
The Zig journey continues, things get a bit cleaner and we're now parsing the primary partition entries in the MBR. Very nice...
#programming #zig
Sometimes, you just need a nice standard-sized unsigned integer of exactly 48 bits...also, I think I hate UUIDs.
#zig #programming
So, after searching far and wide on the internet I have managed to open a file from a command-line argument and read 10 bytes from it using Zig v0.16. I was not expecting it to be quite this complicated.
#programming #zig
Holy crap, I have to be missing something with respect to HashMap construction...I officially have all of the `try put` statements...lol. It does work though, and now the primary MBR partitions have appropriate partition type descriptions.
#zig #programming
Moar progress, will probably move this into the struct along with MBR reconstruction from the struct. This might actually end up doing a bit of `fdisk` stuff...
#zig #programming #mbr
More progress. I've got the entire MBR processing finished up with a ton of cleanup. Processing the extended partition entries is always fun, but after a fixing a few dumb mistakes everything is parsing out correctly. Even better: no memory leaks.
#zig #programming
So, after some consideration I decided to break out the block device reading operations out into its own module. Also, the returned data is now in a struct with a `.deinit` method that will handle cleanups. It might be more complicated than necessary, but it's clean.
#zig #programming