feat(themeing): Major refactor themeing for whole computer

Adds catppuccin nix flake for themeing lots of programs easily. This
enables proper themeing for:
* zathura
* imv
* fcitx (declarative settings)
* lazygit
* btop
* gtk

It also pulls in the home-manager sessionVars which is necessary to
theme applications.

The session vars change also reduces the number of env-vars that need to
be set in the zshrc due to them being set declaratively elsewhere.
This commit is contained in:
stitchy 2025-03-21 10:43:34 +00:00
parent 22dbb128c0
commit 319c25098c
Signed by: stitchy
SSH key fingerprint: SHA256:yz2SoxdnY67tfY5Jzb0f2v8f5W3o/IF359kbcquWip8
9 changed files with 114 additions and 30 deletions

36
users/home.nix Normal file
View file

@ -0,0 +1,36 @@
{
... }:
let
in {
catppuccin = {
enable = true;
flavor = "macchiato";
fcitx5.enable = false;
gtk.enable = true;
kvantum.enable = false;
};
qt = {
enable = true;
platformTheme.name = "qtct";
};
programs = {
btop = {
enable = true;
settings = {
theme_background = false;
};
};
imv.enable = true;
lazygit.enable = true;
wlogout.enable = true;
zathura = {
enable = true;
options = {
recolor-keephue = true;
};
};
};
}

View file

@ -70,6 +70,14 @@
type = "fcitx5";
fcitx5 = {
waylandFrontend = true;
settings.addons = {
classicui.globalSection = {
Theme = "FluentLight";
DarkTheme = "FluentDark";
UseDarkTheme = "True";
UseAccentColor = "True";
};
};
addons = with pkgs; [
fcitx5-mozc
fcitx5-fluent

View file

@ -19,7 +19,6 @@ let
"grim"
"hunspell"
"hyprpaper"
"imv"
"isync"
"kitty"
"libreoffice"
@ -44,9 +43,7 @@ let
"swayidle"
"swaylock-effects"
"tofi"
"wlogout"
"wofi"
"zathura"
] pkgs ++ [ pkgs.hunspellDicts.en_US ];
in
{
@ -77,7 +74,6 @@ in
# To-Do Later
home.sessionVariables = {
FOO = "BAR";
};
home.file = {
@ -159,7 +155,7 @@ in
Unit.Description = "Syncs email";
Timer = {
OnBootSec = "1min";
OnUnitActiveSec = "10min";
OnUnitActiveSec = "10min";
};
Install.WantedBy = [ "timers.target" ];
};