Michael Stapelberg 🐧🐹😺

@zekjur.bsky.social

Mensch mit starkem Datendrang • Artisanal Open Source • latenz-unverträglich • ::) • he/him

I just released github.com/gokrazy/rsync in version v0.3.4, which contains a couple of bug fixes 🥳 In case you’re unfamiliar: this library (and program) implements rsync client and server, which can send or receive files (upload, download, all directions supported, 100% #golang)

GitHub - gokrazy/rsync: rsync in Go! implements client and server, which can send or receive files (upload, download, all directions supported)

rsync in Go! implements client and server, which can send or receive files (upload, download, all directions supported) - gokrazy/rsync

github.com

New blog post published 🥳 Migrating my NAS from CoreOS/Flatcar Linux to #NixOS In this article, I want to show how to migrate an existing Linux server to NixOS — in my case the CoreOS/Flatcar Linux installation on my Network Attached Storage (NAS) PC. michael.stapelberg.ch/posts/2025-0...

Migrating my NAS from CoreOS/Flatcar Linux to NixOS

In this article, I want to show how to migrate an existing Linux server to NixOS — in my case the CoreOS/Flatcar Linux installation on my Network Attached Storage (NAS) PC. I will show in detail how t...

michael.stapelberg.ch

TIL: Apple’s migration tool supports Thunderbolt networking, so by connecting two Macs with a Thunderbolt cable, you can transfer data much much faster than with Gigabit Ethernet: the migration tool measures the connection with 3 GB/s peak speed (actual migration speed: >> 500 MB/s):

photo of the apple migration tool, showing how a thunderbolt connection can reach 3 GB/sphoto of the migration tool working at >> 500 MB/s

📢 The Internet Archive needs your help. At a time when information is being rewritten or erased online, a $700 million lawsuit from major record labels threatens to destroy the Wayback Machine. Tell the labels to drop the 78s lawsuit. 👉 Sign our open letter: www.change.org/p/defend-the... 🧵⬇️

Defend the Internet Archive.
Protect the Wayback Machine.
Tell the music labels: Drop the 78s lawsuit.
Sign our open letter on change.org

My website/blog michael.stapelberg.ch is now self-hosted from Zürich! 🇨🇭 I’m now using the Caddy web server on a machine running my router7.org (which in turn is built on my gokrazy.org) to serve the static files (previously: GitHub pages + CloudFlare) More services to follow! #golang #selfhosting

About

Michael Stapelberg’s private website, containing articles about computers and programming, mostly focused on Linux.

michael.stapelberg.ch

Last November, I blogged about using ephemeral PostgreSQL DBs for Go testing. It was worth digging deep into the topic, because the insights transfers well. For example, I recently optimized the gokrazy/rsync tests like so: (1/n) #golang

Testing with Go and PostgreSQL: ephemeral DBs

Let’s say you created a Go program that stores data in PostgreSQL — you installed PostgreSQL, wrote the Go code, and everything works; great! But after writing a test for your code, you wonder: how do...

michael.stapelberg.ch