113 lines
2.5 KiB
Nix
113 lines
2.5 KiB
Nix
{ lib, theme ? "default" }:
|
|
|
|
let
|
|
configs = {
|
|
default = {
|
|
global = {
|
|
background = "#26233a";
|
|
foreground = "#e0def4";
|
|
};
|
|
urgency_low = {
|
|
background = "#26273d";
|
|
highlight = "#31748f";
|
|
};
|
|
urgency_normal = {
|
|
background = "#362e3c";
|
|
highlight = "#f6c177";
|
|
};
|
|
urgency_critical = {
|
|
background = "#362e3c";
|
|
highlight = "#f6c177";
|
|
};
|
|
};
|
|
|
|
moon = {
|
|
global = {
|
|
background = "#393552";
|
|
foreground = "#e0def4";
|
|
};
|
|
urgency_low = {
|
|
background = "#393955";
|
|
highlight = "#3e8fb0";
|
|
};
|
|
urgency_normal = {
|
|
background = "#443c53";
|
|
highlight = "#f6c177";
|
|
};
|
|
urgency_critical = {
|
|
background = "#433754";
|
|
highlight = "#eb6f92";
|
|
};
|
|
};
|
|
|
|
|
|
dawn = {
|
|
global = {
|
|
background = "#f2e9e1";
|
|
foreground = "#393552";
|
|
};
|
|
urgency_low = {
|
|
background = "#e7e0da";
|
|
highlight = "#286983";
|
|
};
|
|
urgency_normal = {
|
|
background = "#3e8fb0";
|
|
highlight = "#ea9d34";
|
|
};
|
|
urgency_critical = {
|
|
background = "#ede0d9";
|
|
highlight = "#b4637a";
|
|
};
|
|
};
|
|
};
|
|
|
|
getConfig = name:
|
|
if name == "moon" then configs.moon
|
|
else if name == "dawn" then configs.dawn
|
|
else configs.default;
|
|
|
|
selectedConfig = getConfig theme;
|
|
in
|
|
{
|
|
global = {
|
|
width = 400;
|
|
offset = "5x5";
|
|
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;
|
|
font = "Monospace 14";
|
|
|
|
icon_theme = "rose-pine-icons";
|
|
enable_recursive_icon_lookup = true;
|
|
corner_radius = 2;
|
|
|
|
inherit (selectedConfig.global) background foreground;
|
|
};
|
|
|
|
urgency_low = rec {
|
|
inherit (selectedConfig.urgency_low) background highlight;
|
|
frame_color = highlight;
|
|
default_icon = "dialog-information";
|
|
format = "<b><span foreground='${highlight}'>%s</span></b>\n%b";
|
|
};
|
|
|
|
urgency_normal = rec {
|
|
inherit (selectedConfig.urgency_normal) background highlight;
|
|
frame_color = highlight;
|
|
default_icon = "dialog-warning";
|
|
format = "<b><span foreground='${highlight}'>%s</span></b>\n%b";
|
|
};
|
|
|
|
urgency_critical = rec {
|
|
inherit (selectedConfig.urgency_critical) background highlight;
|
|
frame_color = highlight;
|
|
default_icon = "dialog-error";
|
|
format = "<b><span foreground='${highlight}'>%s</span></b>\n%b";
|
|
};
|
|
}
|