Published

All published posts

2457 posts latest post 2026-04-19
Publishing rhythm
Apr 2026 | 40 posts

The k3s system-upgrade controller is a fantastic tool for upgrading k3s automatically. It has done a fantastic job for me every time I’ve used it. Today I ran it on a cluster that needed to upgrade several minors and I learned that the controller does not pick up on changes to the channel url if you change from minor to minor.

The solution I came up with was to name the plan with the version it supports. Then on each patch upgrade, change both the plan name and the channel. I use gitops with argocd, it automcatically cleaned up old plans, created new plans, and the system-upgrade-controller picked up the plan and started applying immediately.

# Server plan apiVersion: upgrade.cattle.io/v1 kind: Plan metadata: name: server-plan-v1.33 # <- This is important if you want to change the channel name namespace: system-upgrade spec: concurrency: 1 cordon: true nodeSelector: matchExpressions: - key: node-role.kubernetes.io/control-plane operator: In values: - "true" serviceAccountName: system-upgrade upgrade: image: rancher/k3s-upgrade channel: https://update.k3s.io/v1-release/channels/v1.33 --- # Agent plan apiVersion: upgrade.cattle.io/v1 kind: Plan metadata: name:...

I did not realize that David’s site was built on a homegrown Static Site Generator. As someone who also does this myself I appreciate the effort. I build my site on markata. It started as a project to learn a set of tools and has become a project that I depend on everywhere and cant put down. It’s a great tool, but you probably shouldn’t use it. Anyways, I feel this really shows on David’s site. His site is filled with custom features that make it very unique, one off, and always a pleasure to read.

gpus are awesome

GPU's are awesome. I just added gpu support to my bambu-studio distrobox and its flying! On my wayland based system the native package has never worked, (arch or bazzite), but running in a distrobox does. Outside of distrobox the 3d rendering canvas is black, no output. It used to work fine without gpu support, was snappy enough, complex models were a bit sluggish, but fine. Lately something happened and simple models bring it to its knees. It got unusable! ![](https://dropper.waylonwalker.com/file/a06bbf8b-abea-472e-8d96-4255d522444d.webp) > The print I happen to be working on is some custom designed gumdrops for a > theater set. The ui is working and not lagging 30s between clicks causing > clicks to happen on the wrong ui element.
View

Niche companies will rise from the ashes. Companies that want to build good products for customers. Companies that will get hundreds of users. They will treat them right and make enough money to support themselves, maybe.

Alongside them we will self host. We will run our own services out of our basement. There will be downtime, but its ok. We will enjoy ourselves. We will tell everyone how much better it is BTW

Next to that is a firehose of shit piling back into the circular snakes mouth as all of your data flows freely between any company that can get their hands on it. These companies will spend and make money hand over fist. Most people will continue to use these services until enough is enough and unplug from everything.

In this world I don’t see how we sustain the amount of engineers we have created. Small companies run lean, small, and allow slow organic growth happen.

...

This feels very promising for the future as we enter a world that is more and more dependent on AI that inference is so cheap. I did not understand the scale to how much cheaper inference is compared to training. As we get better with training I imagine this gets significantly better as well. I know they all claim to be profitable on inference, but scrolling through Simon’s feed here you see several articles on the stark difference.

Nic is also building out a similar workspaces script. This feels like such a great thing to have ai work on fully customized tools for your personal workflow. Also Nice shout out!

This looks like great prototyping tool for k8s. I too often ask ai to get me going with the things I need. I’ve used k8s long enough that I can generally remember all the things I need, roughly where they go, would probably forget a few things and need to iterate, but I cannot remember exactly what goes where and need examples at a minimum. I need to give this a go from desktop and see if it will work for me. Right now looking through mobile looks promising.

Apple Boxes Complete
A complete stack of apple boxes for the local theater.
Design For Bosch Colt Dust Collection V1
Isometric view of the Bosch Colt dust collection design.
Dust Collection For Bosch Colt V0
Dust Collection for Bosch Colt router v0 made of 3/4" plywood.

setting COLUMNS env var to a number greater than 0 will make the terminal resize to that number of columns.

COLUMNS=80 uvx --from rich-cli rich myscript.py

I discovered this when I was trying to make a low effort readme generated from the code, but did not depend on the size of terminal it was ran on.

The tea command for gitea (used by forgejo) has a flag for login. With gitea you can have multiple accounts logged in. When you try to run a command such as repo create it will prompt you which login to use, but I learned that you can bake it in to all of them with --login <login-name>