Skip to content

Commit 0125e42

Browse files
committed
develop: radicale docs
1 parent 3444491 commit 0125e42

File tree

3 files changed

+57
-7
lines changed

3 files changed

+57
-7
lines changed

docs/modules/nixos/radicale.md

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
# Radicale
2+
3+
A simple CalDAV and CardDAV server.
4+
5+
View the [*nix-core* NixOS module on GitHub](https://github.com/sid115/nix-core/tree/master/modules/nixos/radicale).
6+
7+
## References
8+
9+
- [Documentation](https://radicale.org/v3.html#documentation-1)
10+
- [Wiki](https://github.com/Kozea/Radicale/wiki)
11+
- [GitHub](https://github.com/Kozea/Radicale)
12+
13+
## Sops
14+
15+
Provide every user's SHA512 hashed password to your host's `secrets.yaml`:
16+
17+
> Replace `abc123` with your actual secrets
18+
19+
```yaml
20+
radicale:
21+
user1: abc123
22+
user2: abc123
23+
# ...
24+
```
25+
26+
Generate hashed passwords with:
27+
28+
```sh
29+
nix-shell -p openssl --run 'passwd -6 <password>'
30+
```
31+
32+
## Setup
33+
34+
Set a CNAME record for your Radicale subdomain (`dav` by default) pointing to your domain.
35+
36+
## Config
37+
38+
```nix
39+
{ inputs, ... }:
40+
41+
{
42+
imports = [ inputs.core.nixosModules.radicale ];
43+
44+
services.radicale = {
45+
enable = true;
46+
users = [
47+
"user1"
48+
"user2"
49+
];
50+
};
51+
}
52+
```

mkdocs.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ nav:
6060
- open-webui: modules/nixos/open-webui.md
6161
- peertube: modules/nixos/peertube.md
6262
- print-server: modules/nixos/print-server.md
63+
- radicale: modules/nixos/radicale.md
6364
- rss-bridge: modules/nixos/rss-bridge.md
6465
- searx: modules/nixos/searx.md
6566
- sops: modules/nixos/sops.md

modules/nixos/radicale/default.nix

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,6 @@
55
...
66
}:
77

8-
# Generate passwords with:
9-
# openssl passwd -6 "password"
10-
118
let
129
cfg = config.services.radicale;
1310
domain = config.networking.domain;
@@ -74,6 +71,10 @@ in
7471
enableACME = cfg.forceSSL;
7572
};
7673

74+
environment.systemPackages = [
75+
pkgs.openssl
76+
];
77+
7778
sops =
7879
let
7980
owner = "radicale";
@@ -98,9 +99,5 @@ in
9899
secrets = mkSecrets cfg.users;
99100
templates."radicale/users" = mkTemplate cfg.users;
100101
};
101-
102-
environment.systemPackages = [
103-
pkgs.openssl
104-
];
105102
};
106103
}

0 commit comments

Comments
 (0)