diff --git a/hosts/srv-core/configuration.nix b/hosts/srv-core/configuration.nix index 7645421..962334b 100644 --- a/hosts/srv-core/configuration.nix +++ b/hosts/srv-core/configuration.nix @@ -4,78 +4,74 @@ system.stateVersion = "25.11"; - custom = - let - privateDomain = config.custom.networking.overlay.domain; - in - { - boot.loader.grub.enable = true; + custom = { + boot.loader.grub.enable = true; - networking = { - overlay.address = "10.254.250.6"; - underlay = { - interface = "enp2s0"; - cidr = "192.168.0.64/24"; - gateway = "192.168.0.1"; - }; - }; - - services = { - recursive-nameserver = { - enable = true; - blockAds = true; - }; - private-nameserver.enable = true; - - syncthing = { - enable = true; - isServer = true; - gui.domain = "syncthing.${privateDomain}"; - doBackups = true; - }; - - prometheus.storageRetentionSize = "20GB"; - }; - - web-services = { - atuin = { - enable = true; - domain = "atuin.${privateDomain}"; - }; - - filebrowser = { - enable = true; - domain = "files.${privateDomain}"; - doBackups = true; - }; - - radicale = { - enable = true; - domain = "dav.${privateDomain}"; - doBackups = true; - }; - - actualbudget = { - enable = true; - domain = "budget.${privateDomain}"; - doBackups = true; - }; - - karakeep = { - enable = true; - domain = "bookmarks.${privateDomain}"; - }; - - grafana = { - enable = true; - domain = "grafana.${privateDomain}"; - }; - - gatus = { - enable = true; - domain = "status.${privateDomain}"; - generateDefaultEndpoints = true; - }; + networking = { + overlay.address = "10.254.250.6"; + underlay = { + interface = "enp2s0"; + cidr = "192.168.0.64/24"; + gateway = "192.168.0.1"; }; }; + + services = { + recursive-nameserver = { + enable = true; + blockAds = true; + }; + private-nameserver.enable = true; + + syncthing = { + enable = true; + isServer = true; + gui.domain = "syncthing.${config.custom.networking.overlay.domain}"; + doBackups = true; + }; + + prometheus.storageRetentionSize = "20GB"; + }; + + web-services = { + atuin = { + enable = true; + domain = "atuin.${config.custom.networking.overlay.domain}"; + }; + + filebrowser = { + enable = true; + domain = "files.${config.custom.networking.overlay.domain}"; + doBackups = true; + }; + + radicale = { + enable = true; + domain = "dav.${config.custom.networking.overlay.domain}"; + doBackups = true; + }; + + actualbudget = { + enable = true; + domain = "budget.${config.custom.networking.overlay.domain}"; + doBackups = true; + }; + + karakeep = { + enable = true; + domain = "bookmarks.${config.custom.networking.overlay.domain}"; + }; + + grafana = { + enable = true; + domain = "grafana.${config.custom.networking.overlay.domain}"; + }; + + gatus = { + enable = true; + domain = "status.${config.custom.networking.overlay.domain}"; + generateDefaultEndpoints = true; + }; + }; + }; } diff --git a/hosts/srv-core/hardware.nix b/hosts/srv-core/hardware.nix index 3b0c9c8..b8bdcb7 100644 --- a/hosts/srv-core/hardware.nix +++ b/hosts/srv-core/hardware.nix @@ -67,8 +67,6 @@ MAXTEMP=hwmon2/pwm2=100 MINSTART=hwmon2/pwm2=35 MINSTOP=hwmon2/pwm2=25 - MINPWM=hwmon2/pwm2=0 - MAXPWM=hwmon2/pwm2=255 ''; }; } diff --git a/hosts/vps-www/configuration.nix b/hosts/vps-www/configuration.nix index a9729eb..f9909f1 100644 --- a/hosts/vps-www/configuration.nix +++ b/hosts/vps-www/configuration.nix @@ -4,74 +4,66 @@ system.stateVersion = "25.11"; - custom = - let - sproutedDomain = "sprouted.cloud"; - in - { - boot.loader.systemd-boot.enable = true; + custom = { + boot.loader.systemd-boot.enable = true; - networking = { - overlay.address = "10.254.250.4"; - underlay = { - interface = "enp1s0"; - cidr = "167.235.73.246/32"; - isPublic = true; - gateway = "172.31.1.1"; - }; + networking = { + overlay.address = "10.254.250.4"; + underlay = { + interface = "enp1s0"; + cidr = "167.235.73.246/32"; + isPublic = true; + gateway = "172.31.1.1"; }; - - services.public-nameserver = { - enable = true; - publicHostName = "ns2"; - zones = [ - "sprouted.cloud" - "sstork.dev" - ]; - }; - - web-services = - let - sstorkDomain = "sstork.dev"; - in - { - personal-blog = { - enable = true; - domain = sstorkDomain; - }; - - forgejo = { - enable = true; - domain = "git.${sstorkDomain}"; - doBackups = true; - }; - - outline = { - enable = true; - domain = "wiki.${sproutedDomain}"; - doBackups = true; - }; - - it-tools = { - enable = true; - domain = "it-tools.${sproutedDomain}"; - }; - - networking-toolbox = { - enable = true; - domain = "net-tools.${sproutedDomain}"; - }; - - privatebin = { - enable = true; - domain = "pastebin.${sproutedDomain}"; - branding.name = "SproutedBin"; - }; - - screego = { - enable = true; - domain = "mirror.${sproutedDomain}"; - }; - }; }; + + services.public-nameserver = { + enable = true; + publicHostName = "ns2"; + zones = [ + "sprouted.cloud" + "sstork.dev" + ]; + }; + + web-services = { + personal-blog = { + enable = true; + domain = "sstork.dev"; + }; + + forgejo = { + enable = true; + domain = "git.sstork.dev"; + doBackups = true; + }; + + outline = { + enable = true; + domain = "wiki.sprouted.cloud"; + doBackups = true; + }; + + it-tools = { + enable = true; + domain = "it-tools.sprouted.cloud"; + }; + + networking-toolbox = { + enable = true; + domain = "net-tools.sprouted.cloud"; + }; + + privatebin = { + enable = true; + domain = "pastebin.sprouted.cloud"; + branding.name = "SproutedBin"; + }; + + screego = { + enable = true; + domain = "mirror.sprouted.cloud"; + }; + }; + }; } diff --git a/modules/home/desktop/hyprland/classic.nix b/modules/home/desktop/hyprland/classic.nix index f81c72b..041da33 100644 --- a/modules/home/desktop/hyprland/classic.nix +++ b/modules/home/desktop/hyprland/classic.nix @@ -18,8 +18,11 @@ services = { wpaperd.enable = true; - hypridle.enable = true; cliphist.enable = true; + hypridle = { + enable = true; + lockCommand = "pidof hyprlock || hyprlock"; + }; }; }; diff --git a/modules/home/desktop/hyprland/noctalia.nix b/modules/home/desktop/hyprland/noctalia.nix index 1d47a09..3253eb4 100644 --- a/modules/home/desktop/hyprland/noctalia.nix +++ b/modules/home/desktop/hyprland/noctalia.nix @@ -14,7 +14,13 @@ noctalia-shell.enable = true; }; - services.cliphist.enable = true; + services = { + cliphist.enable = true; + hypridle = { + enable = true; + lockCommand = "noctalia-shell ipc call lockScreen lock"; + }; + }; }; home.packages = [ pkgs.grimblast ]; @@ -35,8 +41,8 @@ bind = SUPER, V, exec, $ipc launcher clipboard # Manage session - bindrl = SUPER CONTROL, L, exec, $ipc lockScreen lock - bindrl = SUPER CONTROL, S, exec, $ipc sessionMenu lockAndSuspend + bindrl = SUPER CONTROL, L, exec, loginctl lock-session + bindrl = SUPER CONTROL, S, exec, systemctl sleep ''; }; } diff --git a/modules/home/programs/noctalia-shell.nix b/modules/home/programs/noctalia-shell.nix index fff1ec1..b3fd274 100644 --- a/modules/home/programs/noctalia-shell.nix +++ b/modules/home/programs/noctalia-shell.nix @@ -96,7 +96,7 @@ largeButtonsStyle = false; countdownDuration = 3000; }; - idle.enabled = true; + idle.enabled = false; audio.mprisBlacklist = [ "firefox" ]; network.bluetoothAutoConnect = false; location = { diff --git a/modules/home/services/hypridle.nix b/modules/home/services/hypridle.nix index 8a31c11..bb123c3 100644 --- a/modules/home/services/hypridle.nix +++ b/modules/home/services/hypridle.nix @@ -4,17 +4,26 @@ lib, ... }: +let + cfg = config.custom.services.hypridle; +in { - options.custom.services.hypridle.enable = lib.mkEnableOption ""; + options.custom.services.hypridle = { + enable = lib.mkEnableOption ""; + lockCommand = lib.mkOption { + type = lib.types.nonEmptyStr; + default = ""; + }; + }; - config = lib.mkIf config.custom.services.hypridle.enable { + config = lib.mkIf cfg.enable { services.hypridle = { enable = true; package = pkgs-unstable.hypridle; settings = { general = { - lock_cmd = lib.mkIf config.custom.programs.hyprlock.enable "pidof hyprlock || hyprlock"; + lock_cmd = cfg.lockCommand; before_sleep_cmd = "loginctl lock-session"; after_sleep_cmd = "hyprctl dispatch dpms on"; };