!VhbWwlUdjHkamKnfrK:nixos.org

Nix: Cloud Native

282 Members
65 Servers

Load older messages


SenderMessageTime
2 Nov 2025
@lillecarl:matrix.orglillecarl *

Easiest way actually is probably editing default.nix

            nix-csi = {
              namespace = "nix-csi";
              image = imageRef; # comment this out
              cache.storageClassName = "some nice CSI";
              authorizedKeys = [
                "YOUR KEY HERE :) (Only required if you wanna push to the cluster cache)"
              ];
              ctest = {
                enable = false;
                replicas = 0;
              };
            };

Then running

nix run --file . kubenixEval.deploymentScript -- --prune --yes
22:00:48
@lillecarl:matrix.orglillecarlNp! There's always another day, nuclear Armageddon is not on my agenda22:01:40
@erikeah:matrix.orgErikBuajajajajjaja22:02:07
@erikeah:matrix.orgErik @lillecarl:matrix.org: thanks for the hints! 22:04:24
3 Nov 2025
@jennydaman:fedora.im@jennydaman:fedora.im left the room.18:53:49
4 Nov 2025
@cafkafk:gitter.imcafkafk changed their profile picture.08:23:35
7 Nov 2025
@mahmoudk1000:matrix.orgMahmoud joined the room.19:06:56
@emma:rory.gay@emma:rory.gay left the room.22:41:28
9 Nov 2025
@lillecarl:matrix.orglillecarl

Erik: I reworked where patched Lix updates paths and made it update recursively so now it sucks less ™️

https://github.com/Lillecarl/lix/commit/9ac72bbd0c7802ca83a907d1fec135f31aab6d24

I'm gonna add a script on a timer to the CSI pods that runs nix path-info --all | nix copy --to nix-cache. This way the cache will always hold any storePaths alive in the cluster while not requiring any complex bookkeeping (nix copy acts as a cache refresher) 😄

It's shaping up pretty darn nice, especially the feature of using the CSI pods as a build farm

