nix-remote

Crates.ionix-remote
lib.rsnix-remote
version0.1.1
sourcesrc
created_at2024-03-28 18:51:18.15907
updated_at2024-04-26 01:44:29.263972
descriptionThe nix remote protocol
homepage
repositoryhttps://github.com/tweag/nix-remote-rust
max_upload_size
id1189269
size98,030
(jneem)

documentation

README

nix-remote

This is a re-implementation of Nix's remote build protocol. The main objectives are:

  • to express the protocol declaratively, as much as possible;
  • to document the protocol better than it has been so far;
  • to provide a library for tools making use of Nix remote builds.

So far, the library has been used to implement a nix remote proxy, which forwards commands to a real nix-daemon, while inspecting the commands and the responses. I believe that we have implemented all worker ops used in the current version of the nix protocol. (Nix itself supports more ops, but only for backwards-compatibility.)

Usage

To build the project and use nix to connect to it as remote, run:

cargo build
nix store ping --store 'ssh-ng://localhost?remote-program=/PATH/TO/nix-remote-rust/target/debug/nix-remote'
Commit count: 64

cargo fmt