!VRULIdgoKmKPzJZzjj:nixos.org

Nix Package Manager development

835 Members
For people hacking on Nix: https://github.com/NixOS/nix Nix maintainers can be reached here.179 Servers

Load older messages


SenderMessageTime
13 Sep 2025
@puck:puck.moepuck the nix language without e.g. derivation is ... kinda hard to use 20:55:05
@puck:puck.moepuck i once experimented by taking the nix source code and taking out everything that isn't the expression interpreter; very little was left. just a handful of primops; i didn't even have import because it depended on the FS 20:55:40
@puck:puck.moepuck comparing with e.g. https://nix-re.pl/ which translates everything to a primop call (a + b -> __add a b; a.b.c or d -> __selectOr a [ "b" "c" ] d) 20:56:27
@puck:puck.moepuckall this to say i don't think there's much of a subset of Nix that would let you reasonably test performance; the only real-world performance test i can think of is "how well can you evaluate nixpkgs"; which requires .. well, everything21:00:59
@magic_rb:matrix.redalder.orgmagic_rbright, okay, point taken, ig ill have to implement enough to eval nixpkgs to actually get any data21:10:14
@magic_rb:matrix.redalder.orgmagic_rb...21:10:15
@magic_rb:matrix.redalder.orgmagic_rbwell, im not even at a functional VM so uh, thats ways off, currently trying to wrap my head around the STG still21:10:36
@magic_rb:matrix.redalder.orgmagic_rb okay, i have no clue what im doing, anyone know the STG and can help me find the bug? or anyone up for a fun pairing? I'm pretty sure im folling the paper to the letter but its being weird, i suspect a miscompilation from Nix -> STG, cause the STG VM is behaving exactly as the paper says 21:32:15
@jaen:matrix.orgjaen Slowly working on installer rebase and need an opinion — I have some tests that are failing because it assumes existence of a default profile that has nix in it, cf:
https://github.com/DeterminateSystems/nix-installer/blob/8a7bb095d93ada552d20d2f22ffd9f1668f8e394/src/profile/nixenv/tests.rs#L135-L136
https://github.com/DeterminateSystems/nix-installer/blob/8a7bb095d93ada552d20d2f22ffd9f1668f8e394/src/profile/nixenv/mod.rs#L98
It is not the case on my system, it links into per-user/root/profile which does not exist (the folder only has channels there. And I'm wondering if it's my NixOS setup that's wrong or is detsys assuming something that's not really true?
21:59:15
14 Sep 2025
@emma:rory.gayEmma [it/its] joined the room.08:32:48
@azharmomin:kde.org@azharmomin:kde.org joined the room.16:22:28
@azharmomin:kde.org@azharmomin:kde.org left the room.16:37:42
@xworld21:matrix.org@xworld21:matrix.org left the room.18:37:24
15 Sep 2025
@xokdvium:matrix.orgSergei Zimmerman (xokdvium)Btw here's the manifistation of this fever dream of mine: https://github.com/NixOS/nix/pull/1398700:16:54
16 Sep 2025
@getchoo:matrix.orggetchoo i think i have a decent solution here: https://github.com/getchoo-contrib/nix/tree/getchoo/dogfood-experimental-installer
it currently grabs the artifacts the 0.27.0, but it wouldn't be too hard to extend to fetch from the main branch builds (if they actually uploaded their artifacts)
dogfooding even works as well! ...but i did come across an interesting problem
04:18:02
@getchoo:matrix.orggetchoo when dogfooding is an enabled with this experimental installer option, you'll end up with an 4: Failed to execute command HOME="/root" "/nix/store/dkmylx2wyz9i6ycbmr07lpv15mph0d7y-nix-main-2.32.0pre/bin/nix-store" "--load-db"`` error
i traced it back to this pretty naive snippet of code that basically just takes the first path in the store matching nix-* and runs it, with no checks for if /bin/nix-store actually exists https://github.com/NixOS/experimental-nix-installer/blob/20be610e1f29c8a127146da67ed56f879b173ac6/src/action/base/setup_default_profile.rs#L55-L70
04:19:47
@getchoo:matrix.orggetchoo this worked before the component split in 2.29 since there would only be one main nix store path at this point, but now it matches the nix-main store path first, which doesn't a bin dir or any of the nix binaries 04:21:02
@getchoo:matrix.orggetchooi figured this was something probably fixed in an update upstream and i'd need to wait on a rebase, but the code there actually remains entirely the same https://github.com/DeterminateSystems/nix-installer/blob/8a7bb095d93ada552d20d2f22ffd9f1668f8e394/src/action/base/setup_default_profile.rs#L56-L6904:22:07
@getchoo:matrix.orggetchoo i think this might only work because the hash part of the release nix store path happens to be sorted before the other components, while it isn't in the pre-release tarball from the artifacts i'm pushing into this lol 04:33:40
@getchoo:matrix.orggetchoo * when dogfooding is enabled with this experimental installer option, you'll end up with an 4: Failed to execute command HOME="/root" "/nix/store/dkmylx2wyz9i6ycbmr07lpv15mph0d7y-nix-main-2.32.0pre/bin/nix-store" "--load-db"`` error
i traced it back to this pretty naive snippet of code that basically just takes the first path in the store matching nix-* and runs it, with no checks for if /bin/nix-store actually exists https://github.com/NixOS/experimental-nix-installer/blob/20be610e1f29c8a127146da67ed56f879b173ac6/src/action/base/setup_default_profile.rs#L55-L70
04:33:57
@getchoo:matrix.orggetchoo * when dogfooding is enabled with this experimental installer option, you'll end up with an 4: Failed to execute command \HOME="/root" "/nix/store/dkmylx2wyz9i6ycbmr07lpv15mph0d7y-nix-main-2.32.0pre/bin/nix-store" "--load-db"`error i traced it back to this pretty naive snippet of code that basically just takes the first path in the store matchingnix-*and runs it, with no checks for if/bin/nix-store` actually exists https://github.com/NixOS/experimental-nix-installer/blob/20be610e1f29c8a127146da67ed56f879b173ac6/src/action/base/setup_default_profile.rs#L55-L70 04:34:15
@getchoo:matrix.orggetchoo * when dogfooding is enabled with this experimental installer option, you'll end up with an 4: Failed to execute command \HOME="/root" "/nix/store/dkmylx2wyz9i6ycbmr07lpv15mph0d7y-nix-main-2.32.0pre/bin/nix-store" "--load-db"` error i traced it back to this pretty naive snippet of code that basically just takes the first path in the store matchingnix-*and runs it, with no checks for if/bin/nix-store` actually exists https://github.com/NixOS/experimental-nix-installer/blob/20be610e1f29c8a127146da67ed56f879b173ac6/src/action/base/setup_default_profile.rs#L55-L70 04:34:31
@getchoo:matrix.orggetchoo * when dogfooding is enabled with this experimental installer option, you'll end up with an 4: Failed to execute command \HOME="/root" "/nix/store/dkmylx2wyz9i6ycbmr07lpv15mph0d7y-nix-main-2.32.0pre/bin/nix-store" "--load-db"`` error i traced it back to this pretty naive snippet of code that basically just takes the first path in the store matchingnix-\*and runs it, with no checks for if/bin/nix-store\ actually exists https://github.com/NixOS/experimental-nix-installer/blob/20be610e1f29c8a127146da67ed56f879b173ac6/src/action/base/setup_default_profile.rs#L55-L70 04:34:42
@getchoo:matrix.orggetchoo *

when dogfooding is enabled with this experimental installer option, you'll end up with an error like this

4: Failed to execute command `HOME="/root" "/nix/store/dkmylx2wyz9i6ycbmr07lpv15mph0d7y-nix-main-2.32.0pre/bin/nix-store" "--load-db"`

i traced it back to this pretty naive snippet of code that basically just takes the first path in the store matchingnix-\*and runs it, with no checks for if/bin/nix-store\ actually exists https://github.com/NixOS/experimental-nix-installer/blob/20be610e1f29c8a127146da67ed56f879b173ac6/src/action/base/setup_default_profile.rs#L55-L70

04:35:11
@getchoo:matrix.orggetchoodoes seem to be the case after re-rolling the hash on a new revision. reported it https://github.com/NixOS/experimental-nix-installer/issues/47 and opened up a draft of everything in https://github.com/NixOS/nix/pull/14002. i'm pretty sure it's in a good state, minus this bug?06:13:53
@getchoo:matrix.orggetchoo* does seem to be the case after re-rolling the hash on a new revision. reported it in https://github.com/NixOS/experimental-nix-installer/issues/47 and opened up a draft of everything in https://github.com/NixOS/nix/pull/14002. i'm pretty sure it's in a good state, minus this bug?06:14:06
@getchoo:matrix.orggetchoointeresting, lix's fork of the installer doesn't have this issue: https://git.lix.systems/lix-project/lix-installer/src/commit/e4048682396999c11069f99f9b323f1d4a333bbc/src/action/base/setup_default_profile.rs#L57 seems to go back to an earlier implementation that was removed after they forked in https://github.com/DeterminateSystems/nix-installer/commit/16ee60a2f7d5d172db91484729f15dd09d0e538306:28:04
@getchoo:matrix.orggetchoo

....nevermind

$ ls -d nix-tarball/nix-2.32.0pre20250915_5e17a3f-x86_64-linux/store/*-[nl]ix-*.*.* | head -n 1
nix-tarball/nix-2.32.0pre20250915_5e17a3f-x86_64-linux/store/dkmylx2wyz9i6ycbmr07lpv15mph0d7y-nix-main-2.32.0pre
06:37:04
@joerg:thalheim.ioMic92 getchoo: should we just fix the regex? 11:22:45
@joerg:thalheim.ioMic92by making it more specific11:23:01

There are no newer messages yet.


Back to Room ListRoom Version: 6