35 lines
863 B
Nix
35 lines
863 B
Nix
{ lib, pkgs, config, ... }: let
|
|
inherit (lib) mkIf mkEnableOption mkOption types;
|
|
cfg = config.chuj.stuff.dunst;
|
|
user = config.chuj.system.user;
|
|
in {
|
|
options.chuj.stuff.dunst = {
|
|
enable = mkEnableOption "dunst";
|
|
output = mkOption {
|
|
type = types.str;
|
|
default = null;
|
|
};
|
|
side = mkOption {
|
|
type = types.str;
|
|
default = "right";
|
|
};
|
|
};
|
|
|
|
config = mkIf cfg.enable {
|
|
home-manager.users.${user}.services.dunst = {
|
|
enable = true;
|
|
settings = {
|
|
global = {
|
|
monitor = if cfg.output != null then cfg.output else 0;
|
|
origin = "bottom-${cfg.side}";
|
|
frame_width = 1;
|
|
# todo: theme.nix
|
|
background = "#333333";
|
|
foreground = "#feeeee";
|
|
font = "JetBrains Mono NL 10";
|
|
frame_color = "#4c7899";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|