From f6d8dcecf0ffc6af089ba50bebf1c9d4782bdd0c Mon Sep 17 00:00:00 2001 From: KeksNino Date: Mon, 7 Sep 2026 17:27:31 +0200 Subject: [PATCH] add grafana dashboard, change navidrome to pid.album=folder + some other small changes --- hosts/desktop/configuration.nix | 5 -- hosts/desktop/hardware-configuration.nix | 65 +++++++++++++++--------- hosts/music-server/packages.nix | 1 + modules/git.nix | 6 +++ modules/server/default.nix | 1 + modules/server/firewall.nix | 4 -- modules/server/grafana.nix | 17 +++++++ modules/server/navidrome.nix | 6 ++- modules/server/slskd.nix | 3 +- 9 files changed, 72 insertions(+), 36 deletions(-) create mode 100644 modules/server/grafana.nix diff --git a/hosts/desktop/configuration.nix b/hosts/desktop/configuration.nix index 82c3482..43bf9ee 100644 --- a/hosts/desktop/configuration.nix +++ b/hosts/desktop/configuration.nix @@ -120,11 +120,6 @@ services.ratbagd.enable = true; - programs.gnupg.agent = { - enable = true; - pinentryPackage = pkgs.pinentry-curses; - }; - programs.nh = { enable = true; flake = "/home/user/nix-config"; diff --git a/hosts/desktop/hardware-configuration.nix b/hosts/desktop/hardware-configuration.nix index 392b4f2..4a7a5a3 100644 --- a/hosts/desktop/hardware-configuration.nix +++ b/hosts/desktop/hardware-configuration.nix @@ -1,41 +1,56 @@ # Do not modify this file! It was generated by ‘nixos-generate-config’ # and may be overwritten by future invocations. Please make changes # to /etc/nixos/configuration.nix instead. -{ config, lib, pkgs, modulesPath, ... }: +{ + config, + lib, + pkgs, + modulesPath, + ... +}: { - imports = - [ (modulesPath + "/installer/scan/not-detected.nix") - ]; + imports = [ + (modulesPath + "/installer/scan/not-detected.nix") + ]; - boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ]; + boot.initrd.availableKernelModules = [ + "xhci_pci" + "ahci" + "usb_storage" + "usbhid" + "sd_mod" + ]; boot.initrd.kernelModules = [ ]; boot.kernelModules = [ "kvm-amd" ]; boot.extraModulePackages = [ ]; - fileSystems."/" = - { device = "/dev/disk/by-uuid/c9d2db79-b3a1-4698-bee3-1cc6d8cb7f02"; - fsType = "btrfs"; - options = [ "subvol=root" ]; - }; + fileSystems."/" = { + device = "/dev/disk/by-uuid/c9d2db79-b3a1-4698-bee3-1cc6d8cb7f02"; + fsType = "btrfs"; + options = [ "subvol=root" ]; + }; - fileSystems."/home" = - { device = "/dev/disk/by-uuid/c9d2db79-b3a1-4698-bee3-1cc6d8cb7f02"; - fsType = "btrfs"; - options = [ "subvol=home" ]; - }; + fileSystems."/home" = { + device = "/dev/disk/by-uuid/c9d2db79-b3a1-4698-bee3-1cc6d8cb7f02"; + fsType = "btrfs"; + options = [ "subvol=home" ]; + }; - fileSystems."/nix" = - { device = "/dev/disk/by-uuid/c9d2db79-b3a1-4698-bee3-1cc6d8cb7f02"; - fsType = "btrfs"; - options = [ "subvol=nix" ]; - }; + fileSystems."/nix" = { + device = "/dev/disk/by-uuid/c9d2db79-b3a1-4698-bee3-1cc6d8cb7f02"; + fsType = "btrfs"; + options = [ "subvol=nix" ]; + }; - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/16F5-2D1A"; - fsType = "vfat"; - options = [ "fmask=0022" "dmask=0022" ]; - }; + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/16F5-2D1A"; + fsType = "vfat"; + options = [ + "fmask=0022" + "dmask=0022" + ]; + }; swapDevices = [ ]; diff --git a/hosts/music-server/packages.nix b/hosts/music-server/packages.nix index 4f9f8fb..66233e5 100644 --- a/hosts/music-server/packages.nix +++ b/hosts/music-server/packages.nix @@ -21,6 +21,7 @@ flac nitch openssl + nixfmt-tree (python314.withPackages ( ps: with ps; [ requests diff --git a/modules/git.nix b/modules/git.nix index f6fe0fb..34efdfb 100644 --- a/modules/git.nix +++ b/modules/git.nix @@ -1,3 +1,4 @@ +{ pkgs, ... }: { programs.git = { enable = true; @@ -24,4 +25,9 @@ }; }; }; + + programs.gnupg.agent = { + enable = true; + pinentryPackage = pkgs.pinentry-curses; + }; } diff --git a/modules/server/default.nix b/modules/server/default.nix index 76c89e3..67cec46 100644 --- a/modules/server/default.nix +++ b/modules/server/default.nix @@ -6,6 +6,7 @@ ./services.nix ./zfs.nix ./firewall.nix + ./grafana.nix ../scripts.nix ]; } diff --git a/modules/server/firewall.nix b/modules/server/firewall.nix index 4d6f3ec..8a476ce 100644 --- a/modules/server/firewall.nix +++ b/modules/server/firewall.nix @@ -1,9 +1,5 @@ { networking.firewall.allowedTCPPorts = [ - 32895 - 4533 - 2049 - 445 5030 3900 3901 diff --git a/modules/server/grafana.nix b/modules/server/grafana.nix new file mode 100644 index 0000000..36cfd62 --- /dev/null +++ b/modules/server/grafana.nix @@ -0,0 +1,17 @@ +{ + services.grafana = { + enable = true; + openFirewall = true; + settings = { + security.secret_key = "$__file{/run/secrets/grafana/secret_key};"; + server = { + http_addr = "0.0.0.0"; + http_port = 3000; + enable_gzip = true; + domain = "192.168.132.149"; + }; + + analytics.reporting_enabled = false; + }; + }; +} diff --git a/modules/server/navidrome.nix b/modules/server/navidrome.nix index a70f05a..222d6fc 100644 --- a/modules/server/navidrome.nix +++ b/modules/server/navidrome.nix @@ -4,13 +4,17 @@ services.navidrome = { enable = true; user = "user"; + openFirewall = true; settings = { MusicFolder = "/home/user/Music"; PlaylistsPath = "Playlists"; Address = "0.0.0.0"; - ScanSchedule = "@every 24h"; + ScanSchedule = "@daily"; EnableInsightsCollector = false; Scanner.PurgeMissing = "always"; + CoverArtPriority = "embedded, cover.*, folder.*, front.*, jacket.*, *, external"; + pid.album = "folder"; + Subsonic.DefaultReportRealPath = true; }; }; diff --git a/modules/server/slskd.nix b/modules/server/slskd.nix index a99f2df..9f50092 100644 --- a/modules/server/slskd.nix +++ b/modules/server/slskd.nix @@ -6,7 +6,6 @@ environmentFile = /home/user/slskd_secrets; user = "user"; settings = { - remote_configuration = true; remote_file_management = true; directories = { downloads = "/media/music/Soulseek"; @@ -60,6 +59,8 @@ Fuck DRM. Fuck Spotify Discord: keksnino https://www.last.fm/user/KeksNino + + also check out @musicpuppy ''; listen_port = 32895; };