1
0
Fork 0
mirror of https://git.sr.ht/~neverness/ultima synced 2025-01-08 18:33:52 +00:00
ultima/modules/home/themes/stylix/default.nix

98 lines
2.1 KiB
Nix
Raw Normal View History

2024-11-21 09:24:15 +00:00
{ pkgs, lib, config, inputs, True, False, ... }:
with lib;
let
cfg = config.module.themes.stylix;
2024-11-24 08:17:07 +00:00
wal = inputs.design;
2024-11-21 09:24:15 +00:00
in {
options = {
module.themes.stylix = {
enable = mkEnableOption "";
2024-11-24 08:17:07 +00:00
theme = mkOption {
default = null;
type = types.str;
};
2024-11-21 09:24:15 +00:00
image = mkOption {
default = null;
type = types.str;
};
2024-11-27 10:37:54 +00:00
cursor = {
bg = mkOption {
default = null;
type = types.str;
};
ol = mkOption {
default = null;
type = types.str;
};
ac = mkOption {
default = null;
type = types.str;
};
};
2024-11-21 09:24:15 +00:00
};
};
2024-12-05 14:36:13 +00:00
imports = with inputs; [
stylix.homeManagerModules.stylix
../../../colors.nix
];
2024-11-21 09:24:15 +00:00
config = mkIf cfg.enable {
2024-12-05 14:36:13 +00:00
stylix = True // {
autoEnable = false;
image = "${wal}/wallpapers/paradise/${cfg.image}.jpg";
cursor = with inputs.cursors; {
size = 16;
name = "GoogleDot-Custom";
package = packages.${pkgs.system}.google-cursor.override {
background_color = cfg.cursor.bg;
outline_color = cfg.cursor.ol;
accent_color = cfg.cursor.ac;
2024-12-03 14:20:37 +00:00
};
2024-12-05 14:36:13 +00:00
};
fonts = let
font = {
2024-12-06 12:57:22 +00:00
name = "JetBrainsMono Nerd Font";
2024-12-05 14:36:13 +00:00
package = (pkgs.callPackage ../nerdfonts/default.nix {
fonts = [ "JetBrainsMono" ];
});
2024-11-21 09:24:15 +00:00
};
2024-12-05 14:36:13 +00:00
in {
serif = font;
monospace = font;
2024-12-06 12:57:22 +00:00
emoji = font;
2024-12-05 14:36:13 +00:00
sizes = {
desktop = 10;
popups = 10;
applications = 12;
terminal = 12;
2024-11-21 09:24:15 +00:00
};
};
2024-12-05 14:36:13 +00:00
targets = {
# CLI
tmux = True;
fish = True;
nushell = True;
# WM
hyprland = True;
sway = True;
foot = True;
kitty = True;
mako = False;
# TOOLS
nixvim = True;
yazi = True;
fzf = True;
bat = True;
mangohud = True;
# GUI
vesktop = True;
qutebrowser = True;
firefox = True;
gtk = True;
};
};
2024-11-21 09:24:15 +00:00
};
}