diff --git a/.sops.yaml b/.sops.yaml index 337e55e..bcea545 100644 --- a/.sops.yaml +++ b/.sops.yaml @@ -5,7 +5,7 @@ creation_rules: key_groups: - age: - *primary - - path_regex: host/(Rias|Senko|Eclipse)/secrets/.+$ + - path_regex: host/(Rias|Senko|Inaho|Eclipse)/secrets/.+$ key_groups: - age: - *primary diff --git a/host/Inaho/configuration.nix b/host/Inaho/configuration.nix index 8fcea3a..1def00b 100644 --- a/host/Inaho/configuration.nix +++ b/host/Inaho/configuration.nix @@ -4,6 +4,7 @@ ./disko.nix ./secrets/secrets.nix ./modules/grub.nix + ./modules/syncthing.nix ../modules/thinkpad.nix ../modules/gpu/intel.nix diff --git a/host/Inaho/modules/syncthing.nix b/host/Inaho/modules/syncthing.nix new file mode 100644 index 0000000..7ee1949 --- /dev/null +++ b/host/Inaho/modules/syncthing.nix @@ -0,0 +1,34 @@ +{ config, ... }: { + services.syncthing = { + enable = true; + openDefaultPorts = true; + + user = "sweetbread"; + dataDir = "/home/sweetbread/.config/syncthing"; + + key = config.sops.secrets.syncthing_key.path; + cert = config.sops.secrets.syncthing_cert.path; + + settings = { + devices = { + Rias.id = "EC5AGVN-2RKJDHN-NOSB7PQ-IRYCEEW-NPPDUGX-6QGSLUU-YIT5ZZZ-RVPTHQ6"; + Akeno.id = "QDW3WJX-J7ETS4R-32CUAIY-EGNM2RD-ZEHOUW2-CHOEOUG-USZOWTR-HHQS2QX"; + Koneko.id = "PJFWQRY-ZFUBGDR-NV7KVBL-UBDQ4HT-KPTYP34-MUDFPJU-4EZUHTT-ZLYRMAB"; + }; + + folders = { + "Music" = { + path = "/home/sweetbread/Music"; + devices = [ "Rias" "Akeno" "Koneko" ]; + }; + + "Obsidian" = { + path = "/home/sweetbread/Documents/Obsidian"; + devices = [ "Rias" "Akeno" "Koneko" ]; + }; + }; + }; + }; + + systemd.services.syncthing.environment.STNODEFAULTFOLDER = "true"; +} diff --git a/host/Inaho/secrets/secrets.nix b/host/Inaho/secrets/secrets.nix index 0eeb702..7bc9fb1 100644 --- a/host/Inaho/secrets/secrets.nix +++ b/host/Inaho/secrets/secrets.nix @@ -6,6 +6,15 @@ format = "binary"; sopsFile = ../../Rias/secrets/vpn_bolt.db; }; + + syncthing_cert = { + format = "binary"; + sopsFile = ./syncthing_cert.pem; + }; + syncthing_key = { + format = "binary"; + sopsFile = ./syncthing_key.pem; + }; }; }; } diff --git a/host/Inaho/secrets/syncthing_cert.pem b/host/Inaho/secrets/syncthing_cert.pem new file mode 100644 index 0000000..0f2f6db --- /dev/null +++ b/host/Inaho/secrets/syncthing_cert.pem @@ -0,0 +1,14 @@ +{ + "data": "ENC[AES256_GCM,data:rMr83F9VyGV5dp2XqXGAh3X2sCczUb0chH/2Hn9N9tijfRsOLGqHuy/zy29aOHR0PJ4euTU3bhmxWrBV/7oTnnEfI7DFF0vX4eBDaK8BzwAzrzXHYJOAgcwuYSqEEyWiLvTGABuLhTEto9kIMLxVIssa679s7zQSRwemVJSA3fEdtYD0BLAiO/ZtiAEmitgEt4EBRp9DhJPqlh2YfMmP6DpkDSy0hk+S+0NZg7eyrp7fivldiLzjsYDwCsugFcZQtWOqLMHY0kYhou8c2CKXu8UyqVVx24DyWfBfD1TH2pOk1ZsXFsxhFFKp5wcsfi0xDF1BG4hANcHVa6pR6y5JxNzh53xaH3NuvNJFEQSGJw5fNMuCrDnkYLDpU3xezzjvvxI01y7i2A00zsLli1fc9HA67ZlP1OBzsI7FyMgZlnOXQpbqnkj+kZdYAdOTjjMzQvrPusVS3RvqvcWj1qZtnHa1ZGmWh7xG0J10lQB4uDmTSxWoUUi7VmLXTC16HQNMySd8GbFmD/4Nj+/SxDShgsiug7L4hICjPC8Isosy99tE2wRXpjmMYUdlD7zu/vyEMxVPhkWnJyZZPXG+DjGBc/Diaw4ufYNxUs4yIRDceMArirubt/sN/eUoGOBGVWxvGm0/olTott7Yr+YKRSrDyWo9SWCz1qgz/ydpXm+xE7bPtbj9eAObZwneB/0tZTyo8o1WKd9yUST89m91EMQ31R97yCBwDW19VftWVCZH2w+QHNunih4ZUNiALQS745T2petbvc63iNiZswu0l3qoVM8x3y1RhAPLbsZpwQWSca307iDfBTB6uVW4HwLtL30=,iv:ajC3mjCYKUqS7XGIN64NiJoG6wHMvGdcHhazSO860ms=,tag:31fWG7m2neW2Pft9TjmBGg==,type:str]", + "sops": { + "age": [ + { + "enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBuQUNTSDVIeDRuMmtTWXZD\nU0x4OVJrUStFeW5QV0pOZ2hEZnJZQ09UbW5RCmwxbjhuWis1Q3BCTGtOdS8zNE0w\nL0pDK3dBY1hxZ2dCNG96RlA0dkNWVWMKLS0tIHFld2hUdm11dk5hT2ZtRXpId0VG\nRDM0L05jS0lGcnJBYWVNWElIazdlaUEKugvBGcCzYTZL6aC6mI6GCzhiPFYql75z\nSBfalDmqSVU2k1IBqsNHIYSxzOXwUiGS3MSHJUCf7M2y9X3dHJGeyw==\n-----END AGE ENCRYPTED FILE-----\n", + "recipient": "age1j3uuyax673fvl5x4dveupq3dylngnrq0e5uy7fmclsexkfd25vysk646wk" + } + ], + "lastmodified": "2026-07-21T20:27:59Z", + "mac": "ENC[AES256_GCM,data:lYZH1f3TyvcgqWI9hVOP3l2xImRh+LL0volXVUYSdGBnQTsAJfzMdsol/SsETwNNn+KrANC3ucO0/MXOWDK7ZPJ5Oq9R+OQnM8LK9/5mNfbzgodTw0RaH8FsrrtBCtHn3H2rlrBoPFEArblWKOh0G9iyrmufT09OREGt/G0tE5o=,iv:vmB1CY3sVajvLS8zAS/0I+NgnAOStbUkzQdw6XY45y4=,tag:mZP/eZVn+DJq+OT1ghtOkQ==,type:str]", + "version": "3.13.2" + } +} diff --git a/host/Inaho/secrets/syncthing_key.pem b/host/Inaho/secrets/syncthing_key.pem new file mode 100644 index 0000000..b97e8cd --- /dev/null +++ b/host/Inaho/secrets/syncthing_key.pem @@ -0,0 +1,14 @@ +{ + "data": "ENC[AES256_GCM,data:2nMwCxU1y0zE5VtnmEf3lT4XyI9e8dokPkipo3TXpxuRJZ9OXCOb0n4pHb4Xx9OlDgAeW2UX70cR1Wtj7QPQx9h/HYZTmUeIP4rvlTPhaxs/2F33ud1lPKceV2DK2q8G/EvPLnlCcLWMvy6BVsqBlNmjAzNonWI=,iv:7H0o0i3zp7K2demt1O2Pw4BNt+2q4PhHBw1K/jC7OH4=,tag:Bx82eo5kQqwlb6egYmopgQ==,type:str]", + "sops": { + "age": [ + { + "enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA2Vzl3M3pFblY5SmRQRUtI\nNWFCbWZJQTJTOWFHdTd1YkJEbXFGOFhBTUNNClBKdWhGdmh3Q2dUNkpMUUU3Zmdq\nUFd1M2twNW1KRGErRHUvc1BLY2pMT3MKLS0tIElVZ0RVVFQrb1FuYnJ0OU44RWZK\nbnpJZnFLR3kzV3VRaytQRDMrYkg5S2sKkr97EwJmtcIsRYH4di+tadTWnWzuCDa9\ngY+CKCVEPUgD1AXSgCwCP2AVd/zaKUbm6d6UA2QzZyqGsRim56WFsQ==\n-----END AGE ENCRYPTED FILE-----\n", + "recipient": "age1j3uuyax673fvl5x4dveupq3dylngnrq0e5uy7fmclsexkfd25vysk646wk" + } + ], + "lastmodified": "2026-07-21T20:28:23Z", + "mac": "ENC[AES256_GCM,data:ohYjzIYDilW7lsmZFZXpF629yevO2p8laA7Zl0+NCvZ8dB4nthLUePsnLTYCrEo5ADbboM5Cka11FiYbmB1IMR4mEdRwTN37EsQtyYLZbZ+j4XPsuXO0UT0NmWWiFNJlQEWfTVbhaZRDQXcPpVvm+6qQfRub018/0C59oWpmbyA=,iv:SX1QDDUWZyxE0zODAImcGGHJI7KGKYx9/6Q9F+9SVCQ=,tag:AExTZIfAKTCeU9c3Qj+IUw==,type:str]", + "version": "3.13.2" + } +} diff --git a/user/sweetbread/modules/waybar.nix b/user/sweetbread/modules/waybar.nix index c11ded4..189f50c 100644 --- a/user/sweetbread/modules/waybar.nix +++ b/user/sweetbread/modules/waybar.nix @@ -123,7 +123,7 @@ }; format = "E: {capacity}%"; events = { - on-discharging-0 = "notify-send -u normal 'External battery died'"; + on-discharging-critical = "notify-send -u normal 'External battery is critical"; }; };