clanServices: add READMEs to internet and tor modules

This commit is contained in:
Qubasa
2025-10-16 18:53:22 +02:00
parent df73169392
commit 7a4a940e83
6 changed files with 48 additions and 0 deletions

View File

@@ -0,0 +1,19 @@
This module is part of Clan's [networking interface](https://docs.clan.lol/guides/networking/networking/).
Clan's networking module automatically manages connections across available network transports and falls back intelligently. When you run `clan ssh` or `clan machines update`, Clan attempts each configured network in priority order until a connection succeeds.
The example below shows how to configure a domain so server1 is reachable over the clearnet. By default, the `internet` module has the highest priority among networks.
```nix
inventory.instances = {
# Direct SSH with fallback support
internet = {
roles.default.machines.server1 = {
settings.host = "server1.example.com";
};
roles.default.machines.server2 = {
settings.host = "192.168.1.100";
};
};
};
```

View File

@@ -7,6 +7,8 @@
"System" "System"
"Network" "Network"
]; ];
manifest.readme = builtins.readFile ./README.md;
roles.default = { roles.default = {
description = "Placeholder role to apply the internet service"; description = "Placeholder role to apply the internet service";
interface = interface =

View File

@@ -0,0 +1,11 @@
This service is meant to be consumed by the UI / API, and exposes a JSON serializable interface to add packages to a machine over the inventory.
The example below demonstrates installing the "cbonsai" application to a machine named "server.
```
instances.packages = {
roles.default.machines."server".settings = {
packages = [ "cbonsai" ];
};
};
```

View File

@@ -6,6 +6,7 @@
manifest.categories = [ manifest.categories = [
"System" "System"
]; ];
manifest.readme = builtins.readFile ./README.md;
roles.default = { roles.default = {
description = "Placeholder role to apply the packages service"; description = "Placeholder role to apply the packages service";

View File

@@ -0,0 +1,14 @@
This module is part of Clan's [networking interface](https://docs.clan.lol/guides/networking/networking/).
Clan's networking module automatically manages connections across available network transports and falls back intelligently. When you run `clan ssh` or `clan machines update`, Clan attempts each configured network in priority order until a connection succeeds.
The example below configures all your nixos machines to be reachable over the Tor network. By default, the `tor` module has the lowest priority among networks, as it's the slowest.
```nix
inventory.instances = {
# Fallback: Secure connections via Tor
tor = {
roles.server.tags.nixos = { };
};
};
```

View File

@@ -7,6 +7,7 @@
"System" "System"
"Network" "Network"
]; ];
manifest.readme = builtins.readFile ./README.md;
roles.client = { roles.client = {
description = '' description = ''