diff --git a/flake.lock b/flake.lock index 4ac149b..bd903d6 100644 --- a/flake.lock +++ b/flake.lock @@ -8,11 +8,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1747531250, - "narHash": "sha256-uDhXNURTJgQSpiaCgzqAizbblpcEWEB1WGWEqtCnLLM=", + "lastModified": 1751272032, + "narHash": "sha256-493llKN7yyLkKlz8uYVAyvXH261IpDzuVA+TnewFIAg=", "owner": "KZDKM", "repo": "Hyprspace", - "rev": "511d399120bdcafb43e57ca5ff35167c2bba6db8", + "rev": "847a770436e1ecebdbe5ed006a93db7666937ff2", "type": "github" }, "original": { @@ -29,11 +29,11 @@ "systems": "systems_2" }, "locked": { - "lastModified": 1747575206, - "narHash": "sha256-NwmAFuDUO/PFcgaGGr4j3ozG9Pe5hZ/ogitWhY+D81k=", + "lastModified": 1750173260, + "narHash": "sha256-9P1FziAwl5+3edkfFcr5HeGtQUtrSdk/MksX39GieoA=", "owner": "ryantm", "repo": "agenix", - "rev": "4835b1dc898959d8547a871ef484930675cb47f1", + "rev": "531beac616433bac6f9e2a19feb8e99a22a66baf", "type": "github" }, "original": { @@ -83,11 +83,11 @@ ] }, "locked": { - "lastModified": 1749155310, - "narHash": "sha256-t0HfHg/1+TbSra5s6nNM0o4tnb3uqWedShSpZXsUMYY=", + "lastModified": 1750974272, + "narHash": "sha256-VaeQzSzekMvP+/OhwNZP4kzs4paWk5+20N0MFLTn+cs=", "owner": "hyprwm", "repo": "aquamarine", - "rev": "94981cf75a9f11da0b6dd6a1abbd7c50a36ab2d3", + "rev": "dd921421391e75793d0cc674dc15eca16b46a089", "type": "github" }, "original": { @@ -101,11 +101,11 @@ "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1749223974, - "narHash": "sha256-/GAQYRW1duU81KG//2wI9ax8EkHVG/e1UOD97NdwLOY=", + "lastModified": 1751463132, + "narHash": "sha256-eKbIZwTsl+Rbkj4coSZETlcTbmVbegN1nCKJ7059p88=", "owner": "catppuccin", "repo": "nix", - "rev": "3a42cd79c647360ee8742659e42aeec0947dd3b4", + "rev": "a682f7033678ea093c42c5e361975af5988aa3de", "type": "github" }, "original": { @@ -179,11 +179,11 @@ "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1748821116, - "narHash": "sha256-F82+gS044J1APL0n4hH50GYdPRv/5JWm34oCJYmVKdE=", + "lastModified": 1749398372, + "narHash": "sha256-tYBdgS56eXYaWVW3fsnPQ/nFlgWi/Z2Ymhyu21zVM98=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "49f0870db23e8c1ca0b5259734a02cd9e1e371a1", + "rev": "9305fe4e5c2a6fcf5ba6a3ff155720fbe4076569", "type": "github" }, "original": { @@ -337,11 +337,11 @@ ] }, "locked": { - "lastModified": 1749358668, - "narHash": "sha256-V91nN4Q9ZwX0N+Gzu+F8SnvzMcdURYnMcIvpfLQzD5M=", + "lastModified": 1751463936, + "narHash": "sha256-kS8p1QgyFO/95BHSsZMpBs8oRh1bklAd/zzpWhF6ODk=", "owner": "nix-community", "repo": "home-manager", - "rev": "06451df423dd5e555f39857438ffc16c5b765862", + "rev": "3d243d4a16cafe855df585b3030aa99261a27a86", "type": "github" }, "original": { @@ -355,11 +355,11 @@ "nixpkgs": "nixpkgs_4" }, "locked": { - "lastModified": 1747572947, - "narHash": "sha256-PMQoXbfmWPuXnF8EaWqRmvTvl7+WFUrDVgufFRPgOM4=", + "lastModified": 1750372088, + "narHash": "sha256-LPwgPRBTfnA76rHUr7KYvwq2pNt5IfxymNAZUJFvn/M=", "owner": "hyprwm", "repo": "contrib", - "rev": "910dad4c5755c1735d30da10c96d9086aa2a608d", + "rev": "189f32f56285aae9646bf1292976392beba5a2e2", "type": "github" }, "original": { @@ -413,11 +413,11 @@ ] }, "locked": { - "lastModified": 1749238452, - "narHash": "sha256-8qiKEWcxUrjpUpK+WyFNg/72C8rp70LUuyTD23T+SdQ=", + "lastModified": 1750621377, + "narHash": "sha256-8u6b5oAdX0rCuoR8wFenajBRmI+mzbpNig6hSCuWUzE=", "owner": "hyprwm", "repo": "hyprgraphics", - "rev": "c7225d73755a6c4c7c72f4d4f3925ea426e325a8", + "rev": "b3d628d01693fb9bb0a6690cd4e7b80abda04310", "type": "github" }, "original": { @@ -444,11 +444,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1749367163, - "narHash": "sha256-qhvFE5j3evQ7oaaIL/cpCwMF57O+KLQj+U/oPRVOOyc=", + "lastModified": 1751404714, + "narHash": "sha256-U2EbKyeRJmJp54AxAt426vVdznrMkCgUiGuv0OSnPJs=", "ref": "refs/heads/main", - "rev": "c6f713fefe59c8c51783210dad6b68586f248de2", - "revCount": 6174, + "rev": "90c8609cbb5ae7b488d7b14b4dfb3ec9585ed2b7", + "revCount": 6239, "submodules": true, "type": "git", "url": "https://github.com/hyprwm/Hyprland" @@ -564,11 +564,11 @@ ] }, "locked": { - "lastModified": 1749155776, - "narHash": "sha256-t1PM0wxQLQwv2F2AW23uA7pm5giwmcgYEWbNIRct9r4=", + "lastModified": 1750371812, + "narHash": "sha256-D868K1dVEACw17elVxRgXC6hOxY+54wIEjURztDWLk8=", "owner": "hyprwm", "repo": "hyprland-qtutils", - "rev": "396e8aa1c06274835b69da7f9a015fff9a9b7522", + "rev": "b13c7481e37856f322177010bdf75fccacd1adc8", "type": "github" }, "original": { @@ -593,11 +593,11 @@ ] }, "locked": { - "lastModified": 1749145882, - "narHash": "sha256-qr0KXeczF8Sma3Ae7+dR2NHhvG7YeLBJv19W4oMu6ZE=", + "lastModified": 1750371198, + "narHash": "sha256-/iuJ1paQOBoSLqHflRNNGyroqfF/yvPNurxzcCT0cAE=", "owner": "hyprwm", "repo": "hyprlang", - "rev": "1bfb84f54d50c7ae6558c794d3cfd5f6a7e6e676", + "rev": "cee01452bca58d6cadb3224e21e370de8bc20f0b", "type": "github" }, "original": { @@ -614,11 +614,11 @@ "systems": "systems_4" }, "locked": { - "lastModified": 1749162400, - "narHash": "sha256-tK5PCJVvpx95hbKvzUGldS3QIwuFfz5rYdc8EDCelL8=", + "lastModified": 1750371999, + "narHash": "sha256-de87tFOEhJiXTHNzG3LcwxGR1a/D6v+nC+9+V1GW1Zs=", "owner": "hyprwm", "repo": "hyprpicker", - "rev": "b01491ac4e8c193a07e6f55756f159a978a4057b", + "rev": "d6a1363a86cd99460f0020134e455d921e8bacd8", "type": "github" }, "original": { @@ -636,11 +636,11 @@ "systems": "systems_5" }, "locked": { - "lastModified": 1749186395, - "narHash": "sha256-4PMO6bm0hHEOzGEhXRYSCLpkGT6lGwvax8GkLo+nK5w=", + "lastModified": 1751122848, + "narHash": "sha256-IJxNuudvBX+3WJpqG16DBaM6aDwgWAU9PchGYHSXoZM=", "owner": "hyprwm", "repo": "hyprsunset", - "rev": "4528cca4b2e4b44ed0a4e767a0ba493770d9d141", + "rev": "845f7e8e86cac5023cad4dc446fc120be80fe69a", "type": "github" }, "original": { @@ -661,11 +661,11 @@ ] }, "locked": { - "lastModified": 1749135356, - "narHash": "sha256-Q8mAKMDsFbCEuq7zoSlcTuxgbIBVhfIYpX0RjE32PS0=", + "lastModified": 1751061882, + "narHash": "sha256-g9n8Vrbx+2JYM170P9BbvGHN39Wlkr4U+V2WLHQsXL8=", "owner": "hyprwm", "repo": "hyprutils", - "rev": "e36db00dfb3a3d3fdcc4069cb292ff60d2699ccb", + "rev": "4737241eaf8a1e51671a2a088518071f9a265cf4", "type": "github" }, "original": { @@ -736,11 +736,11 @@ ] }, "locked": { - "lastModified": 1749145760, - "narHash": "sha256-IHaGWpGrv7seFWdw/1A+wHtTsPlOGIKMrk1TUIYJEFI=", + "lastModified": 1750371869, + "narHash": "sha256-lGk4gLjgZQ/rndUkzmPYcgbHr8gKU5u71vyrjnwfpB4=", "owner": "hyprwm", "repo": "hyprwayland-scanner", - "rev": "817918315ea016cc2d94004bfb3223b5fd9dfcc6", + "rev": "aa38edd6e3e277ae6a97ea83a69261a5c3aab9fd", "type": "github" }, "original": { @@ -835,11 +835,11 @@ "nixpkgs": "nixpkgs_7" }, "locked": { - "lastModified": 1749348095, - "narHash": "sha256-4KaUocEPNoU6gpFE6WPLMvMK5tmvJyc0qf84Mp8Chlw=", + "lastModified": 1751421595, + "narHash": "sha256-6uvHT496bu8b/UhTY86NnrbU2fzuqNkgHCHi1T3LLog=", "owner": "fufexan", "repo": "nix-gaming", - "rev": "4221d80488883c40003f0704af78699a583f0c9f", + "rev": "cb4f76b2b304c07237bc7c2f81926b645a216021", "type": "github" }, "original": { @@ -850,11 +850,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1749195551, - "narHash": "sha256-W5GKQHgunda/OP9sbKENBZhMBDNu2QahoIPwnsF6CeM=", + "lastModified": 1751432711, + "narHash": "sha256-136MeWtckSHTN9Z2WRNRdZ8oRP3vyx3L8UxeBYE+J9w=", "owner": "nixos", "repo": "nixos-hardware", - "rev": "4602f7e1d3f197b3cb540d5accf5669121629628", + "rev": "497ae1357f1ac97f1aea31a4cb74ad0d534ef41f", "type": "github" }, "original": { @@ -927,11 +927,11 @@ }, "nixpkgs_11": { "locked": { - "lastModified": 1749143949, - "narHash": "sha256-QuUtALJpVrPnPeozlUG/y+oIMSLdptHxb3GK6cpSVhA=", + "lastModified": 1751271578, + "narHash": "sha256-P/SQmKDu06x8yv7i0s8bvnnuJYkxVGBWLWHaU+tt4YY=", "owner": "nixos", "repo": "nixpkgs", - "rev": "d3d2d80a2191a73d1e86456a751b83aa13085d7d", + "rev": "3016b4b15d13f3089db8a41ef937b13a9e33a8df", "type": "github" }, "original": { @@ -959,11 +959,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1744463964, - "narHash": "sha256-LWqduOgLHCFxiTNYi3Uj5Lgz0SR+Xhw3kr/3Xd0GPTM=", + "lastModified": 1750776420, + "narHash": "sha256-/CG+w0o0oJ5itVklOoLbdn2dGB0wbZVOoDm4np6w09A=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "2631b0b7abcea6e640ce31cd78ea58910d31e650", + "rev": "30a61f056ac492e3b7cdcb69c1e6abdcf00e39cf", "type": "github" }, "original": { @@ -1023,11 +1023,11 @@ }, "nixpkgs_7": { "locked": { - "lastModified": 1749213349, - "narHash": "sha256-UAaWOyQhdp7nXzsbmLVC67fo+QetzoTm9hsPf9X3yr4=", + "lastModified": 1750994206, + "narHash": "sha256-3u6rEbIX9CN/5A5/mc3u0wIO1geZ0EhjvPBXmRDHqWM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "a4ff0e3c64846abea89662bfbacf037ef4b34207", + "rev": "80d50fc87924c2a0d346372d242c27973cf8cdbf", "type": "github" }, "original": { @@ -1039,11 +1039,11 @@ }, "nixpkgs_8": { "locked": { - "lastModified": 1749143949, - "narHash": "sha256-QuUtALJpVrPnPeozlUG/y+oIMSLdptHxb3GK6cpSVhA=", + "lastModified": 1751271578, + "narHash": "sha256-P/SQmKDu06x8yv7i0s8bvnnuJYkxVGBWLWHaU+tt4YY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "d3d2d80a2191a73d1e86456a751b83aa13085d7d", + "rev": "3016b4b15d13f3089db8a41ef937b13a9e33a8df", "type": "github" }, "original": { @@ -1116,11 +1116,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1749380898, - "narHash": "sha256-+2SAsUATVrLVuOfyGW8NoYxHkb8SdMsZCK4qsRsv4Y0=", + "lastModified": 1751464546, + "narHash": "sha256-DCPeFJC6ih3cFhSwxBNNgbbHakCupR9fE5yX8DNWOzQ=", "owner": "nix-community", "repo": "NUR", - "rev": "31c477ffe92da8531f55c71333a394e89fc2438f", + "rev": "35af9e4796b6659705276544207796b5d05720e1", "type": "github" }, "original": { @@ -1163,11 +1163,11 @@ ] }, "locked": { - "lastModified": 1747372754, - "narHash": "sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo+bnXU9D9k=", + "lastModified": 1750779888, + "narHash": "sha256-wibppH3g/E2lxU43ZQHC5yA/7kIKLGxVEnsnVK1BtRg=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "80479b6ec16fefd9c1db3ea13aeb038c60530f46", + "rev": "16ec914f6fb6f599ce988427d9d94efddf25fe6d", "type": "github" }, "original": { @@ -1350,11 +1350,11 @@ ] }, "locked": { - "lastModified": 1749155346, - "narHash": "sha256-KIkJu3zF8MF3DuGwzAmo3Ww9wsWXolwV30SjJRTAxYE=", + "lastModified": 1750372504, + "narHash": "sha256-VBeZb1oqZM1cqCAZnFz/WyYhO8aF/ImagI7WWg/Z3Og=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "44bf29f1df45786098920c655af523535a9191ae", + "rev": "400308fc4f9d12e0a93e483c2e7a649e12af1a92", "type": "github" }, "original": { diff --git a/modules/services/borg.nix b/modules/services/borg.nix index 46092fc..f068108 100644 --- a/modules/services/borg.nix +++ b/modules/services/borg.nix @@ -45,7 +45,10 @@ in ${pkgs.ntfy-sh}/bin/ntfy send https://notify.liv.town/${hostname} "borgbackup: ${hostname} backup (violet-lib) completed succesfully with exit status $exitStatus" fi ''; - user = "${username}"; + # user = "${username}"; + environment = { + BORG_RSH = "ssh -p 9123 -i /home/liv/.ssh/id_ed25519"; + }; }; }; } diff --git a/modules/services/frp.nix b/modules/services/frp.nix new file mode 100644 index 0000000..5083b89 --- /dev/null +++ b/modules/services/frp.nix @@ -0,0 +1,34 @@ +{ + pkgs, + config, + lib, + ... +}: +{ + services.frp = { + enable = true; + role = "client"; + settings = { + serverAddr = ""; + serverPort = 7000; + auth.method = "token"; + auth.token = ""; + proxies = [ + { + name = "http"; + type = "tcp"; + localIP = "localhost"; + localPort = 80; + remotePort = 80; + } + { + name = "https"; + type = "tcp"; + localIP = "localhost"; + localPort = 443; + remotePort = 443; + } + ]; + }; + }; +} diff --git a/modules/services/prosody.nix b/modules/services/prosody.nix deleted file mode 100644 index cadd82e..0000000 --- a/modules/services/prosody.nix +++ /dev/null @@ -1,29 +0,0 @@ -{ - services.prosody = { - enable = false; - user = "acme"; - modules = { - welcome = true; - websocket = true; - watchregistrations = true; - }; - admins = [ "liv@liv.town" ]; - allowRegistration = false; - ssl.cert = "/var/lib/acme/liv.town/cert.pem"; - ssl.key = "/var/lib/acme/liv.town/key.pem"; - virtualHosts."liv.town" = { - enabled = true; - domain = "liv.town"; - ssl.cert = "/var/lib/acme/liv.town/fullchain.pem"; - ssl.key = "/var/lib/acme/liv.town/key.pem"; - }; - muc = [ - { - domain = "conference.liv.town"; - } - ]; - uploadHttp = { - domain = "upload.liv.town"; - }; - }; -} diff --git a/modules/services/violet.nix b/modules/services/violet.nix index d09612b..e87f7ff 100644 --- a/modules/services/violet.nix +++ b/modules/services/violet.nix @@ -5,10 +5,12 @@ ++ [ (import ./anubis.nix) ] ++ [ (import ./borg.nix) ] ++ [ (import ./binternet-proxy.nix) ] + ++ [ (import ./bluemap-proxy.nix) ] ++ [ (import ./docker.nix) ] - ++ [ (import ./frp.nix) ] + # ++ [ (import ./frp.nix) ] ++ [ (import ./forgejo.nix) ] ++ [ (import ./grafana.nix) ] + ++ [ (import ./guacamole.nix) ] ++ [ (import ./gokapi.nix) ] ++ [ (import ./jellyfin.nix) ] ++ [ (import ./librey-proxy.nix) ] @@ -17,15 +19,13 @@ ++ [ (import ./mumble.nix) ] ++ [ (import ./monitoring.nix) ] ++ [ (import ./ntfy.nix) ] - ++ [ (import ./bluemap-proxy.nix) ] - ++ [ (import ./sharkey-proxy.nix) ] ++ [ (import ./nginx.nix) ] - # ++ [(import ./komga.nix)] ++ [ (import ./radicale.nix) ] - ++ [ (import ./prosody.nix) ] - ++ [ (import ./tailscale.nix) ] - ++ [ (import ./guacamole.nix) ] - ++ [ (import ./readarr.nix) ]; - # ++ [(import ./smart-monitoring.nix)] - # ++ [(import ./jitsi-meet.nix)] + ++ [ (import ./readarr.nix) ] + ++ [ (import ./sharkey-proxy.nix) ] + # ++ [ (import ./komga.nix) ] + # ++ [ (import ./prosody.nix) ] + ++ [ (import ./tailscale.nix) ]; + # ++ [ (import ./smart-monitoring.nix) ] + # ++ [ (import ./jitsi-meet.nix) ] } diff --git a/modules/services/xmpp.nix b/modules/services/xmpp.nix new file mode 100644 index 0000000..f9c5cf1 --- /dev/null +++ b/modules/services/xmpp.nix @@ -0,0 +1,29 @@ +{ + # services.prosody = { + # enable = false; + # user = "acme"; + # modules = { + # welcome = true; + # websocket = true; + # watchregistrations = true; + # }; + # admins = [ "liv@liv.town" ]; + # allowRegistration = false; + # ssl.cert = "/var/lib/acme/liv.town/cert.pem"; + # ssl.key = "/var/lib/acme/liv.town/key.pem"; + # virtualHosts."liv.town" = { + # enabled = true; + # domain = "liv.town"; + # ssl.cert = "/var/lib/acme/liv.town/fullchain.pem"; + # ssl.key = "/var/lib/acme/liv.town/key.pem"; + # }; + # muc = [ + # { + # domain = "conference.liv.town"; + # } + # ]; + # uploadHttp = { + # domain = "upload.liv.town"; + # }; + # }; +}