Commit Graph

310 Commits

Author SHA1 Message Date
a-kenji
c7e9bfbefe clanModules/root-password: Add inventory feature 2025-02-02 10:35:48 +00:00
a-kenji
23360377cf clanModules/root-password: Add inventory feature 2025-02-02 10:32:58 +00:00
a-kenji
fe6cca3c47 clanModules/root-password: Fix root-password persistence 2025-02-02 16:36:19 +07:00
a-kenji
7308eb8dc7 clanModules/mycelium: init mycelium
This adds a clanModule for `mycelium`.
`Mycelium` is an IPv6 overlay network written in Rust.
Each node that joins the overlay network will receive an overlay network IP in the 400::/7 range.

An example configuration might look like this in the inventory:

```nix
mycelium.default = {
  roles.peer.machines = [
    "berlin"
    "munich"
  ];
  config = {
    topLevelDomain = "m";
    openFirewall = true;
    addHostedPublicNodes = true;
  };
};
```

This will add the machines named `berlin` and `munich` to the `mycelium` vpn.
And will also set the toplevel domain of the mycelium vpn to `m`, meaning the
machines are now reachable via `berlin.m` and `munich.m`.
2025-01-22 11:56:10 +00:00
DavHau
3ec028d672 tests: reduce unnecessary rebuilds of several tests
Some test were referring to the whole source code via ${self} which amde them rebuild on every single commit.

This is not mitigated by introduceing `self.filter { include = [...]; }` allowin to a content addressed subset of the source code in tests.
2025-01-17 17:00:18 +07:00
Pablo Ovelleiro Corral
7a17a04698 Migrate borgbackup module to vars 2025-01-16 13:14:24 +01:00
Johannes Kirschbauer
57c4e8e929 Root-password: remove deprecated default option 2025-01-14 17:28:12 +01:00
Johannes Kirschbauer
e00195f2ef Fixup: improve mkpasswd generator line 2025-01-14 17:19:50 +01:00
Johannes Kirschbauer
4e9901ab19 Vars: migrate root-password from facts 2025-01-14 17:19:50 +01:00
Jörg Thalheim
41ceb40d13 matrix-synapse: migrate to vars 2025-01-14 14:16:19 +00:00
DavHau
bbe37a998f vars: rename createFile -> persist 2025-01-11 04:19:46 +00:00
Jörg Thalheim
20b8532822 create synapse registration in systemd service instead of systemd.tmpfiles 2025-01-10 12:45:00 +01:00
Qubasa
dbe5cff0c3 clanModules: fix broken dyndns build 2025-01-02 13:20:43 +01:00
Johannes Kirschbauer
807ab37c2e Docs: fix all broken anchor references 2024-12-31 15:43:20 +01:00
Johannes Kirschbauer
2c41e9f0c6 Chore:_migrate 'machineName' to 'settings.machine.name' 2024-12-31 14:55:50 +01:00
Johannes Kirschbauer
318a4f2d86 Chore: init settings submdule, move clanDir into settings submodule 2024-12-31 14:18:09 +01:00
Qubasa
a67beea34a clanModules: migrate dyndns to vars. 2024-12-30 19:27:46 +01:00
Qubasa
03c5e14e01 clanModules: fix dyndns porkbun support 2024-12-30 18:47:38 +01:00
Jörg Thalheim
85b2e214dc sshd: don't migrate openssh-rsa keys
we never had a fact for this.
2024-12-25 23:05:57 +01:00
Jörg Thalheim
55a88e43b5 sshd: add option to generate also rsa key 2024-12-25 22:51:53 +01:00
Jörg Thalheim
a04e251f96 re-generate ssh certificates when machine name or domains changes 2024-12-25 19:21:51 +00:00
Jörg Thalheim
7029ceda11 borgbackup: use writeShellApplication 2024-12-24 07:29:50 +01:00
Jörg Thalheim
bdbad62cac borgbackup: make restore less verbose 2024-12-24 07:12:54 +01:00
Jörg Thalheim
6880d58344 borgbackup: avoid broken pipe 2024-12-24 07:12:54 +01:00
Jörg Thalheim
71b3351061 borgbackup-list: use pipefail 2024-12-24 07:11:00 +01:00
Jörg Thalheim
87fa99f900 borgbackup-list: fix empty backup case 2024-12-24 07:11:00 +01:00
Jörg Thalheim
b9e47844d9 clanModules/borgbackup: make backup directory configurable
This is useful if your have external storage for it.
2024-12-19 20:22:49 +01:00
DavHau
f941decd07 refactor: mapAttrsFlatten -> mapAttrsToList 2024-12-16 23:50:27 +07:00
DavHau
3d6769ace5 wifi: make available for non-inventory use 2024-12-16 22:24:49 +07:00
DavHau
ba50b0a039 clanModules/wifi: make ssid a secret 2024-12-16 19:04:42 +07:00
Jörg Thalheim
0a3e49ba11 no longer use deprecated hardware.opengl 2024-12-11 17:44:09 +00:00
lassulus
7b0cbc3182 postgresql: nix fmt 2024-12-09 12:57:23 +01:00
DavHau
e6931bf486 zerotier: improve docs for moons 2024-12-02 15:50:49 +07:00
DavHau
00064ee98b wifi: init as experimental module 2024-11-28 15:49:23 +07:00
Johannes Kirschbauer
bdec967444 ClanModules/zerotier: simplify nix code 2024-11-26 10:44:06 +00:00
Johannes Kirschbauer
6e61db7f83 Docs/modules: seperate out inventory,role specific interface 2024-11-20 11:01:28 +01:00
Johannes Kirschbauer
1c4c10f339 Modules/matter: add more categories 2024-11-19 15:59:23 +00:00
a-kenji
e98cbdea6f clanModules: Fix ordering 2024-11-19 14:14:31 +01:00
a-kenji
de48d3447d clanModules/importer: Init importer inventory module
Initialize the `importer` inventory module.
It is a power user module that allows for convenient, flexible,
structured imports for hosts.

It exposes the `extraModules` functionality of the inventory,
without any added configuration.

Closes: #2356
2024-11-19 14:00:57 +01:00
Jörg Thalheim
8f1e393bc4 also deploy host ca to server 2024-11-19 09:46:14 +00:00
Jörg Thalheim
4f0c44f3dd sshd: add host ssh cert support 2024-11-19 09:46:14 +00:00
Qubasa
eefe1106d3 clan: Fix dyndns module 2024-11-17 13:07:16 +01:00
Johannes Kirschbauer
527769e060 Zerotier/constraints: small improvements 2024-11-13 13:53:54 +01:00
Johannes Kirschbauer
241db1cade Modules/constraints: init constraints checking for inventory compatible modules 2024-11-12 18:36:38 +01:00
Johannes Kirschbauer
53a8771c18 Zerotier: add to inventory test machine 2024-11-12 18:36:05 +01:00
a-kenji
ddcf09d9e6 clanModules/zerotier: Add assertion for moons 2024-11-12 15:23:39 +01:00
Jörg Thalheim
a2cb4a06a2 clanModules/zerotier: add documentation 2024-11-08 14:10:23 +00:00
a-kenji
8504a0e674 add clanModule for zerotier inventory 2024-11-08 14:10:23 +00:00
danjujan
97603a5c97 clanModules: fix typos 2024-10-29 12:37:34 +00:00
Qubasa
06d1a5af46 Fix iwd space handling 2024-10-16 12:13:51 +07:00