Radicle: Difference between revisions
Appearance
Initial page |
Add section regarding possibility of mirroring Nixpkgs on the Radicle network |
||
| Line 39: | Line 39: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== Mirroring Nixpkgs === | |||
Replicating ("mirroring") a copy of Nixpkgs on the Radicle network is discussed in multiple places. Consider the following incomplete list of references: | |||
* [https://discourse.nixos.org/t/could-somebody-setup-an-authorative-mirror-of-nixpkgs-on-radicle/63999 Topic on discourse.nixos.org] | |||
* [https://github.com/NixOS/infra/issues/678 Issue in github.com/NixOS/infra] | |||
* [https://radicle.zulipchat.com/#narrow/channel/438104-Nix/topic/Nixpkgs.20mirror/with/567708138 Topic on radicle.zulipchat.com] | |||
Latest revision as of 09:47, 5 October 2026
Radicle is a distributed code repository with support for Git. Repositories can be shared between several nodes in a P2P network, ensuring availability even one or more nodes go offline.
Setup
A minimal node can be setup with the following configuration snippet. It will use the name localhost and the control api endpoint will listen on http://0.0.0.0:8080.
services.radicle = {
enable = true;
httpd = {
enable = true;
listenAddress = "0.0.0.0";
listenPort = 8080;
};
publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOeF3XkiZrxJAWYBih2KPUdy01hO5raRX+fqbhJwsj/n";
node.openFirewall = true;
settings = {
preferredSeeds = [ ];
node = {
alias = "localhost";
relay = "always";
seedingPolicy = {
default = "allow";
scope = "all";
};
};
};
};
The public key needs to get generated using following command
nix run nixpkgs#radicle-node -- auth
Configuration
To share a specific repository, for example an unoffical nixpkgs one, add it to the node.seedingPolicy section.
services.radicle = {
settings = {
seedingPolicy = {
repositories."rad:z3StaJpzQNGhhkPfhCtRxSmNZZpu9" = "all";
};
};
};
Mirroring Nixpkgs
Replicating ("mirroring") a copy of Nixpkgs on the Radicle network is discussed in multiple places. Consider the following incomplete list of references: