Introducing flox - Nix for simplicity and scale

Regarding the website landing page, positioning the mouse cursor within the terminal window should stop the carousel from switching, and the terminal display is not a gif but rather an asciinema player which has the advantage that you can pause, drag the slider to the desired point in the playback, and copy text from within the terminal window. If any of that doesn’t work for you I’d love to hear back with details of what browser you’re using so we can investigate what’s going wrong there. Many thanks!

1 Like

I’m probably a weird use case, but I’m using qutebrowser to navigate with keyboard element hints. I don’t even have a mouse plugged on my PC :grinning_face_with_smiling_eyes:, but thanks for considering my comment.

3 Likes

So if you install flox inside a ci/cd VM, there’s no step 2, everything is “already there”? Very cool!

Also, since you own the storage layer via FUSE, you can deduplicate blocks. Since many binaries only differ by included store paths, you could first split binaries into zeroed-store-path blobs + a list of locations of store paths. If you then use a rolling checksum deduplication, you can probably get a high reuse factor. On the client side, you should combine the binaries again with the store path list. This can be done on the fly inside the FUSE handler.

So that way, you’ll decrease storage and traffic on both sides, at a mild complexity cost.

2 Likes

That actually sounds like an opportunity for nix propper to optimize.

Since many binaries only differ by included store paths, you could first split binaries into zeroed-store-path blobs + a list of locations of store paths.

Isn’t it strange that nobody came up with this idea before? :wink:

5 Likes