{ pkgs, config, lib, ... }: with lib; let cfg = config.eboskma.programs.dunst; in { options.eboskma.programs.dunst = { enable = mkEnableOption "activate dunst"; }; config = mkIf (cfg.enable) { services.dunst = { enable = true; iconTheme = { name = "Papirus-Dark"; package = pkgs.papirus-icon-theme; size = "symbolic"; }; settings = { global = { follow = "mouse"; width = "(10, 500)"; height = 200; origin = "top-right"; offset = "25x25"; indicate_hidden = "yes"; shrink = false; transparency = 15; notification_limit = 0; separator_height = 1; padding = 15; horizontal_padding = 20; frame_width = 0; frame_color = "#282a36"; separator_color = "frame"; sort = "yes"; idle_threshold = 120; font = "Meslo Nerd Font 10"; line_height = 0; markup = "full"; format = "%s %p\\n%b"; alignment = "left"; vertical_alignment = "center"; show_age_threshold = 60; word_wrap = "yes"; ellipsize = "middle"; ignore_newline = "no"; stack_duplicates = true; hide_duplicate_count = false; show_indicators = "yes"; icon_position = "left"; min_icon_size = 64; max_icon_size = 64; sticky_history = "yes"; history_length = 20; corner_radius = 5; }; experimental = { per_monitor_dpi = false; }; urgency_low = { background = "#282a36"; foreground = "#6272a4"; timeout = 3; }; urgency_normal = { background = "#282a36"; foreground = "#bd93f9"; timeout = 3; }; urgency_high = { background = "#ff5555"; foreground = "#f8f8f2"; timeout = 0; }; }; }; }; }