Files
nix/users/blake/dots/desktop/cursor/default.nix

61 lines
1.4 KiB
Nix

{
pkgs,
lib,
config,
...
}: let
program = "cursor";
cfg = config.dots.${program};
home_dir = config.home.homeDirectory;
in {
options.dots.${program} = {
enable = lib.mkEnableOption "enables ${program}";
cursor = lib.mkOption {
type = lib.types.str;
default = "Posy_Cursor_Black";
description = "cursor to use";
};
size = lib.mkOption {
type = lib.types.int;
default = 64;
description = "cursor size to use";
};
};
config = lib.mkIf cfg.enable {
# shelving for now lmao
# xdg.dataFile."icons/posy_dark" = {
# #config.lib.file.mkOutOfStoreSymlink
# source = "${home_dir}/.nix/users/blake/assets/icons/cursors/posy_dark";
# recursive = true;
# };
# xdg.dataFile."icons/posy_dark_hypr" = {
# source = "${home_dir}/.nix/users/blake/assets/icons/cursors/posy_dark_hypr";
# recursive = true;
# };
home.sessionVariables = {
XCURSOR_SIZE = cfg.size;
XCURSOR_THEME = cfg.cursor;
HYPRCURSOR_SIZE = cfg.size;
HYPRCURSOR_THEME = cfg.cursor;
};
home.pointerCursor = {
dotIcons.enable = false;
enable = true;
gtk.enable = true;
x11.enable = true;
package = pkgs.posy-cursors;
name = cfg.cursor;
size = 64;
hyprcursor = {
enable = true;
size = 64;
};
};
};
}