rose-pine-nix/modules/home-manager/hyprland.nix

32 lines
1,007 B
Nix
Raw Normal View History

2024-05-21 14:53:46 -07:00
{ config, lib, ... }:
let
inherit (config.catppuccin) sources pointerCursor;
cfg = config.wayland.windowManager.hyprland.catppuccin;
enable = cfg.enable && config.wayland.windowManager.hyprland.enable;
in
{
options.wayland.windowManager.hyprland.catppuccin =
lib.ctp.mkCatppuccinOpt { name = "hyprland"; }
// {
accent = lib.ctp.mkAccentOpt "hyprland";
};
config = lib.mkIf enable {
home.sessionVariables = lib.mkIf pointerCursor.enable {
HYPRCURSOR_SIZE = config.home.pointerCursor.size;
HYPRCURSOR_THEME = "catppuccin-${pointerCursor.flavor}-${pointerCursor.accent}-cursors";
};
wayland.windowManager.hyprland.settings = {
source = [
"${sources.hyprland}/themes/${cfg.flavor}.conf"
# Define accents in file to ensure they appear before user vars
(builtins.toFile "hyprland-${cfg.accent}-accent.conf" ''
$accent = ''$${cfg.accent}
$accentAlpha = ''$${cfg.accent}Alpha
'')
];
};
};
}