diff --git a/users/blake/dots/default.nix b/users/blake/dots/default.nix index c403ea9..68796e7 100644 --- a/users/blake/dots/default.nix +++ b/users/blake/dots/default.nix @@ -6,6 +6,7 @@ }: { imports = [ ./librewolf + ./syncthing ./kitty ./waybar ./hypr diff --git a/users/blake/dots/syncthing/default.nix b/users/blake/dots/syncthing/default.nix new file mode 100644 index 0000000..2e54722 --- /dev/null +++ b/users/blake/dots/syncthing/default.nix @@ -0,0 +1,74 @@ +{ + pkgs, + lib, + config, + ... +}: let + program = "syncthing"; + cfg = config.dots.${program}; + sec = config.sops.secrets; + host = builtins.trim (builtins.readFile "/etc/hostname"); +in { + options.dots.${program} = { + enable = lib.mkEnableOption "enables ${program}"; + host = lib.mkOption { + type = lib.types.nullOr lib.types.str; + default = null; + }; + }; + + config = lib.mkIf cfg.enable { + + programs.${program} = { + enable = true; + user = "blake"; + group = "blake"; + #dataDir = "/var/lib/syncthing"; + guiAddress = "127.0.0.1:2222"; + openDefaultPorts = true; + extraFlags = ["--no-default-folder"]; + key = sec."${program}/snowbelle/key".path; + cert = sec."${program}/snowbelle/cert".path; + settings = { + devices = { + "snowbelle" = {id = "6WQ6ATA-5AT4RUM-NW67PAL-N62CPNV-ALRFG3P-5BDRO22-HWFC2Q4-5S5BDA5";}; + "lugia" = {id = "BKKSFPH-YEOVVAB-DTT7KK3-UDKAEJ2-PC6ECG7-Y76ZIVP-JRYMMXS-RTZYVQ3";}; + "zygarde" = {id = "UYLTF52-VVKUR7F-JN33HQZ-RFNWGL3-JER52LA-GZD2LPJ-QIFEE7K-MNMZRQ5";}; + "CEN-IT-07" = {id = "DPYKA4Z-3PX7JB2-FBEOXXX-SC7TLT2-QC5P2IR-SXOPJGX-QO3DMII-5B7UCA4";}; + }; + folders = { + "holocron" = { + path = "/home/blake/holocron"; + devices = ["lugia" "zygarde" "CEN-IT-07" "snowbelle"]; + id = "5voxg-c3he2"; + versioning = { + type = "staggered"; + fsPath = "/home/blake/holocron/.stversions"; + params = { + cleanInterval = "3600"; + maxAge = "0"; + }; + }; + + }; + }; + options = { + urAccepted = -1; + }; + }; + + }; + + sec = { + "${program}/${host}/key" = { + owner = "blake"; + group = "blake"; + }; + "${program}/${host}/cert" = { + owner = "blake"; + group = "blake"; + }; + }; + + }; +} diff --git a/users/blake/hosts/yveltal.nix b/users/blake/hosts/yveltal.nix index e35d8a8..31ab689 100644 --- a/users/blake/hosts/yveltal.nix +++ b/users/blake/hosts/yveltal.nix @@ -15,6 +15,7 @@ lf.enable = true; kitty.enable = true; librewolf.enable = true; + syncthing.enable = true; waybar.enable = true; hypr.enable = true; tofi.enable = true; diff --git a/users/blake/secrets/secrets.yaml b/users/blake/secrets/secrets.yaml index a583459..2eac47c 100644 --- a/users/blake/secrets/secrets.yaml +++ b/users/blake/secrets/secrets.yaml @@ -10,6 +10,10 @@ id_snowbelle.pub: ENC[AES256_GCM,data:q4sOB8/SpcD36uE/+8OlE+vUZ1bO2RTDeVyyWK/PH8 id_snowbelle: ENC[AES256_GCM,data:MAw5R2fqVIctN7fB/d3hfCU7W3sxvuy2O3w3n0vD8FxK1DAhqoROlVv04joV1a+U1hof57TYc1cN2ng9BRWxadc8ZIpWakokZYVI0dUG05/hPMyxctWPkOiDd5909aaNUFC2G+Y/VrgAemyrB+AlQgokV0U3fiz+qjg055fzO7ypaeM8okON6rBnigfwetmSm60MxpdYrVlxVaniDVvKKUYZjpHU8SZ+TYj6Jmm/bVuKWOJ2DXZbmM0CeKeIgnA9HML1wSXojMv2IMGulxq5mmdaiiJTPoL1q17OA5zZkkVW3Dx1y6SbEeBAQTPG32RHseAxXK6qdU6lftRQZKyivuyjdCVfBBw/VzqTxbWjSXXsjDdK/Ti09051w6znA1uvRX65XsOq6zPKt4BNwR+yMDF+xR9AElBTHES/TDf7TRc5YDyovlH2PhGNg12Coy3zfb6WESLyaz3/GYZxF0IjvBnDkN65CRjstut0CgKXcWY8x+CuKVysU+U4c0A2ucDnsf3HuITrdIufhAwRNNZMka7LWVsaaR/tnvcf,iv:agf/LEjohw1XAXsOJJ78kiBVJnTT95IUmWzYUujSlJI=,tag:a55o9L85a9Z7gG9s5BEfIw==,type:str] #ENC[AES256_GCM,data:ep/Z5O6RNFwTd0I5hvtk5DP9,iv:M7sclKcTR+IfCEsvz0lZaoZBRZlQsN/FhwuzFNXgVew=,tag:Ddo3Qf8tMBX9Amt7C9m5FA==,type:comment] klefki_pub.asc: ENC[AES256_GCM,data:lGfgwhgn2xCb1cNTo0nMP8R3KSDiEn0/k6neDE2dv1DynvXsHWmZSXED6VWBjY3uMU3YtcpXGCtxTU6EiaRKiGnhxslQlBiSypAnXHeh55DZJMJJ/JM7+BCtr33LY2lusF9/aAuKO9tbdpGmu63s5ItZ1/9zMoCJwBfpQZgY2HzZoBhjwqYu2wSkOOVAMjq+jXET7nASieOZXmpQq2uDepuEDa8MP7d6G6kV2KYJPdLYYaY4U2eppEr7ALhhJidYm3P38W47JuLyu/2raG0AY2uDtCQw9d16BcJO3au+T4B4mHzPg1/cPhQ2X4dHTTGHjRZ0sT95DrEYYmcwWVKHKyiuL8WPtQmF0QBfCOPczwJajJejB4DbxEW8U2kuhuoBWr7wZe4y/nbW2hB3pcMYYXc0EXen74IttiUrvksw+hbkLaZDCJgG91SOlWSwI12UlDrJJSzOYm+ODWqK+bKyqAafQTL9xh5heM3nQlR5G6/A/8UG+0q5ZDL+IxJwe+EffJNwrL1mn4Rc3qx068udMJC+qzmft7Ljey7mfoIiwepITpii1IA/CtuEqtpe4I5MUemQ60qAw/PoVbmD8zhOcnRHCBZtQ394I5vMo1qR2a4KeBICexx3IAjpeAQYI3+MAgo/bedqpklLYjbxpv37XwinoLj9ew4hKSjAB1wRRZlswmk+GD4XKlVo8eu88RCXYrsZ2oaOD4qxrtbc7+skGm+EqxL67nLW5n9bSC2u95bFJ1386teSFhsJL9w3EFiBlQRtm5tvee/ipmr6D2W7SyfCnSxImPC4TgTwkAXziQ3XtsUtGqj0Tv1HGayaAQpYzlJaPzf7h8oanH1VaA+AgRq+RY1OjLZGHEz37jSbqhWOiIWxwJ7qFaqGB90cHq3s07qcWrDl2wUawFLTXavZ0IF3gj9KnFSIzW3+ANvedUCXOjai+zOKmpxVFZ4Bi4W3Dcbl9B+qa0Ly0NIgldi7PmqEvL3V4FnJs6WnwdagyhXOzdlKVlrAgGluucgqBpBZZfpN6uB+tdkbrqzsdMbr+H9Hwk3RUxRzAK9k+J9WRgY7eMazH0najJ1PYh9/UZJf0DKWRi2vZTlWW+6ZruJWTohOKm+7MCgvMEttIpNQfvK6+cq7p3vwPe+pmq0DznNg4LO7Uu3cXKq3zHjl08KGE04KZyfoJuZPr+XrF91AywZ03HlT2SBBaZtFld1VapccgB5DqgE1JfFg+TS4is9a8G52Ad9yh/abUmLohsnUpGdYMaj/1FmhSLM7ldHeub8CmL2vKW4f/JTuqmOxq3X5RA+qw5f946ekUz9ZF8EyGvNwaRZ2p5m0MtXQG2IKp8Q61aBSpqbMwKzTW93VycEn7L5ZsoV5eYo0rC4PMawGkfgdNzBpq4NL5bNB82l6qHnWqU7jXh611/ZV4ueX2MLSB3cyhnaFxsH9bat1jGDtUl5umNWNtvN6rWBVsClmYfBLSUCEyftGPlxzAOy6vRHGxAdCNdoiTRGgZru3aYyW9l5XhYH1aZ+dOlTOwngaqqIb3kZoPzcc9xCeZ/I/N6iVuTUI69us8y3LVL6qKa6az5zTTgumoFB5kMugPtumS1U9hzhLtm9+hY6yZVgYredgAwVVIviMAqFFZztFkPiskcwIdrPhXzoXwfuBWDaq+dF9nykjw1F9U2gyDU0YhEOtSmdIWoIma3OmdOZ/h/JbWNrwUoAirmBmWIHQTmA5Ag==,iv:btQ5xmt/AA9vW1njJH4Inj6YmOBx6pGbHbsvCMbg7fI=,tag:DuQ4Wy9wX3mPQAVLLd6t1Q==,type:str] +syncthing: + yveltal: + key: ENC[AES256_GCM,data:vBDgPMNp,iv:0Td2kwnmb6L6PAF17huqqUieQ4XjXbgsC2Tl2YgSY10=,tag:Jpgbt11aO07//eDYaoP5yg==,type:str] + cert: ENC[AES256_GCM,data:ivz7uyE8,iv:vBmeJN5+VdBO2JDBIlqM38vVAC1XVuc/HZ4q+GXZTEs=,tag:KByY7KQk8AWbnR0iIFaolQ==,type:str] sops: age: - recipient: age14gfh682a7m7jfp3qrulql03x5rs7yedwmxwksxrrmgjsunstyuksqx93pz @@ -21,7 +25,7 @@ sops: U0tmdFBuZnJES3piOTZNV0VKQmQ0eVUKCWRQ/flLzmpC64WyLoipklZBmrkpYiUg PRu+itNolpPTHm96pe+P93g2iP0wgekG0cX21wkiU2xaLF3dY2FEIA== -----END AGE ENCRYPTED FILE----- - lastmodified: "2025-10-17T07:41:50Z" - mac: ENC[AES256_GCM,data:WHuD9FaBmAGWpCaL3LxE55Fb2BHXyGwrk7N1aKwL5oIwQYbJX+3VdhW3jkMvWqDGNzaPE0/eVmpqQgEujOaY3cj0tQDLmmJ8SR5MAn5IytVJiW/ppgqL+5Nyko9kxjtyMfHFmPNQj6ehRA/D5NS3cvqvCrV6ENDdIwI/LcuGP3A=,iv:WZo3bt0LoK/U6dx9e68+JprhrDT0+dsceDt5dcJhI5A=,tag:PJRS3aNCjsTgvDJtr0gj9A==,type:str] + lastmodified: "2025-11-02T01:31:59Z" + mac: ENC[AES256_GCM,data:es8UF11Bc1b8tYdJddgsmAlYCbUyZAL+RMz7zKfH9eTHSNrrAIcgw86FM5zx8xiC8cYedEriBn85xc5hTs/3FBGlwVb2nhlenezR5NwayoJsTvpSTytc/KAvZL5UlGBvOAJRwj3jDiiCw+UxltjLULZ0tiWqag1XiBXEarLqvGI=,iv:VXjNVBfbF5Z5UMmBo3Di357PigHAs+IthbwEXsFOqD4=,tag:SZtH2tFNMYnhAfUzknsB0Q==,type:str] unencrypted_suffix: _unencrypted version: 3.11.0