22:02:01
10 Nov 2025
@lillecarl:matrix.orglillecarlI'm building my own Hetzner Kubernetes (ClusterAPI managed) cluster using some of the Nix Kubernetes tools I've been working on (nix-csi and by proxy dinix, easykubenix). The goal of the cluster is to be the cheapest shit you could possibly imagine meaning no LoadBalancers. To do this I had to write a little Python thing that creates ipaddresspools for the MetalLB(controller no speaker) to assign service IP's from the nodes externalip list. I expanded it to split the IPv6 /64 you get from Hetzner into two and assign one to services and one to pods. Anyways to deploy this Python script I used nix-csi so here's a public example of how it works https://github.com/Lillecarl/hetzkube/commit/f35b8fadfe17d5cc7054ae6f6cf187879272d2ba Since the cluster is x86 and arm I had to build the script for both x86 and arm which was no problem (nix-csi picks arch by where it's scheduled) 😄 Aye it also makes DNSEndpoint resources from the control-plane nodes IP's so I don't need an LB there either02:58:48
@lillecarl:matrix.orglillecarl* I'm building my own Hetzner Kubernetes (ClusterAPI managed) cluster using some of the Nix Kubernetes tools I've been working on (nix-csi and by proxy dinix, easykubenix). The goal of the cluster is to be the cheapest shit you could possibly imagine meaning no LoadBalancers. To do this I had to write a little Python thing that creates ipaddresspools for the MetalLB(controller no speaker) to assign service IP's from the nodes externalip list. I expanded it to split the IPv6 /64 you get from Hetzner into two and assign one to services and one to pods. Anyways to deploy this Python script I used nix-csi so here's a public example of how it works https://github.com/Lillecarl/hetzkube/commit/f35b8fadfe17d5cc7054ae6f6cf187879272d2ba Since the cluster is x86 and arm I had to build the script for both x86 and arm which was no problem (nix-csi picks arch by where it's scheduled) 😄 Aye it also makes DNSEndpoint resources from the control-plane nodes IP's so I don't need an LB there either Disclaimer: The Python script is a collaboration with AI02:59:28
@lillecarl:matrix.orglillecarl * I'm building my own Hetzner Kubernetes (ClusterAPI managed) cluster using some of the Nix Kubernetes tools I've been working on (nix-csi and by proxy dinix, easykubenix). The goal of the cluster is to be the cheapest shit you could possibly imagine meaning no LoadBalancers. To do this I had to write a little Python thing that creates ipaddresspools for the MetalLB(controller no speaker) to assign service IP's from the nodes externalip list. I expanded it to split the IPv6 /64 you get from Hetzner into two and assign one to services and one to pods. Anyways to deploy this Python script I used nix-csi so here's a public example of how it works
commit Since the cluster is x86 and arm I had to build the script for both x86 and arm which was no problem (nix-csi picks arch by where it's scheduled) 😄) Here's the [nix-csi magic](https://github.com/Lillecarl/hetzkube/commit/f35b8fadfe17d5cc7054ae6f6cf187879272d2ba#diff-4c88f6039362165e9d0e418fce1c757befb04cf659d7738a89807fc7504ccadcR5-R113
Aye it also makes DNSEndpoint resources from the control-plane nodes IP's so I don't need an LB there either
Disclaimer: The Python script is a collaboration with AI
03:00:13
@lillecarl:matrix.orglillecarl * I'm building my own Hetzner Kubernetes (ClusterAPI managed) cluster using some of the Nix Kubernetes tools I've been working on (nix-csi and by proxy dinix, easykubenix). The goal of the cluster is to be the cheapest shit you could possibly imagine meaning no LoadBalancers. To do this I had to write a little Python thing that creates ipaddresspools for the MetalLB(controller no speaker) to assign service IP's from the nodes externalip list. I expanded it to split the IPv6 /64 you get from Hetzner into two and assign one to services and one to pods. Anyways to deploy this Python script I used nix-csi so here's a public example of how it works
commit Since the cluster is x86 and arm I had to build the script for both x86 and arm which was no problem (nix-csi picks arch by where it's scheduled) 😄) Here's the [nix-csi magic](https://github.com/Lillecarl/hetzkube/commit/f35b8fadfe17d5cc7054ae6f6cf187879272d2ba#diff-4c88f6039362165e9d0e418fce1c757befb04cf659d7738a89807fc7504ccadcR5-R113)
Aye it also makes DNSEndpoint resources from the control-plane nodes IP's so I don't need an LB there either
Disclaimer: The Python script is a collaboration with AI
03:00:27
@lillecarl:matrix.orglillecarl * I'm building my own Hetzner Kubernetes (ClusterAPI managed) cluster using some of the Nix Kubernetes tools I've been working on (nix-csi and by proxy dinix, easykubenix). The goal of the cluster is to be the cheapest shit you could possibly imagine meaning no LoadBalancers. To do this I had to write a little Python thing that creates ipaddresspools for the MetalLB(controller no speaker) to assign service IP's from the nodes externalip list. I expanded it to split the IPv6 /64 you get from Hetzner into two and assign one to services and one to pods. Anyways to deploy this Python script I used nix-csi so here's a public example of how it works
commit Since the cluster is x86 and arm I had to build the script for both x86 and arm which was no problem (nix-csi picks arch by where it's scheduled) 😄) Here's the nix-csi magic
Aye it also makes DNSEndpoint resources from the control-plane nodes IP's so I don't need an LB there either
Disclaimer: The Python script is a collaboration with AI
03:00:49
@lillecarl:matrix.orglillecarlI felt it was time to build an actual "production-ish" cluster to eventually host something real. Ofc it should run both DualStack IP and dual architectures to make it a little challenging03:03:36
@arianvp:matrix.orgArianDoes Hetzner do BGP any cast?18:11:00
11 Nov 2025
@robert:scs.ems.hostRobert Rose changed their display name from Robert Rose - 🏝️ bis 10.11.25 to Robert Rose.09:22:17
@xentec:gated.spacexentec joined the room.14:05:12
@erikeah:matrix.orgErik @lillecarl:matrix.org: I didnt have enought time to check nix-csi yet, sorry 19:32:22
@erikeah:matrix.orgErik
In reply to @lillecarl:matrix.org
I'm building my own Hetzner Kubernetes (ClusterAPI managed) cluster using some of the Nix Kubernetes tools I've been working on (nix-csi and by proxy dinix, easykubenix). The goal of the cluster is to be the cheapest shit you could possibly imagine meaning no LoadBalancers. To do this I had to write a little Python thing that creates ipaddresspools for the MetalLB(controller no speaker) to assign service IP's from the nodes externalip list. I expanded it to split the IPv6 /64 you get from Hetzner into two and assign one to services and one to pods. Anyways to deploy this Python script I used nix-csi so here's a public example of how it works
commit Since the cluster is x86 and arm I had to build the script for both x86 and arm which was no problem (nix-csi picks arch by where it's scheduled) 😄) Here's the nix-csi magic
Aye it also makes DNSEndpoint resources from the control-plane nodes IP's so I don't need an LB there either
Disclaimer: The Python script is a collaboration with AI
About this, pretty amazing!
19:32:35
@lillecarl:matrix.orglillecarlNop19:59:24
12 Nov 2025
@inayet:matrix.orgInayet changed their display name from inayet to Inayet.12:38:46
13 Nov 2025
@devusb:matrix.orgdevusb joined the room.21:55:51
17 Nov 2025
@insipx:matrix.orginsipx joined the room.01:54:18
19 Nov 2025
@j0squ4red:matrix.orgjosqu4red joined the room.22:02:20
20 Nov 2025
@user12592851:matrix.orgJohn joined the room.06:09:48
22 Nov 2025
@cameronraysmith:matrix.orgcameronraysmith joined the room.18:11:19
@easel:matrix.orgeasel joined the room.19:10:28
24 Nov 2025
@bpub:matrix.orgBPub joined the room.13:22:19
@bpub:matrix.orgBPub changed their display name from bpub to Robert.13:32:01

Show newer messages


Back to Room ListRoom Version: 6