feat(dunst): Catppuccin -> Rose Pine

This commit is contained in:
punkfairie 2024-10-19 19:37:03 -07:00
parent 2841326f0a
commit db4860d283
Signed by: punkfairie
GPG key ID: 01823C057725C266
2 changed files with 40 additions and 20 deletions

View file

@ -360,6 +360,18 @@
"url": "https://github.com/catppuccin/rofi/archive/b636a00fd40a7899a8206195464ae8b7f0450a6d.tar.gz",
"hash": "1a1sr451nsfii70j2f5qf8wq4jns0d4477a2kzh3993xdnx1j3yc"
},
"rose-pine-dunst": {
"type": "Git",
"repository": {
"type": "GitHub",
"owner": "d2718nis",
"repo": "rose-pine-dunst"
},
"branch": "main",
"revision": "496499eaed38a07ce4f79ec91baaf6e1e4c28bc5",
"url": "https://github.com/d2718nis/rose-pine-dunst/archive/496499eaed38a07ce4f79ec91baaf6e1e4c28bc5.tar.gz",
"hash": "0x7cqbcn7zygab9xbmbarz06wxkj3wxxffwmka33ljhm8gk3x0ay"
},
"skim": {
"type": "Git",
"repository": {

View file

@ -1,26 +1,34 @@
{ config, lib, ... }:
let
inherit (config.catppuccin) sources;
cfg = config.services.dunst.catppuccin;
enable = cfg.enable && config.services.dunst.enable;
in
{
options.services.dunst.catppuccin = lib.ctp.mkCatppuccinOpt { name = "dunst"; } // {
prefix = lib.mkOption {
type = lib.types.str;
default = "00";
description = "Prefix to use for the dunst drop-in file";
config,
lib,
...
}: let
inherit (config.rose-pine) sources;
cfg = config.services.dunst.rose-pine;
enable = cfg.enable && config.services.dunst.enable;
themeName =
if (cfg.flavor == "main")
then "rose-pine"
else "rose-pine-${cfg.flavor}";
in {
options.services.dunst.rose-pine =
lib.rp.mkRosePineOpt {name = "dunst";}
// {
prefix = lib.mkOption {
type = lib.types.str;
default = "00";
description = "Prefix to use for the dunst drop-in file";
};
};
};
# Dunst currently has no "include" functionality, but has "drop-ins"
# Unfortunately, this may cause inconvenience as it overrides ~/.config/dunst/dunstrc
# but it can be overridden by another drop-in.
# Dunst currently has no "include" functionality, but has "drop-ins".
# Unfortunately, this may cause inconvenience as it overrides
# ~/.config/dunst/dunstrc but it can be overridden by another drop-in.
config.xdg.configFile = lib.mkIf enable {
# Using a prefix like this is necessary because drop-ins' precedence depends on lexical order
# such that later drop-ins override earlier ones
# This way, users have better control over precedence
"dunst/dunstrc.d/${cfg.prefix}-catppuccin.conf".source =
sources.dunst + "/themes/${cfg.flavor}.conf";
# Using a prefix like this is necessary because drop-ins' precedence depends
# on lexical order such that later drop-ins override earlier ones.
# This way, users have better control over precedence.
"dunst/dunstrc.d/${cfg.prefix}-rose-pine.conf".source =
sources.dunst + "/${themeName}.conf";
};
}