| 31 Mar 2026 |
raitobezarius | are you on NixOS? | 13:56:52 |
raitobezarius | on non-NixOS, it seems like you could just install Lix using its installer | 13:56:59 |
raitobezarius | on NixOS, you can simply rebuild your NixOS config? | 13:57:07 |
neobrain | perhaps you already know, but worth mentioning that a custom store location comes with baggage; most notably you'll be unable to use binary caches (... unless you generate them yourself from your custom prefix) | 14:13:08 |
neobrain | (not sure to what extent it's supported in the first place. I remember a recent-ish talk about it at one of the nix conferences) | 14:13:44 |
Lisanna | you can use a store in a different location and have caching work fine, it's the store prefix (store-dir) that breaks caching if you change it | 16:00:42 |
Lisanna | * you can use a store in a different location and have caching work fine, it's the store prefix (nix/store) that breaks caching if you change it | 16:02:20 |
Lisanna | it's a little confusing, but a local --store can be wherever you want on your filesystem and caching will work fine, the ?store= should generally never change from /nix/store (it'll just fully resolve to e.g. /tmp/mystore/nix/store instead) | 16:04:24 |
neobrain | ohh interesting | 16:13:55 |
neobrain | but I always thought that the absolute store path would be hardcoded e.g. into the DT_NEEDED entries of ELF files - how can that work if the store path is in a different location? | 16:15:10 |
neobrain | * but I always thought that the absolute store path would be hardcoded e.g. into the DT_NEEDED entries of ELF files - how can that work if the store is in a different location? | 16:15:15 |
neobrain | * but I always thought that the absolute store path would be hardcoded e.g. into the RUNPATH entries of ELF files - how can that work if the store is in a different location? | 16:16:13 |
aloisw | There are two ways to have a store in a different location: chroot store (enabled by store setting) which can reuse the cache but needs chroot (or similar) to actually run stuff, and changing the store directory (NIX_STORE_DIR environment variable) which does not need chroot but rebuilds everything (and breaks things that hardcode /nix/store). | 16:23:25 |
neobrain | ah, that makes sense | 16:28:06 |
Charles | terminology question: is (_: {}) the fixpoint or is lib.fix (_: {}) the fixpoint | 17:20:03 |
Charles | * terminology question: is _: {} the fixpoint or is lib.fix (_: {}) the fixpoint | 17:20:30 |
Charles | or maybe, is _ the fixpoint | 17:26:54 |
Charles | https://nixos.org/manual/nixpkgs/stable/#auto-generated-11-1.6.3 | 17:28:23 |
Charles | sounds like lib.fix (_: {}) is the fixed point | 17:28:31 |
Charles | * sounds like lib.fix (_: {}) is the fixpint | 17:28:34 |
Charles | * sounds like lib.fix (_: {}) is the fixpoint | 17:28:36 |
Charles | in the example in that section it has:
# Calculate the fixed point of all composed overlays.
fixedpoint = lib.fix (lib.extends extensions original );
| 17:29:33 |
aloisw | Both lib.fix (_: {}) and _ should be the fixpoint if I'm not confusing things. | 17:30:38 |
Charles | good point | 17:31:16 |