29 Aug 2025 |
LilleCarl (Salsa9) | nix-snapshotter solves this by creating one bind mount per storepath instead, which is an approach that only works in the containerd layer, the benefit they get is that they can create container paths outside /nix. With cknix-csi you must write an activation script that copies files from /nix to FHS if you need stuff outside of /nix | 09:59:49 |
LilleCarl (Salsa9) | Sorry for spamming, excited | 09:59:57 |
LilleCarl (Salsa9) | * nix-snapshotter solves this by creating one bind mount per storepath instead, which is an approach that only works in the containerd layer, the benefit they get is that they can create container paths outside /nix(i think). With cknix-csi you must write an activation script that copies files from /nix to FHS if you need stuff outside of /nix | 10:01:30 |
Claes | In reply to @lillecarl:matrix.org The part where we hardlink from the source store to a new "fake store" is where it's unique, just sharing a global /nix with all pods on the host would work, but definitely not for "production" since any application in the cluster could read any other application in the clusters code by travesting the store. ok this part I misunderstood first
will need more time to look through but definitely innovative! | 10:07:13 |
30 Aug 2025 |
Claes | I published my secrets management module here : https://github.com/claes/hemlis | 13:25:39 |
1 Sep 2025 |
LilleCarl (Salsa9) | Nice Claes! I'll have a look later tonight | 15:12:58 |
LilleCarl (Salsa9) | I've got a thing to share which I thought can be quite useful. The nix.db database contains a field called "registrationTime" which nix-collect-garbage --delete-older-than Xd uses.
I(Claude) wrote a little Python script to "touch" all dependencies (optionally including build dependencies) in the database so that recently built things don't get garbage collected if you run with the age options
https://gist.github.com/Lillecarl/a08759fdc8f264eb237e46fd0ef16c40 <- I just tested that it does what I want it to-ish so don't go break your DB with this :p
Something something --dry-run and --info also needs sudo because something something sqlite WAL needs write access even when only reading (?). I might just tmpclone the db for read ops 😄
The reason I made this is to make garbage collection more dynamic for the Nix CSI driver i've been spamming about. | 15:18:35 |
Claes | I forgot if it is possible but I would like combine the age limit with a generation limit. Something like gc everything older than 7 days but keep at least 5 generations | 16:46:43 |
chreekat | There's https://search.nixos.org/options?channel=25.05&show=boot.loader.grub.configurationLimit&query=grub. but it's a maximum, not a minimum :/ | 17:21:52 |
LilleCarl (Salsa9) | The nix sqlite database is really simple. Once I'm done cursing over replacing hardlinks with bind-mounts (hopefully) this'll be a good project | 19:57:57 |
LilleCarl (Salsa9) | The GC could do with a bit more "intelligence". The current one is honestly dumb as WORDS | 19:58:17 |
2 Sep 2025 |
talyz | Are any of you coming to nixcon? :) | 14:21:03 |
Claes | not me | 14:32:04 |
markuskowa | I have to skip this year unfortunately. | 14:50:00 |
14 Sep 2025 |
| Emma [it/its] joined the room. | 08:39:46 |
| Benedikt joined the room. | 17:36:41 |
16 Sep 2025 |
LilleCarl (Salsa9) | markuskowa: I notice you haven't scheduled a next meetup ;) | 16:03:36 |
markuskowa | In reply to @lillecarl:matrix.org markuskowa: I notice you haven't scheduled a next meetup ;) You got me 🫠. It was quite busy. What about Tuesday 30th of September? | 16:08:11 |
LilleCarl (Salsa9) | Sounds good to me! 😁 | 16:11:59 |
LilleCarl (Salsa9) | markuskowa: Last one was a Wednesday, I can't remember if we have some preference previously, cast a vote! 😄 | 17:26:06 |
markuskowa | We were alternating between Tuesday and Wednesday to make it the decision easier. | 18:15:49 |