feat(users/flokli/nixos/nixos-tvix-cache): init
This is a fetch-through mirror of cache.nixos.org, hosted by NumTide. The current machine is a SX65 Hetzner dedicated server with 4x22TB SATA disks, and 2x1TB NVMe disks. The goals of this machine: - Exercise tvix-store and nar-bridge code - Collect usage metrics (see https://nixos.tvix.store/grafana) - Identify bottlenecks - Replace cache.nixos.org? Be however aware that there's zero availability guarantees. Since Tvix doesn't support garbage collection yet, we either will delete data or order a bigger box. Change-Id: Id24baa18cae1629a06caaa059c0c75d4a01659d5 Reviewed-on: https://cl.tvl.fyi/c/depot/+/12811 Tested-by: BuildkiteCI Reviewed-by: Jonas Chevalier <zimbatm@zimbatm.com> Reviewed-by: flokli <flokli@flokli.de>
This commit is contained in:
parent
0715163779
commit
52a8e47ac1
8 changed files with 555 additions and 0 deletions
40
users/flokli/nixos/nixos-tvix-cache/README.md
Normal file
40
users/flokli/nixos/nixos-tvix-cache/README.md
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
# nixos-tvix-cache
|
||||
|
||||
This is a fetch-through mirror of cache.nixos.org, hosted by NumTide.
|
||||
|
||||
The current machine is a SX65 Hetzner dedicated server with 4x22TB SATA disks,
|
||||
and 2x1TB NVMe disks.
|
||||
|
||||
The goals of this machine:
|
||||
|
||||
- Exercise tvix-store and nar-bridge code
|
||||
- Collect usage metrics (see [Grafana](https://nixos.tvix.store/grafana))
|
||||
- Identify bottlenecks in the current implementations and fix them
|
||||
- Replace cache.nixos.org?
|
||||
|
||||
You can configure this as a Nix substitutor on your systems like this:
|
||||
|
||||
```nix
|
||||
nix.settings.substituters = lib.mkForce [
|
||||
"https://nixos.tvix.store"
|
||||
];
|
||||
```
|
||||
|
||||
For store paths it hasn't already seen yet, it'll internally ingest its contents
|
||||
into tvix-castore (deduplicating in doing so).
|
||||
|
||||
Requests for NARs will dynamically reassemble the NAR representation on demand.
|
||||
|
||||
Metadata and signatures are preserved (which is why you don't need to add
|
||||
additional trusted keys).
|
||||
We need to produce the same data bit by bit, else the signature check in your
|
||||
Nix/Lix client would fail.
|
||||
|
||||
Be however aware that there's zero availability guarantees.
|
||||
We will frequently redeploy this box, and it might become unavailable without
|
||||
prior notice.
|
||||
|
||||
Tvix currently doesn't have garbage collection. If we run out of disk space, we
|
||||
might either move things to a bigger box or delete everything on it so far.
|
||||
|
||||
As it's only a cache, it should however re-ingest things again.
|
||||
Loading…
Add table
Add a link
Reference in a new issue