{ config, lib, ... }: { services.dunst = { enable = true; # I don't want to use the rose-pine icons; also don't want to deal with the # drop-in weirdness. rose-pine.enable = false; settings = lib.mkMerge [ ### Rose Pine ### # TODO: Set this conditionally based on current theme. { global = { width = 400; offset = "20x60"; progress_bar_min_width = 380; progress_bar_max_width = 380; progress_bar_corner_radius = 2; padding = 10; horizontal_padding = 10; frame_width = 1; gap_size = 3; corner_radius = 2; background = "#26233a"; foreground = "#e0def4"; }; urgency_low = { background = "#26273d"; highlight = "#31748f"; frame_color = "#31748f"; default_icon = "dialog-information"; format = "%s\\n%b"; }; urgency_normal = { background = "#362e3c"; highlight = "#f6c177"; frame_color = "#f6c177"; default_icon = "dialog-warning"; format = "%s\\n%b"; }; urgency_critical = { background = "#35263d"; highlight = "#eb6f92"; frame_color = "#eb6f92"; default_icon = "dialog-error"; format = "%s\\n%b"; }; } ### Custom ### { global = { monitor = 0; sort = "yes"; idle_threshold = 120; font = (builtins.head config.fonts.fontconfig.defaultFonts.monospace) + " 10"; markup = "full"; show_age_threshold = 60; word_wrap = "yes"; ignore_newline = "no"; stack_duplicates = true; hide_duplicate_count = false; show_indicators = "yes"; sticky_history = "yes"; history_length = 20; browser = "/usr/bin/zen-browser --new-tab"; always_run_script = true; title = "Dunst"; class = "Dunst"; mouse_left_click = "do_action"; mouse_middle_click = "close_current"; mouse_right_click = "close_all"; }; signed_on = { appname = "Pidgin"; summary = "*signed on*"; urgency = "low"; }; signed_off = { appname = "Pidgin"; summary = "*signed off*"; urgency = "low"; }; says = { appname = "Pidgin"; summary = "*says*"; urgency = "critical"; }; } ]; }; }