| 4 Mar 2025 |
Nick Cao | So the length is the same | 14:27:07 |
emily | make it /usr/local/nix and I'll spend Darwin capital on the paint for the bikeshed | 14:27:27 |
Arian | sure. gotta rebuild the world. but that’s… fine | 14:27:30 |
Nick Cao | sed the world actually | 14:27:43 |
emily | alternate store directories are nominally supported. the Nix on Droid thing uses them | 14:27:44 |
emily | there are packages that hard-code it but not that many. probably NixOS makes more assumptions | 14:28:10 |
emily | no fundamental obstacle, to my knowledge | 14:28:10 |
Arian | can you build for a /usr/store on a /nix/store system? | 14:28:11 |
Arian | like. how do you bootstrap this | 14:28:18 |
emily | I think you need a separate daemon | 14:28:20 |
Willi Butz | /usr/nix/store definitely works as is, with a ro-bind to /nix/store (done with the verity repart module) | 14:28:26 |
Lily Foster | In reply to @emilazy:matrix.org alternate store directories are nominally supported. the Nix on Droid thing uses them (nix on droid also does sketchy bwrapping to pretend it's at /nix/store iirc) | 14:28:27 |
emily | can't use bwrap on Android. I think PRoot is involved | 14:28:51 |
Arian | that’s in. stage-2. I’m talking about the nix store in the initramfs willi | 14:29:00 |
Lily Foster | In reply to @emilazy:matrix.org can't use bwrap on Android. I think PRoot is involved yeah that, proot | 14:29:04 |
emily | but I swear I've seen an Android Nix thing that just uses the weird Android directory directly | 14:29:05 |
Lily Foster | In reply to @lily:lily.flowers yeah that, proot (apologies, too tired this morning) | 14:29:13 |
Willi Butz | In reply to @arianvp:matrix.org that’s in. stage-2. I’m talking about the nix store in the initramfs willi ah, got it. doesn't help because the bind mount cant be setup by tooling that resides in the yet to be mounted store %) | 14:30:18 |
flokli | In reply to @emilazy:matrix.org that's what Tvix is doing, afaik No, nix is using a merkle structure data format that's also better in seek access than nar ;-) | 14:31:18 |
flokli | * No, tvix is using a merkle structure data format that's also better in seek access than nar ;-) | 14:34:38 |
emily | :) | 14:35:55 |
emily | how has FUSE performance been? | 14:36:01 |
flokli | FUSE is just one lens of seeing it. If you get a super hot store path where perf becomes an issue, use EROFS to serve this one? | 14:37:02 |
raitobezarius | (FUSE also is getting a bunch of eBPF-based performance improvements) | 14:37:18 |
flokli | FUSE is very similar to virtiofs and people seem to be ok using that. | 14:37:23 |
raitobezarius | FUSE and virtiofs performance characteristics are totally different though | 14:37:44 |
emily | the idea being that you have a daemon syncing a subset of store paths to erofs and overlay it over /nix/store, or…? | 14:43:40 |
flokli | We have tvix-store {daemon,mount,virtiofs}. All three expose you a different view of the same data. | 14:45:04 |
emily | right | 14:55:06 |
emily | is there anything stopping you using virtiofs without a VM? :) | 14:55:32 |