Michael Stapelberg
michael.stapelberg.ch · Personal blog · on HN since 2019
Michael Stapelberg, a Go and Linux developer and former Debian maintainer, writes about package managers, home networking, and hardware builds.
What HN saysHN commenters find his posts on fiber networking, his 25 Gigabit router build, and his code search index well done and worth reading.
88HN people shared it
58linked it in comments
100stories submitted
5.6Kstory points
3 months agolast shared
2019people per year2026
Most-shared posts
- 1Winding down my Debian involvement13 people · 650 points · first shared 2019 · 227 comments on HN
- 2Show HN: distri: a Linux distribution to research fast package management7 people · 94 points · first shared 2019 · 66 comments on HN
- 3Linux package managers are slow7 people · 46 points · first shared 2019 · 63 comments on HN
- 4The kinT kinesis keyboard controller (2020)7 people · 2 points · first shared 2020 · discussion on HN
- 5Distri: 20x faster initramfs (initrd) from scratch5 people · 224 points · first shared 2020 · 64 comments on HN
- 6My minimal, memory-safe Go rsync steers clear of vulnerabilities5 people · 5 points · first shared 2026 · discussion on HN
- 725 Gigabit Linux internet router PC build4 people · 489 points · first shared 2021 · 347 comments on HN
- 8Adding a fiber link to my home network4 people · 263 points · first shared 2020 · 209 comments on HN
- 9Tracking down a Zsh history data loss bug4 people · 7 points · first shared 2026 · discussion on HN
- 102013 03 21 kinesis custom controller4 people · first shared 2019
- 11My upgrade to 25 Gbit/s Fiber To The Home3 people · 753 points · first shared 2022 · 507 comments on HN
- 12My 2020 desk setup3 people · 170 points · first shared 2020 · 155 comments on HN
- 13Systemd: Enable indefinite service restarts3 people · 127 points · first shared 2024 · 78 comments on HN
- 14Ryzen 7 Mini-PC makes a power-efficient VM host3 people · 85 points · first shared 2024 · 56 comments on HN
- 15My 2025 high-end Linux PC3 people · 31 points · first shared 2025 · 9 comments on HN
What HN people wrote when they linked it
richard78459 · 2020-02-18
I use i3 on rooted chrome book and its amazing. I also use it on a 21 inch monitor its still amazing. It's so light weight, boots very quickly, uses all of the pixels and loading the new configuration is extremely simple. Just edit ~/.config/i3/config file and press Win-shift-R it loads the new configuration, basically very easy to experiment. Thanks so much Michael Stapelberg(https://michael.stapelberg.ch/) for this amazing software.
Youden · 2026-07-03
25Gbps is available but not common. Most average people will buy 10Gbps P2MP from Swisscom, Sunrise, Salt etc., the really big companies with marketing all over the cities. Then they'll use WiFi with the default modem and not reach anything like 25Gbps.
25Gbps requires pretty unusual hardware to use (see [0] for example) and you need to pay a couple hundred francs for installation so even among the geeks and nerds, it's not common.
I have it myself but recommend to friends and colleagues to use Init7 but 10Gbps instead.
[0]: https://michael.stapelberg.ch/posts/2021-07-10-linux-25gbit-internet-r…
thefz · 2026-06-16
Ever ran a single mode bidi fibre in a conduit? Push a wire puller, cleave and terminate ends, done. Zero effort unlike pulling a jacketed CAT7 cable, zero worries from electrical interference too, future proofing up to 40GBps. I ran double strands in my house so in case one breaks, there's another.
The floors where native fibre is not needed have a cheap ethernet media converter from fs.com, everything else (3 floor switches) are interconnected with 10Gbps SFP+ modules and 2.5G ethernet for the hosts.
All done thanks to the great
https://michael.stapelberg.ch/posts/2020-08-09-fiber-link-home-network…
(if you are reading this, I owe you several beers)
magicalhippo · 2025-09-08
He did have the Fractal Define 7 Compact case, and the pictures[1] only show a single 140mm case fan. From personal experience the Fractal Define cases are great at sound reduction due to the thermal padding, but those pads also insulates well.
Given the motherboard and RAM will also generate quite some heat, if the case fan profile was conservative (he does mention he likes low noise), could be the insides got quite toasty.
Back when I got my 2080 Ti, I had this issue when gaming. The internal temps would get so hot due to the blanket effect of the padding I couldn't touch the components after a gaming session. Had to significantly tweak my fan profiles. His CPU at peak would generate about the same amount of heat as my 2080 Ti + CPU I had then, and I had the non-Compact case with two case fans.
[1]: https://michael.stapelberg.ch/posts/2025-05-15-my-2025-high-end-linux-…
boyter · 2022-11-23
The blog posts about it are great too. This one https://michael.stapelberg.ch/posts/2019-09-29-dcs-positional-turbopfo… in particular.
minus7 · 2022-10-30
I also installed fiber a while ago after being told "this isn't hard" by Michael Stapelberg's post [1]. Luckily I managed to get by with patch cables; a 30m cables really goes a long way! I even managed to get a duplex LC through a 16mm conduit with a pretty tight 90° bend, but just with lube, quite some force and luck.
I can just recommend going for it if you're curious. Cables and tranceivers really aren't expensive from fs.com (though their sales people may start bothering you).
Edit: And old, used network cards from ebay, of course.
[1]: https://michael.stapelberg.ch/posts/2020-08-09-fiber-link-home-network…
dwohnitmok · 2021-07-10
> After my previous disappointment with the MikroTik CCR2004, I decided to try a custom PC build.
The article's author considered that exact router and rejected it.
He goes into greater detail here: https://michael.stapelberg.ch/posts/2021-05-28-configured-and-returned…
dmm · 2021-05-26
They should switch to a QMK based firmware. I use it on mine and the flexibility is amazing.
https://michael.stapelberg.ch/posts/2020-07-09-kint-kinesis-keyboard-c…
shasheene · 2021-02-21
I found this article from 2 years a great read: https://michael.stapelberg.ch/posts/2019-03-10-debian-winding-down/
jabl · 2021-01-15
> https://michael.stapelberg.ch/posts/2019-03-10-debian-winding-down/
This is really an excellent post. While I'm not a debian developer, some of those challenges enumerated affect end users directly as well. Like plenty of packages being single-maintainer fiefdoms, with wildly different quality of maintenance.
secure · 2020-08-19
I love my Kinesis Advantage, have been using it for 10+ years at this point.
I have recently released the kinT replacement keyboard controller: https://twitter.com/zekjur/status/1281130647776608257
Why would you replace the controller? There are a couple of good reasons:
* to build or modify your own keyboard
* to work around bugs in the standard controller, like I did back in 2013: https://michael.stapelberg.ch/posts/2013-03-21-kinesis_custom_controll…
* because you prefer to run open source software such as the QMK firmware (https://docs.qmk.fm/), even on your keyboard
pxc · 2024-07-01
> More so than Debian? Debian's seems pretty thorough. More so than Red Hat's, with the amount of important customers that depend on their distro?
Yes and yes. openSUSE's automated testing builds each package not just in a chroot but a new barebones VM, to ensure that depdndency definitions are complete. I've seen Fedora devs remark about how they don't have that kind of budget to throw as, e.g., COPR builds, the implication being that they have to put more engineering into their testing infrastructure. (Sorry, it was years ago and I don't have the energy or time to source it.)
Those VMs are accompanied with screen scrapers that perform OCR in order to automatically test the pre-boot environment, before a display server comes up.
It is possible that other distros are catching up here (I know nixos-tests can include virtualized, multi-machine, networked integration tests, for some packages, for instance). But this testing infrastructure for openSUSE is quite mature. See, e.g., this presentation from nearly a decade ago: https://www.youtube.com/watch?v=2K6ZmvIOtPw
As for Debian, the greater centralization of openSUSE's package sources is perhaps worth emphasizing as a major difference here. For openSUSE, package sources are all checked into special VCS system that is part of the Open Build Service (which is capable of tracking and building external packages, including packages from other distros as well). With Debian, package sources are uploaded as binary artifacts by…
chubot · 2020-05-17
I think git is a good model for what would otherwise be "laggy async and mismatched" distributed systems.
It has a fast sync algorithm, and after you sync, everything works locally on a fast file system. You explicitly know when you're hitting the network, rather than hitting it ALL THE TIME.
-----
I would like to use something like git to store the source code to every piece of software I use, and the binaries. That is, most of a whole Linux distro.
I have been loosely following some "git for binary data" projects for a number of years. I looked at IPFS like 5 years ago but it seems to have gone off the rails. The dat project seems to have morphed into something else?
Are there any new storage projects in that vein? I think the OP is identifying a real problem -- distributed systems are unreliable, and you can get a lot done on a single machine. But we are missing some primitives that would enable that. Every application is littered with buggy and difficut network logic, rather than having a single tool like git (or rsync) which would handle the problem in a focused and fast way.
It would be like if Vim/Emacs and GCC/Clang all were "network-enabled"... that doesn't really make sense. Instead they all use the file system, and the file system can be sync'd as an orthogonal issue.
Sort of related is a fast distro here I'm looking at: https://michael.stapelberg.ch/posts/2019-08-17-introducing-distri/
wereHamster · 2026-06-21
I was just looking into microvm (via microvm.nix) to isolate coding agents. While the machine starts quickly, as in the article, the userspace (nixos) takes much longer. I'd probably need to spend some time to strip the system of all non-essential services. I also briefly considered running the agent harness as PID 0. That would speed things up, but also mean a lot of responsibility on my end. My biggest struggle is how to imperatively manage agent microvms on nixos. microvm.nix isn't really well suited for that task. For longer-running VMs, that I can manage via my nixos config, I'm quite happy with microvm.nix. Related article by Michael Stapelberg: https://michael.stapelberg.ch/posts/2026-02-01-coding-agent-microvm-ni…
strobe · 2026-06-03
>I thought that was already fixed?
only partially and both Sway and Hyperland still doesn't has official support yet.
this blog post explaining some issues https://michael.stapelberg.ch/posts/2026-01-04-wayland-sway-in-2026/
stock_toaster · 2026-05-30
Maybe time to pursue alternative implementations[1].
[1]: https://michael.stapelberg.ch/posts/2026-05-24-minimal-memory-safe-go-…
agwa · 2025-12-22
I can't find it now but I recently saw a graph of new Debian Developers joining the project over time and it has sharply declined in recent years. I was on track to becoming a Debian Developer (attended a couple DebConfs, got some packages into the archive, became a Debian Maintainer) but I ultimately burned out in large part because of how painful Debian's tooling makes everything. Michael Stapelberg's post about leaving Debian really rings true: https://michael.stapelberg.ch/posts/2019-03-10-debian-winding-down/
Debian may still be "getting by" but if they don't make changes like this Git transition they will eventually stop getting by.
denysvitali · 2025-10-05
Not my ISP (Init7 FTW!), but my router (Mikrotik) is notoriously infamous for being a total crap at IPv6 (see for example https://michael.stapelberg.ch/posts/2021-05-28-configured-and-returned…
In my particular case there seems to be an odd bug / misconfiguration from my side that makes the router / clients from time to time loose the IPv6 routing. The fallback is... a connection hanging forever. The only fix? Reconnecting to the Wi-Fi to get refresh the DHCP lease.
I debugged it for waay too long, and at this point I'm 80% convinced it's a Mikrotik bug of some sort.
NewJazz · 2025-04-22
Just FYI you are describing a ports system, of which there are many. From macports, to alpine packages, to nixpkgs... Tons of research and automation in this area already. Would encourage looking at Nix and distri in particular. Many Nix packages can be built on/for macOS!
https://nixos.org/manual/nixpkgs/stable/#preface
https://michael.stapelberg.ch/posts/tags/distri/
hda111 · 2025-01-31
Some defaults are not good for servers. For example, systemd gives up after a few tries to restart a service. This is really annoying for server administrators when they don’t know about the bad defaults.
https://michael.stapelberg.ch/posts/2024-01-17-systemd-indefinite-serv…
Helithumper · 2024-10-29
Reminds me of Michael Stapelberg's 8k Monitor Setup:
https://michael.stapelberg.ch/posts/2017-12-11-dell-up3218k
https://michael.stapelberg.ch/posts/2020-05-23-desk-setup
Piraty · 2024-09-24
Debian doesn't do a good job in making life easier for its maintainers. https://michael.stapelberg.ch/posts/2019-03-10-debian-winding-down/
msandford · 2024-08-19
I found I was able to get a fiber shear and end maker for less than $100 or so.
https://michael.stapelberg.ch/posts/2020-08-09-fiber-link-home-network…
Optical Fibre Cleaver SKL-6C Cable Cutting Cutter optical fiber CFS-3 stripper Leather wire stripper FTTH tool https://a.co/d/6dcvR0l
fransje26 · 2024-07-04
There was this article on lobste.rs yesterday:
https://michael.stapelberg.ch/posts/2024-07-02-ryzen-7-mini-pc-low-pow…
Perhaps it can be configured to meet your requirement for "affordable"?
crimsontech · 2023-12-20
And the KinT custom controller for Kinesis Advantage keyboards https://michael.stapelberg.ch/posts/2020-07-09-kint-kinesis-keyboard-c…
drux · 2023-12-19
The 25 Gbit/s at home guy
https://michael.stapelberg.ch/posts/2022-04-23-fiber7-25gbit-upgrade/
jseliger · 2023-10-06
Funny, I wrote this the other day on HN:
I eventually wound up with Kinesis ergo keyboards and stopped being much "into" keyboards; they are a means to an end: https://jakeseliger.com/2011/07/17/further-thoughts-on-the-kinesis-adv…
Now I have an Advantage 3 with Box White switches, after admittedly talking to an Upgrade Keyboards key switch sommelier, which I somewhat undercuts my first sentence in the preceding paragraph.
New hardware is fun but, simultaneously, keyboards are fundamentally means to an end, more than ends in themselves. Then there are people like Stapelberg, who produced the stapelberg for the Kinesis keyboards, and who I have to admire for their obsession with modding and their fortitude: https://michael.stapelberg.ch/posts/2020-07-09-kint-kinesis-keyboard-c…
yakubin · 2023-08-17
> However I would have to say that `dnf` (the new `yum`) is waaay better than apt. For a start it is much much faster to install things. I don't know why apt is so slow.
I (and everyone else I know of) have the opposite experience, which pretty much matches the numbers here: <https://michael.stapelberg.ch/posts/2019-08-17-linux-package-managers-… DNF seems to be 0.1% faster than YUM, but it’s still not competitive with other package managers.
jum4 · 2023-01-07
Maybe this is interesting for you https://michael.stapelberg.ch/posts/2021-07-10-linux-25gbit-internet-r…
miduil · 2022-09-21
I think FUSE performance has significantly improved since 2010, the year in which ZFS-On-Linux became available I believe.
This is just one of many examples: https://www.phoronix.com/news/MTI1MzM
In contrary, in some cases FUSE is even faster than doing a regular kernel mount(). There is an experimental research distribution called distri that is exclusively relying on fuse mounting and figured out that FUSE was faster for doing mounts. https://michael.stapelberg.ch/posts/tags/distri/