docs(reference/nix-daemon-protocol): migrate

This moves the daemon protocol reference to the "Reference" section in
our new docs.

It also updates them a bit, we now use `{{< relref "path/to/file.md" >}}`
to refer to other files, and fixes the (previously broken) references
in handshake.md.

Change-Id: I114e40622dc504e7a5f75946895900e797a1e722
Reviewed-on: https://cl.snix.dev/c/snix/+/30273
Autosubmit: Florian Klink <flokli@flokli.de>
Tested-by: besadii
Reviewed-by: Brian Olsen <brian@maven-group.org>
This commit is contained in:
Florian Klink 2025-03-24 13:50:11 +00:00 committed by clbot
parent 76250b354f
commit 8101e7a45f
10 changed files with 165 additions and 79 deletions

View file

@ -0,0 +1,25 @@
---
title: Intro
slug: Intro
description: ""
summary: ""
date: 2025-03-24T13:10:37+02:00
lastmod: 2025-03-24T13:10:37+02:00
draft: false
weight: 50
toc: true
---
The Nix Daemon protocol is what's used to communicate with the `nix-daemon`,
either on the local system (in which case the communication happens via a Unix
domain socket), or with a remote Nix (in which this is tunneled over SSH).
It uses a custom binary format which isn't too documented. This reference here
aims to serve as an in-depth documentation about some of the inner workings,
data types etc.
A first implementation of this exists in
[griff/Nix.rs](https://github.com/griff/Nix.rs/tree/main).
Work is underway to port / factor this out into reusable building blocks into
the [nix-compat](https://snix.dev//rustdoc/nix_compat/index.html) crate.