Peer-to-peer binary cache RFC/working group/poll

TLDR: I fully believe in a hybrid validator/peer-to-peer solution.
The cache.nixos.org is the validator which keeps copies of official build hashes.
The peer-to-peer system dynamically supplies the storage and bandwidth.

In the end we need a real-world experiment to start doing this and collect data on how well the system runs.

Seeders easily opt into the swarm thanks to a new services.nix-serve-p2p.enable: bool = false Nix option enabling a service to join the swarm. This could be added as a comment in the generated config to raise awareness and help it more easily gain traction.

I think first we should start with an experimental feature: services.experimental.nix-serve-p2p.enable: bool = false

Real-world testing can help us focus our efforts in the correct direction.

In the short-term cache.nixos.org will have to keep holding on to all its data until we can see how the peer-to-peer system really works in the real world. A slow transition is most likely the only way forward. But it is nice to see we have 12 months to breathe easy:
NixOS S3 Short Term Resolution!

I believe there is enough community support to start the experiment.
We can easily talk about it, but a lot of issues raised might not even be much of a problem when the rubber meets the road…

7 Likes