summaryrefslogtreecommitdiff
path: root/hosts/ahmed/syncthing/syncthing.nix
blob: 14a7bc7fdbe16d0e238e94e8d41902a5f5a4e8c4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# This module sets up syncthing on the server. It's very important because
# muhammed and boox-tablet seldom are online on the same network at the same
# time.
{config, ...}: {
  services.syncthing = {
    enable = true;

    key = config.age.secrets.syncthing-key.path;
    cert = config.age.secrets.syncthing-cert.path;

    settings = {
      folders = {
        "ebooks" = {
          lable = "Ebooks";
          path = "~/Synced ebooks"; # Recall that `~syncthing` is `/var/lib/syntching`.
          copyOwnershipFromParent = true;
          devices = ["muhammed" "boox-tablet"];
        };
      };

      devices = {
        boox-tablet.id = "SFQMOCB-TPRTXLD-WDL3REL-2XINQDR-3PZQ5IT-KX4PGXX-2VJO3JZ-2K2XNQ3";
        muhammed.id = "ZLKZCO5-K3GX3S6-PTLB5B6-ETRBPQT-6ZCKHYV-FXQNDPI-CGYRSO4-NIRPQAY";
      };
    };
  };

  age.secrets.syncthing-key.file = ../../../secrets/syncthing-keys/ahmed/key.pem.age;
  age.secrets.syncthing-cert.file = ../../../secrets/syncthing-keys/ahmed/cert.pem.age;
}