From ee222f27b88f981e9b20a6ccccf663686372b66b Mon Sep 17 00:00:00 2001 From: Quinn Unger Date: Thu, 1 Oct 2026 14:55:38 +0100 Subject: [PATCH] update noctalia config --- common/hm/noctalia/noctalia.nix | 176 ++++++++++++++++++-------------- 1 file changed, 102 insertions(+), 74 deletions(-) diff --git a/common/hm/noctalia/noctalia.nix b/common/hm/noctalia/noctalia.nix index 86915df..c1d7c59 100644 --- a/common/hm/noctalia/noctalia.nix +++ b/common/hm/noctalia/noctalia.nix @@ -15,82 +15,110 @@ lib.mkIf (cfg.desktop.enable && (cfg.desktop.shell == "noctalia")) { enable = true; package = unstable.noctalia; systemd.enable = lib.mkDefault true; - settings = { - weather = lib.mapAttrs (n: v: lib.mkDefault v) { - enabled = cfg.geolocation.enable; - unit = "celsius"; - }; - location = lib.mapAttrs (n: v: lib.mkDefault v) { - auto_locate = cfg.geolocation.enable; - }; - shell = lib.mapAttrs (n: v: lib.mkDefault v) { - offline_mode = false; - launch_apps_as_systemd_services = true; - telemetry_enabled = false; - polkit_agent = true; - animation.enabled = (!cfg.legacyGpu); - panel.transparency_mode = if cfg.legacyGpu then "solid" else "soft"; # solid | soft | glass - font_family = "monospace"; - shadow = false; - }; - notification = lib.mapAttrs (n: v: lib.mkDefault v) { - enable_daemon = true; - background_opacity = opacity; - }; - brightness.enable_ddcutil = lib.mkDefault true; - wallpaper = { - enabled = lib.mkDefault true; - fill_mode = lib.mkDefault "crop"; - transition = [ "fade" ]; - directory = lib.mkDefault "${config.home.homeDirectory}/Pictures/Wallpapers"; - automation = lib.mapAttrs (n: v: lib.mkDefault v) { - enabled = true; - order = "random"; - interval_seconds = 15 * 60; + settings = lib.mkMerge [ + (lib.mkIf cfg.legacyGpu { + shell = { + panel.transparency_mode = lib.mkDefault "solid"; # solid | soft | glass + animation.enabled = lib.mkDefault false; }; - }; - backdrop.enabled = lib.mkDefault (!cfg.legacyGpu); - dock = lib.mapAttrs (n: v: lib.mkDefault v) { - enabled = false; - shadow = false; - }; - widget.control-center = { - custom_image = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; - custom_image_colorize = true; - }; - bar = { - order = [ "main" ]; - main = lib.mapAttrs (n: v: lib.mkDefault v) { + backdrop = { + enabled = lib.mkDefault false; + blur_intensity = lib.mkDefault 0.0; + }; + lockscreen.blur_intensity = lib.mkDefault 0.0; + bar.main.background_opacity = lib.mkDefault 1.0; + dock.background_opacity = lib.mkDefault 1.0; + notification.background_opacity = lib.mkDefault 1.0; + osd.background_opacity = lib.mkDefault 1.0; + }) + (lib.mkIf (!cfg.legacyGpu) { + shell = { + panel.transparency_mode = lib.mkDefault "soft"; # solid | soft | glass + animation.enabled = lib.mkDefault true; + }; + backdrop.enabled = lib.mkDefault true; + bar.main.background_opacity = lib.mkDefault opacity; + dock.background_opacity = lib.mkDefault opacity; + notification.background_opacity = lib.mkDefault opacity; + osd.background_opacity = lib.mkDefault opacity; + }) + + { + weather = lib.mapAttrs (n: v: lib.mkDefault v) { + enabled = cfg.geolocation.enable; + unit = "celsius"; + }; + location = lib.mapAttrs (n: v: lib.mkDefault v) { + auto_locate = cfg.geolocation.enable; + }; + shell = lib.mapAttrs (n: v: lib.mkDefault v) { + offline_mode = false; + launch_apps_as_systemd_services = true; + telemetry_enabled = false; + polkit_agent = true; + font_family = "monospace"; + shadow.alpha = 0.0; + }; + notification = lib.mapAttrs (n: v: lib.mkDefault v) { + enable_daemon = true; + }; + brightness.enable_ddcutil = lib.mkDefault true; + wallpaper = { + enabled = lib.mkDefault true; + fill_mode = lib.mkDefault "crop"; + transition = [ "fade" ]; + directory = lib.mkDefault "${config.home.homeDirectory}/Pictures/Wallpapers"; + automation = lib.mapAttrs (n: v: lib.mkDefault v) { + enabled = true; + order = "random"; + interval_seconds = 15 * 60; + }; + }; + dock = lib.mapAttrs (n: v: lib.mkDefault v) { + enabled = false; shadow = false; - position = "top"; - enabled = true; - auto_hide = false; - reserve_space = true; - background_opacity = opacity; - margin_ends = 16; - margin_edge = 8; - widget_spacing = 8; - capsule = true; - start = [ - "control-center" - "notifications" - "clock" - "taskbar" - ]; - center = [ - "active_window" - ]; - end = [ - "volume" - "network" - "bluetooth" - "brightness" - "battery" - "tray" - "keyboard_layout" - ]; }; - }; - }; + widget.control-center = { + custom_image = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; + custom_image_colorize = true; + }; + lockscreen = { + transition = [ "zoom" ]; + transition_duration = 500; # milliseconds + }; + bar = { + order = [ "main" ]; + main = lib.mapAttrs (n: v: lib.mkDefault v) { + shadow = false; + position = "top"; + enabled = true; + auto_hide = false; + reserve_space = true; + margin_ends = 16; + margin_edge = 8; + widget_spacing = 8; + capsule = true; + start = [ + "control-center" + "notifications" + "clock" + "taskbar" + ]; + center = [ + "active_window" + ]; + end = [ + "volume" + "network" + "bluetooth" + "brightness" + "battery" + "tray" + "keyboard_layout" + ]; + }; + }; + } + ]; }; } -- 2.51.2