964 B
964 B
Socket protocol
The socket protocol is a stream of words where each word is 8 bytes.
Handshake
- client sends WORKER_MAGIC_1 - 0x000000006e697863
- server sends WORKER_MAGIC_2 - 0x000000006478696f
- client sends version number 0x0000:MAJOR:MINOR where MAJOR and MINOR are each one byte
- server sends version number 0x0000:MAJOR:MINOR
- if client minor version is greater than 14
- send obsolete CPU affinity value
- if client minor version is greater than 11
- send obsolete reserveSpace value
- if minor version is greater than 33
- send version string (MAJOR.MINOR.PATCH)
- server sends any pending error messages followed by STDERR_LAST - 0x616c7473
https://alternativebit.fr/posts/nixos/future-of-nix-substitution/ https://lists.gnu.org/archive/html/guix-devel/2020-12/msg00258.html https://discourse.nixos.org/t/nix-casync-a-more-efficient-way-to-store-and-substitute-nix-store-paths/16539/4?u=flokli https://github.com/NixOS/nix/issues/8306