From 7a31516be1db5524329cacee83fa55bbb66f1213 Mon Sep 17 00:00:00 2001 From: Ahwx Date: Tue, 1 Jul 2025 16:47:08 +0200 Subject: [PATCH 01/17] chore(temp): set address for dandelion --- modules/services/borg.nix | 28 +++------------------------- 1 file changed, 3 insertions(+), 25 deletions(-) diff --git a/modules/services/borg.nix b/modules/services/borg.nix index b318cec..49f8dc4 100644 --- a/modules/services/borg.nix +++ b/modules/services/borg.nix @@ -1,7 +1,7 @@ { pkgs, config, ... }: let hostname = "violet"; - repo = "ssh://dandelion.booping.local:${toString config.services.openssh.ports}/spinners/rootvol/backups/${hostname}"; + repo = "ssh://dandelion:${toString config.services.openssh.ports}/spinners/rootvol/backups/${hostname}"; in { services.borgbackup.jobs = { @@ -10,6 +10,7 @@ in "/home/liv/MinecraftDocker" ]; repo = "${repo}/MinecraftDocker-tulip"; + encryption.mode = "none"; compression = "auto,zstd"; startAt = "daily"; postHook = '' @@ -25,6 +26,7 @@ in "/var/lib" ]; repo = "${repo}/var-lib"; + encryption.mode = "none"; compression = "auto,zstd"; startAt = "daily"; postHook = '' @@ -35,29 +37,5 @@ in fi ''; }; - # "violet-random" = { - # paths = [ - # "/random" - # ]; - # exclude = [ - # "/random/a" - # "/random/a" - # ]; - # encryption = { - # mode = ""; - # passCommand = ""; - # }; - # environment.BORG_RSH = "ssh -i ${config.sops.secrets."ssh_private_key_violet".path}"; - # repo = "${repo}/violet/random"; - # compression = "auto,zstd"; - # startAt = "daily"; - # postHook = '' - # if [ $exitStatus -eq 2 ]; then - # ${pkgs.ntfy-sh}/bin/ntfy send https://ntfy.${domain}/nixbox "BorgBackup: nixbox backup failed with errors" - # else - # ${pkgs.ntfy-sh}/bin/ntfy send https://ntfy.${domain}/nixbox "BorgBackup: nixbox backup completed succesfully with exit status $exitStatus" - # fi - # ''; - # }; }; } From e5556c99a181a7c2f98db4149f5ca71d8a85fa0e Mon Sep 17 00:00:00 2001 From: Ahwx Date: Tue, 1 Jul 2025 20:29:55 +0200 Subject: [PATCH 02/17] chore: update, still doesn't work --- modules/services/borg.nix | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/modules/services/borg.nix b/modules/services/borg.nix index 49f8dc4..2b9e9af 100644 --- a/modules/services/borg.nix +++ b/modules/services/borg.nix @@ -1,7 +1,12 @@ -{ pkgs, config, ... }: +{ + pkgs, + config, + username, + ... +}: let hostname = "violet"; - repo = "ssh://dandelion:${toString config.services.openssh.ports}/spinners/rootvol/backups/${hostname}"; + baseRepo = "ssh://liv@dandelion:9123/spinners/rootvol/backups/${hostname}"; in { services.borgbackup.jobs = { @@ -9,10 +14,10 @@ in paths = [ "/home/liv/MinecraftDocker" ]; - repo = "${repo}/MinecraftDocker-tulip"; + repo = "${baseRepo}/MinecraftDocker-tulip"; encryption.mode = "none"; - compression = "auto,zstd"; - startAt = "daily"; + compression = "auto,zstd,10"; + startAt = [ "3:00" ]; postHook = '' if [ $exitStatus -eq 2 ]; then ${pkgs.ntfy-sh}/bin/ntfy send https://ntfy.liv.town/${hostname} "borgbackup: ${hostname} backup (violet-minecraft) failed with errors" @@ -20,12 +25,13 @@ in ${pkgs.ntfy-sh}/bin/ntfy send https://ntfy.liv.town/${hostname} "borgbackup: ${hostname} backup (violet-minecraft) completed succesfully with exit status $exitStatus" fi ''; + user = "${username}"; }; "violet-lib" = { paths = [ "/var/lib" ]; - repo = "${repo}/var-lib"; + repo = "${baseRepo}/var-lib"; encryption.mode = "none"; compression = "auto,zstd"; startAt = "daily"; @@ -36,6 +42,7 @@ in ${pkgs.ntfy-sh}/bin/ntfy send https://ntfy.liv.town/${hostname} "borgbackup: ${hostname} backup (violet-lib) completed succesfully with exit status $exitStatus" fi ''; + user = "${username}"; }; }; } From 9594c6f928b83939cc39f59b1bbba1dff3c9c30d Mon Sep 17 00:00:00 2001 From: Ahwx Date: Tue, 1 Jul 2025 20:30:00 +0200 Subject: [PATCH 03/17] feat: import borg --- modules/services/violet.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/services/violet.nix b/modules/services/violet.nix index 804e1b0..d09612b 100644 --- a/modules/services/violet.nix +++ b/modules/services/violet.nix @@ -3,6 +3,7 @@ imports = [ (import ./invidious.nix) ] ++ [ (import ./anubis.nix) ] + ++ [ (import ./borg.nix) ] ++ [ (import ./binternet-proxy.nix) ] ++ [ (import ./docker.nix) ] ++ [ (import ./frp.nix) ] From 713d5b2ec9c960f9f6bba90dea28de740f87b77d Mon Sep 17 00:00:00 2001 From: Ahwx Date: Wed, 2 Jul 2025 16:02:38 +0200 Subject: [PATCH 04/17] feat: upload latest version of this file to ask for help since everything is confusing --- modules/services/borg.nix | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/modules/services/borg.nix b/modules/services/borg.nix index 2b9e9af..46092fc 100644 --- a/modules/services/borg.nix +++ b/modules/services/borg.nix @@ -14,18 +14,21 @@ in paths = [ "/home/liv/MinecraftDocker" ]; - repo = "${baseRepo}/MinecraftDocker-tulip"; + repo = "ssh://liv@dandelion:9123/spinners/rootvol/backups/violet/MinecraftDocker-tulip"; encryption.mode = "none"; compression = "auto,zstd,10"; startAt = [ "3:00" ]; postHook = '' if [ $exitStatus -eq 2 ]; then - ${pkgs.ntfy-sh}/bin/ntfy send https://ntfy.liv.town/${hostname} "borgbackup: ${hostname} backup (violet-minecraft) failed with errors" + ${pkgs.ntfy-sh}/bin/ntfy send https://notify.liv.town/${hostname} "borgbackup: ${hostname} backup (violet-minecraft) failed with errors" else - ${pkgs.ntfy-sh}/bin/ntfy send https://ntfy.liv.town/${hostname} "borgbackup: ${hostname} backup (violet-minecraft) completed succesfully with exit status $exitStatus" + ${pkgs.ntfy-sh}/bin/ntfy send https://notify.liv.town/${hostname} "borgbackup: ${hostname} backup (violet-minecraft) completed succesfully with exit status $exitStatus" fi ''; user = "${username}"; + environment = { + BORG_RSH = "ssh -p 9123 -i /home/liv/.ssh/id_ed25519"; + }; }; "violet-lib" = { paths = [ @@ -37,9 +40,9 @@ in startAt = "daily"; postHook = '' if [ $exitStatus -eq 2 ]; then - ${pkgs.ntfy-sh}/bin/ntfy send https://ntfy.liv.town/${hostname} "borgbackup: ${hostname} backup (violet-lib) failed with errors" + ${pkgs.ntfy-sh}/bin/ntfy send https://notify.liv.town/${hostname} "borgbackup: ${hostname} backup (violet-lib) failed with errors" else - ${pkgs.ntfy-sh}/bin/ntfy send https://ntfy.liv.town/${hostname} "borgbackup: ${hostname} backup (violet-lib) completed succesfully with exit status $exitStatus" + ${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}"; From 3e3061956fe7003905e20fdb9762b3ded41966fe Mon Sep 17 00:00:00 2001 From: Ahwx Date: Wed, 2 Jul 2025 16:22:41 +0200 Subject: [PATCH 05/17] chore: move prosody.nix to xmpp.nix --- modules/services/prosody.nix | 29 ----------------------------- modules/services/xmpp.nix | 29 +++++++++++++++++++++++++++++ 2 files changed, 29 insertions(+), 29 deletions(-) delete mode 100644 modules/services/prosody.nix create mode 100644 modules/services/xmpp.nix 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/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"; + # }; + # }; +} From cdfa24c396520246482bee04c649f43504421933 Mon Sep 17 00:00:00 2001 From: Ahwx Date: Wed, 2 Jul 2025 16:22:49 +0200 Subject: [PATCH 06/17] chore: reorder violet.nix so it looks prettier --- modules/services/violet.nix | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/modules/services/violet.nix b/modules/services/violet.nix index d09612b..a4fb3ca 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 ./readarr.nix) ] + ++ [ (import ./sharkey-proxy.nix) ] + # ++ [(import ./komga.nix)] + # ++ [ (import ./prosody.nix) ] ++ [ (import ./tailscale.nix) ] - ++ [ (import ./guacamole.nix) ] - ++ [ (import ./readarr.nix) ]; - # ++ [(import ./smart-monitoring.nix)] - # ++ [(import ./jitsi-meet.nix)] + # ++ [(import ./smart-monitoring.nix)] + ++ [(import ./jitsi-meet.nix)]: } From d67ea8bf124773a01e3b7d4eb773887b915ec3ce Mon Sep 17 00:00:00 2001 From: Ahwx Date: Wed, 2 Jul 2025 16:25:34 +0200 Subject: [PATCH 07/17] flake: update --- flake.lock | 146 ++++++++++++++++++++++++++--------------------------- 1 file changed, 73 insertions(+), 73 deletions(-) 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": { From 57361c61ae2b11a85bde827a610f3239963c1d61 Mon Sep 17 00:00:00 2001 From: Ahwx Date: Wed, 2 Jul 2025 16:30:44 +0200 Subject: [PATCH 08/17] chore: reorder things part two --- modules/services/violet.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/modules/services/violet.nix b/modules/services/violet.nix index a4fb3ca..e87f7ff 100644 --- a/modules/services/violet.nix +++ b/modules/services/violet.nix @@ -23,9 +23,9 @@ ++ [ (import ./radicale.nix) ] ++ [ (import ./readarr.nix) ] ++ [ (import ./sharkey-proxy.nix) ] - # ++ [(import ./komga.nix)] + # ++ [ (import ./komga.nix) ] # ++ [ (import ./prosody.nix) ] - ++ [ (import ./tailscale.nix) ] - # ++ [(import ./smart-monitoring.nix)] - ++ [(import ./jitsi-meet.nix)]: + ++ [ (import ./tailscale.nix) ]; + # ++ [ (import ./smart-monitoring.nix) ] + # ++ [ (import ./jitsi-meet.nix) ] } From 949daabe5639607367f5c91936929a0e953d8a74 Mon Sep 17 00:00:00 2001 From: Ahwx Date: Wed, 2 Jul 2025 23:37:06 +0200 Subject: [PATCH 09/17] feat: enable tailscale for yoshino --- hosts/yoshino/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/hosts/yoshino/default.nix b/hosts/yoshino/default.nix index 7abf5ae..f61d5b5 100644 --- a/hosts/yoshino/default.nix +++ b/hosts/yoshino/default.nix @@ -11,6 +11,7 @@ ./../../modules/core # ./../../modules/home/nfs.nix ./../../modules/core/virtualization.nix + ./../../modules/services/tailscale.nix ]; powerManagement = { From 601f77e6fb324e0a50529f01fc421a8d9505dbb6 Mon Sep 17 00:00:00 2001 From: Ahwx Date: Wed, 2 Jul 2025 23:37:14 +0200 Subject: [PATCH 10/17] feat: adds gajim to packages --- modules/home/packages.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/home/packages.nix b/modules/home/packages.nix index bbf04d7..dde1cc9 100644 --- a/modules/home/packages.nix +++ b/modules/home/packages.nix @@ -59,6 +59,7 @@ # GUI shit element-desktop + gajim signal-desktop anki-bin obs-studio From c0a68ae5ea8c0eb08aaa62cc78999d61bc60c6a4 Mon Sep 17 00:00:00 2001 From: Ahwx Date: Thu, 3 Jul 2025 15:27:54 +0200 Subject: [PATCH 11/17] feat: run job as root because of permissions, adds ssh environment --- modules/services/borg.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) 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"; + }; }; }; } From 12039dfbc017303becf952aaac564489cde03c6b Mon Sep 17 00:00:00 2001 From: Ahwx Date: Thu, 3 Jul 2025 15:30:15 +0200 Subject: [PATCH 12/17] feat: adds frp --- modules/services/frp.nix | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 modules/services/frp.nix 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; + } + ]; + }; + }; +} From 21924df69c6d857870c8ab2acde136312323ed35 Mon Sep 17 00:00:00 2001 From: Ahwx Date: Sun, 6 Jul 2025 01:35:03 +0200 Subject: [PATCH 13/17] feat: adds mpdris2 to packages since that is required for mpd apparently --- modules/services/mpd.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/modules/services/mpd.nix b/modules/services/mpd.nix index 18bd767..ff543d5 100644 --- a/modules/services/mpd.nix +++ b/modules/services/mpd.nix @@ -1,4 +1,9 @@ -{ username, config, ... }: +{ + username, + config, + pkgs, + ... +}: { services.mpd = { enable = true; @@ -19,4 +24,8 @@ # see: https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/609 XDG_RUNTIME_DIR = "/run/user/${toString config.users.users.userRunningPipeWire.uid}"; # User-id must match above user. MPD will look inside this directory for the PipeWire socket. }; + + home.packages = with pkgs; [ + mpdris2 + ]; } From fe7adc40b60676785e922c0e2241990e66acc834 Mon Sep 17 00:00:00 2001 From: Ahwx Date: Sun, 6 Jul 2025 01:35:11 +0200 Subject: [PATCH 14/17] feat: make keybinding to open gajim --- modules/home/hyprland/config.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/home/hyprland/config.nix b/modules/home/hyprland/config.nix index 5ee7713..94a37a1 100644 --- a/modules/home/hyprland/config.nix +++ b/modules/home/hyprland/config.nix @@ -226,6 +226,7 @@ "$mainMod SHIFT, W, exec, wdisplays" "$mainMod SHIFT, T, exec, thunderbird" "$mainMod SHIFT, E, exec, element-desktop" + "$mainMod SHIFT, X, exec, gajim" "$mainMod SHIFT, P, exec, pavucontrol-qt" "$mainMod SHIFT, N ,exec, notes" "$mainMod, N,exec, swaync-client -t" From 3644edd3e7859328bc9f01eb127d64fe60af34cb Mon Sep 17 00:00:00 2001 From: Ahwx Date: Sun, 6 Jul 2025 01:35:18 +0200 Subject: [PATCH 15/17] feat: enable mpd on sakura --- hosts/sakura/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/hosts/sakura/default.nix b/hosts/sakura/default.nix index 5c1c991..99124c4 100644 --- a/hosts/sakura/default.nix +++ b/hosts/sakura/default.nix @@ -11,6 +11,7 @@ ./../../modules/core ./../../modules/core/virtualization.nix ./../../modules/services/tailscale.nix + ./../../modules/services/mpd.nix inputs.nixos-hardware.nixosModules.framework-13-7040-amd ]; From 243787b2bd736a9420905eeb81de7f184f1ec06a Mon Sep 17 00:00:00 2001 From: Ahwx Date: Mon, 7 Jul 2025 23:20:13 +0200 Subject: [PATCH 16/17] feat: adds linux phone --- modules/core/sshd.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/core/sshd.nix b/modules/core/sshd.nix index 13fba58..2616303 100644 --- a/modules/core/sshd.nix +++ b/modules/core/sshd.nix @@ -17,5 +17,6 @@ "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGXi00z/rxVrWLKgYr+tWIsbHsSQO75hUMSTThNm5wUw liv@sakura" # main laptop "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJ2nsQHyWnrmuQway0ehoMUcYYfhD8Ph/vpD0Tzip1b1 liv@meow" # main phone "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHv2zxCy22KU1tZOH2hA1p8fWVpOSrTYF68+3E5r330O liv@ichiyo" # 2nd laptop + "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGm9dLpj13r+Iso5SuHSCSQbriumwW1Fs7TkgaBmmXeo liv@azalea" # linux phone ]; } From 35db81ac4df7e934d57781345068b9d6e070712b Mon Sep 17 00:00:00 2001 From: Ahwx Date: Mon, 7 Jul 2025 23:20:43 +0200 Subject: [PATCH 17/17] fix: mpd still has issues but less than before --- modules/services/mpd.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/modules/services/mpd.nix b/modules/services/mpd.nix index ff543d5..232ef62 100644 --- a/modules/services/mpd.nix +++ b/modules/services/mpd.nix @@ -7,7 +7,7 @@ { services.mpd = { enable = true; - musicDirectory = "/dandelion/home/liv/music"; + musicDirectory = "/home/liv/Music"; extraConfig = '' audio_output { type "pipewire" @@ -18,14 +18,14 @@ # Optional: # network.listenAddress = "any"; # if you want to allow non-localhost connections - network.startWhenNeeded = false; # systemd feature: only start MPD service upon connection to its socket }; systemd.services.mpd.environment = { # see: https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/609 - XDG_RUNTIME_DIR = "/run/user/${toString config.users.users.userRunningPipeWire.uid}"; # User-id must match above user. MPD will look inside this directory for the PipeWire socket. + XDG_RUNTIME_DIR = "/run/user/${toString config.users.users.${username}.uid}"; # User-id must match above user. MPD will look inside this directory for the PipeWire socket. }; - home.packages = with pkgs; [ + environment.systemPackages = with pkgs; [ mpdris2 + ncmpcpp ]; }