nixcfg/nixosModules/services/syncthing/default.nix

59 lines
2.6 KiB
Nix
Raw Normal View History

2024-04-26 22:38:29 -04:00
{
pkgs,
lib,
config,
...
}: {
imports = [./syncMusic.nix];
options = {
alyraffauf.services.syncthing.enable = lib.mkEnableOption "Enable Syncthing";
alyraffauf.services.syncthing.user = lib.mkOption {
description = "Specify user Syncthing runs as.";
default = "aly";
type = lib.types.str;
};
};
config = lib.mkIf config.alyraffauf.services.syncthing.enable {
services.syncthing = {
enable = true;
openDefaultPorts = true;
user = "${config.alyraffauf.services.syncthing.user}";
dataDir = "/home/${config.alyraffauf.services.syncthing.user}";
settings = {
options = {
localAnnounceEnabled = true;
relaysEnabled = true;
urAccepted = -1;
};
devices = {
"brawly" = {id = "BBIBWMR-CN4CFC4-2XMPLII-XFWXBT5-EPCZCAF-JOWAX5J-DHIGNM4-O3XQ4Q3";}; # Pixel 6a
2024-04-28 14:01:29 -04:00
"fallarbor" = {id = "P4URLH4-YWLMO6J-W62ET7H-TQAO3Y6-T2FAYOY-C2VTI65-VQXHVGG-NQ76PAZ";}; # Framework 13 Intel 11th gen
2024-04-26 22:38:29 -04:00
"gsgmba" = {id = "V2YCZSL-XY7H72L-FGJFWP2-JNYX72O-OJ5V2HY-V4SSSJM-77A7E3Z-7EJFAAV";}; # Work Macbook Air
"iphone12" = {id = "SBQNUXS-H4XDJ3E-RBHJPT5-45WDJJA-2U43M4P-23XGUJ7-E3CNNKZ-BXSGIA3";}; # iPhone 12 Pro Max
2024-05-01 22:35:20 -04:00
"lavaridge" = {id = "F56TG3M-AQV2KXS-L4BI7TA-3HJWSMO-PM44U5K-HBOUB6M-ILUBT7U-KE7USAW";}; # Framework 13 AMD
2024-04-26 22:38:29 -04:00
"mauville" = {id = "52MTCMC-PKEWSAU-HADMTZU-DY5EKFO-B323P7V-OBXLNTQ-EJY7F7Y-EUWFBQX";}; # Desktop/Homelab
"mossdeep" = {id = "XRIGHMT-54OGBWP-UAAGAJS-LGTRHA2-EMKOMEB-EJEWKZN-GJFK6FO-3O6KQQ4";}; # Steam Deck OLED
2024-05-03 07:39:02 -04:00
"petalburg" = {id = "ECTD3LW-YZTJIXX-HLQYXT7-UGZSGST-3DDKF72-DJPMDHE-SUYDWIT-ASTKTAE";}; # Yoga 9i
2024-05-01 17:26:21 -04:00
"rustboro" = {id = "BV6IAQ2-GD3FW2Z-5KKCZYR-ZBBQOI4-AKM7J3W-JWGPDAC-4EUPVCT-5HX5BQ6";}; # Thinkpad t440p
2024-04-26 22:38:29 -04:00
"wattson" = {id = "B2EYRQJ-LE2FR2J-D4M35TY-FXVGJ6D-USE7S2T-5V357SV-IQQWEAT-RQBLJQB";}; # Samsung a54 5g
"winona" = {id = "IGAW5SS-WY2QN6J-5TF74YZ-6XPNPTC-RCH3HIT-ZZQKCAI-6L54IS2-SNRIMA2";}; # Pixel Tablet
};
folders = {
"sync" = {
id = "default";
path = "/home/${config.alyraffauf.services.syncthing.user}/sync";
2024-04-28 14:01:29 -04:00
devices = ["brawly" "fallarbor" "gsgmba" "iphone12" "lavaridge" "mauville" "petalburg" "rustboro" "mossdeep" "wattson" "winona"];
2024-04-26 22:38:29 -04:00
};
"camera" = {
id = "fcsgh-dlxys";
path = "/home/${config.alyraffauf.services.syncthing.user}/pics/camera";
2024-04-28 14:01:29 -04:00
devices = ["brawly" "fallarbor" "lavaridge" "mauville" "petalburg" "rustboro" "wattson" "winona"];
2024-04-26 22:38:29 -04:00
};
};
};
};
};
}