bin

created pr with 76.1 on 2025-08-23T19:31:20Z · by bcbb7755
cmds
checkout latest patchset:
ssh pr.pico.sh print 76 | git am -3
checkout any patchset in a patch request:
ssh pr.pico.sh print 76.[rev] | git am -3
add changes to patch request:
git format-patch main --stdout | ssh pr.pico.sh pr add 76

Patchset 76.1 on 2025-08-23T19:31:20Z · commit 2e44e9f

add initial post on the systemdization
Benjamin Pollack 2025-08-23T19:27:59Z
Semantic diff summary
0 added, 0 modified, 0 signature changed, 0 removed across 0 analyzed files (2 files skipped: unsupported file type)
+2 -0 .codebook.toml #
......@@ -23,11 +23,13 @@ words = [
2323 "mesos",
2424 "ndash",
2525 "ngrok",
26+ "quadlets",
2627 "riak",
2728 "résumé",
2829 "skunkworks",
2930 "sourcehut",
3031 "spreedly",
32+ "systemd",
3133 "tkww",
3234 "xdebug",
3335 ]
+54 -0 post/rebuilding-the-lan.md #
......@@ -0,0 +1,54 @@
1+---
2+title: "That time I decided to redo the whole homelab"
3+date: 2025-08-25T09:10:11
4+draft: true
5+tags: [
6+ "tech",
7+ "devops",
8+]
9+---
10+
11+This is a story about victory and defeat. It's a story about a do-it-yourself
12+stalwart who insists on understanding every little thing about his computer
13+deciding to lean into Claude, and promptly really regretting that decision.[^1]
14+It's about the simplicity of `systemd`, the complexity of Kubernetes, and the
15+miscibility of those concepts when you get into Quadlets. And finally, it's a
16+story about me getting more into devops than I have in so many years I had to
17+bust out a completely new tag on my blog.
18+
19+But more than any of that, it's a story about just diving in and making
20+mistakes.
21+
22+I'm very much not burned out with coding. For the past nearly a year, I've been
23+back heads-first into the bytes, and I've been loving it. It's not all been
24+roses---I've dealt with the AI onslaught same as anyone else, except that I also
25+went about three years without writing any code other than small projects for
26+fun, so that was great---but my day-to-day has been way better.
27+
28+What I was burned out on (until this past week) was my homelab. Somewhere in the
29+middle of the pandemic, when the world was falling apart instead of merely the
30+United States, I bought a Synology NAS, and filled it to what for me was "the
31+brim" at about 6 TB. And that much was fine, as far as it went, but I didn't buy
32+any server to go with it; instead, I just slavishly chucked anything I might be
33+interested in at
34+
35+At about this point, I gave up, and simply created a `.volume`, figuring I'd
36+sort things out later. Which I did, gradually: first, I verified that I hadn't
37+actually hosed any of the relevant permissions on the actual account. Then, I
38+verified that setting `PUID` and `PGID` to `0` would do what I wanted in terms
39+of actual local permissions. Finally, I verified that things did not, in fact,
40+work.
41+
42+My next clue came at 16:15, when the clock stopped, and the following clue an
43+hour later at 16:15 when I discovered the actual meaning of a trailing `:z` on a
44+volume sharing description! See, with Docker, at some point, I'd begun just
45+slavishly slapping `:z` on volumes. Monkey see, monkey do, after all. But when I
46+was converting everything to Quadlets, I dropped it, because "that must be a
47+Docker thing." But, no, turns out it's an _SELinux_ thing. Specifically, for
48+reasons I'll have to learn about later, adding `:z` tells SELinux somehow that I
49+meant to do the thing I'm very obviously deliberately doing. Yay!
50+
51+[^1]: For those from Lobsters or other similarly minded sites, please don't tag
52+ this as `vibecoding`, because that's a minor point in this piece, and also,
53+ while I did not necessarily regret that decision, I did both rue and lament
54+ it.
Back to top