Tootfinder

Opt-in global Mastodon full text search. Join the index!

@stf@chaos.social
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:

@stf@chaos.social
2026-09-01 22:47:47

E pur si compilio!
#zig v0.16 #klutshnik

@jamesthebard@social.linux.pizza
2026-06-20 17:40:32

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

A screenshot of me working through a linked list "recipe" found on The Internet:tm: written in Zig.
@kornel@mastodon.social
2026-07-16 12:23:31

The Bun's #Zig to #Rust rewrite is an advertisement for Anthropic, at the cost of hurting both languages.
It already made a stink for Zig. Now, when this mountain of unstable, auto-converted LGTM'd code is going to have embarrassing bugs, it's going to make a stink for Rust: "see, Ru…

@jamesthebard@social.linux.pizza
2026-08-21 19:52:31

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

A screenshot of four functions that work together to get the LB/sector size and overall block device size in Zig.  Even better, it doesn't leak memory...
@stf@chaos.social
2026-08-30 22:27:36

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:

@johl@mastodon.xyz
2026-07-09 16:19:16

Why the #Zig project bans all LLM contributions – How Open Source Survives the Age of Free Code
lumramabaja.com/posts/engineer

@underdarkGIS@fosstodon.org
2026-06-08 21:50:21

I enjoyed watching this interview with #zig lead dev @… on their no AI policy and running a small sustainable non-profit

@jamesthebard@social.linux.pizza
2026-08-13 20:48:39

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

A screenshot of neovim with the primary partition parse code written in Zig.
@jamesthebard@social.linux.pizza
2026-08-23 18:14:23

Nothing like converting slices of `u8`s to `u16`s. The GPT partition names are all `UTF16LE` which makes things interesting...however, that part is done and scraping GPT information is working as expected.
#zig #gpt

A function to convert slices of `u8`s to `u16`s or basically any that is a multiple of `u8`s.  Even better, it actually works.
@jamesthebard@social.linux.pizza
2026-08-22 16:22:14

Sometimes, you just need a nice standard-sized unsigned integer of exactly 48 bits...also, I think I hate UUIDs.
#zig #programming

The source code in VSCodium showing the `convertToUUID` function which breaks up a 16 byte array into five fields, byte-swaps the last two fields, then puts them together into a string.
@jamesthebard@social.linux.pizza
2026-08-09 15:18:56

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

A screenshot of the Zig source code that I wrote running in Neovim that opens a file and reads 10 bytes from a file then prints it to a screen.
@jamesthebard@social.linux.pizza
2026-08-14 00:03:42

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

ALL OF THE MBR PARTITION TYPE KEY/VALUE PAIRS in Zig.
@jamesthebard@social.linux.pizza
2026-08-12 20:30:11

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

MBR breakdown in Zig via `neovim`.
@jamesthebard@social.linux.pizza
2026-08-14 18:27:07

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

Source code in VSCodium showing part of the MBR partition processing section.  The bottom pane shows the current partition struct output from the run against a test file with 3 primary and 4 extended partitions.
@jamesthebard@social.linux.pizza
2026-08-12 03:49:19

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

A screenshot of the new `dataops` module showing the buffer struct along with the `getData` function.  It even compiles!