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:
parent
22dbb128c0
commit
319c25098c
9 changed files with 114 additions and 30 deletions
|
@ -40,6 +40,12 @@ opt.linebreak = true
|
|||
opt.wrap = true
|
||||
|
||||
-- Colors
|
||||
require("tokyonight").setup({
|
||||
transparent = true,
|
||||
styles = {
|
||||
floats = "transparent"
|
||||
}
|
||||
})
|
||||
vim.cmd("colorscheme tokyonight")
|
||||
vim.cmd("hi Comment guifg=#e69dc5")
|
||||
vim.cmd("hi Linenr guifg=#a672f3")
|
||||
|
|
|
@ -29,6 +29,8 @@ line-color=00000000
|
|||
separator-color=00000000
|
||||
key-hl-color=c6a0f6
|
||||
|
||||
bs-hl-color=ed8796
|
||||
|
||||
## Inside Colors ##
|
||||
|
||||
inside-color=00000088
|
||||
|
|
19
config/zshrc
19
config/zshrc
|
@ -7,10 +7,6 @@ unsetopt autocd beep notify
|
|||
unsetopt PROMPT_SP
|
||||
bindkey -v
|
||||
# End of lines configured by zsh-newuser-install
|
||||
export XDG_CONFIG_HOME="$HOME/.config"
|
||||
export XDG_CACHE_HOME="$HOME/.cache"
|
||||
export XDG_DATA_HOME="$HOME/.local/share"
|
||||
export XDG_STATE_HOME="$HOME/.local/state"
|
||||
|
||||
# Aliases
|
||||
alias c='clear'
|
||||
|
@ -19,7 +15,6 @@ alias find="fd"
|
|||
alias gdb="gdb -x /usr/share/pwndbg/gdbinit.py" #pwntools for GDB
|
||||
alias ghidra="_JAVA_AWT_WM_NONREPARENTING=1 ghidra"
|
||||
alias icat="kitty +kitten icat"
|
||||
alias imv="imv -b aa77bb"
|
||||
alias kon="ncmpcpp -b ~/.config/ncmpcpp/bindings"
|
||||
alias l='ls -l'
|
||||
alias la='ls -la'
|
||||
|
@ -95,24 +90,14 @@ compinit
|
|||
# End of lines added by compinstall
|
||||
eval "$(zoxide init zsh)"
|
||||
|
||||
# Needed for pam_gnupg for ssh keys TO DO
|
||||
#export SSH_AUTH_SOCK=$(gpgconf --list-dirs agent-ssh-socket)
|
||||
export PATH="${PATH}:/home/flyingstitchman/.cargo/bin"
|
||||
|
||||
# Clean Up
|
||||
export QT_QPA_PLATFORM=wayland
|
||||
export QT_QPA_PLATFORMTHEME=qt5ct
|
||||
# Fuck Gnome Devs, All my homies Hate Gnome Devs
|
||||
#export GDK_DEBUG=1
|
||||
export MBSYNCRC=${XDG_CONFIG_HOME:-~/.config}/mbsync/config
|
||||
export PASSWORD_STORE_DIR=${XDG_CONFIG_HOME:-~/.config}/password_store
|
||||
export NOTMUCH_CONFIG=${XDG_CONFIG_HOME-~/.config}/notmuch/config
|
||||
export XAUTHORITY="$XDG_RUNTIME_DIR"/Xauthority
|
||||
export KDEHOME="$XDG_CONFIG_HOME"/kde
|
||||
export GRADLE_USER_HOME="$XDG_DATA_HOME"/gradle
|
||||
export GNUPGHOME=${XDG_DATA_HOME-~/.config}/gnupg
|
||||
export GPG_TTY=$(tty)
|
||||
export SDL_VIDEODRIVER=wayland
|
||||
export GOPATH="$XDG_DATA_HOME"
|
||||
export GOMODCACHE="$XDG_CACHE_HOME"
|
||||
export NUGET_PACKAGES="$XDG_CACHE_HOME"/NuGetPackages
|
||||
|
@ -122,7 +107,6 @@ export DOTNET_CLI_HOME="$XDG_CONFIG_HOME"/dotnet
|
|||
export RUSTUP_HOME="$XDG_DATA_HOME"/rustup
|
||||
export CARGO_HOME="$XDG_DATA_HOME"/cargo
|
||||
|
||||
|
||||
alias dosbox="dosbox -conf $XDG_CONFIG_HOME/dosbox/dosbox.conf"
|
||||
|
||||
# Nixos Rebuilding
|
||||
|
@ -142,3 +126,6 @@ export QSYS_ROOTDIR="~/.cache/paru/clone/quartus-free/pkg/quartus-free-quartus/o
|
|||
|
||||
# Nix Direnv Support
|
||||
eval "$(direnv hook zsh)"
|
||||
|
||||
# Home Manager Variables
|
||||
source ~/.local/state/nix/profiles/home-manager/home-path/etc/profile.d/hm-session-vars.sh
|
||||
|
|
45
flake.lock
45
flake.lock
|
@ -1,5 +1,23 @@
|
|||
{
|
||||
"nodes": {
|
||||
"catppuccin": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1742254251,
|
||||
"narHash": "sha256-3wGCx5UR86pgurSYB//LsBMKAsw6qpiOpnzgShPQKkM=",
|
||||
"owner": "catppuccin",
|
||||
"repo": "nix",
|
||||
"rev": "4cb9c621072312fb45c6e86b57e5fabd97f1b95d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "catppuccin",
|
||||
"repo": "nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat": {
|
||||
"locked": {
|
||||
"lastModified": 1733328505,
|
||||
|
@ -87,11 +105,11 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1739866667,
|
||||
"narHash": "sha256-EO1ygNKZlsAC9avfcwHkKGMsmipUk1Uc0TbrEZpkn64=",
|
||||
"lastModified": 1741851582,
|
||||
"narHash": "sha256-cPfs8qMccim2RBgtKGF+x9IBCduRvd/N5F4nYpU0TVE=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "73cf49b8ad837ade2de76f87eb53fc85ed5d4680",
|
||||
"rev": "6607cf789e541e7873d40d3a8f7815ea92204f32",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -121,7 +139,7 @@
|
|||
"inputs": {
|
||||
"flake-compat": "flake-compat",
|
||||
"flake-utils": "flake-utils",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"treefmt-nix": "treefmt-nix"
|
||||
},
|
||||
"locked": {
|
||||
|
@ -154,12 +172,29 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1739866667,
|
||||
"narHash": "sha256-EO1ygNKZlsAC9avfcwHkKGMsmipUk1Uc0TbrEZpkn64=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "73cf49b8ad837ade2de76f87eb53fc85ed5d4680",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"catppuccin": "catppuccin",
|
||||
"home-manager": "home-manager",
|
||||
"mobile-nixos": "mobile-nixos",
|
||||
"nixos-hardware": "nixos-hardware",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"nixpkgs-quartus": "nixpkgs-quartus",
|
||||
"nixpkgs-xr": "nixpkgs-xr"
|
||||
}
|
||||
|
|
20
flake.nix
20
flake.nix
|
@ -1,6 +1,7 @@
|
|||
{
|
||||
description = "System Configuration Flake";
|
||||
outputs = inputs@{
|
||||
catppuccin,
|
||||
nixpkgs,
|
||||
nixpkgs-xr,
|
||||
nixos-hardware,
|
||||
|
@ -14,6 +15,7 @@
|
|||
system = "x86_64-linux";
|
||||
specialArgs = { inherit inputs; };
|
||||
modules = [
|
||||
catppuccin.nixosModules.catppuccin
|
||||
|
||||
./hosts/malachite/default.nix
|
||||
./users/stitchynyan/default.nix
|
||||
|
@ -24,7 +26,13 @@
|
|||
home-manager.extraSpecialArgs = {inherit inputs;};
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.users.stitchynyan = import ./users/stitchynyan/home.nix;
|
||||
home-manager.users.stitchynyan = {
|
||||
imports = [
|
||||
catppuccin.homeManagerModules.catppuccin
|
||||
./users/stitchynyan/home.nix
|
||||
./users/home.nix
|
||||
];
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
|
@ -32,6 +40,7 @@
|
|||
system = "x86_64-linux";
|
||||
specialArgs = { inherit inputs; };
|
||||
modules = [
|
||||
catppuccin.nixosModules.catppuccin
|
||||
nixos-hardware.nixosModules.framework-12th-gen-intel
|
||||
|
||||
./hosts/lappy/default.nix
|
||||
|
@ -42,7 +51,13 @@
|
|||
home-manager.extraSpecialArgs = {inherit inputs;};
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.users.stitchynyan = import ./users/stitchynyan/home.nix;
|
||||
home-manager.users.stitchynyan = {
|
||||
imports = [
|
||||
catppuccin.homeManagerModules.catppuccin
|
||||
./users/stitchynyan/home.nix
|
||||
./users/home.nix
|
||||
];
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
|
@ -86,6 +101,7 @@
|
|||
};
|
||||
|
||||
inputs = {
|
||||
catppuccin.url = "github:catppuccin/nix";
|
||||
home-manager = {
|
||||
url = "github:nix-community/home-manager/master";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
|
|
@ -56,7 +56,6 @@ in
|
|||
config = {
|
||||
environment.systemPackages = (lib.attrVals [
|
||||
"black"
|
||||
"btop"
|
||||
"clang-tools"
|
||||
"eza"
|
||||
"fd"
|
||||
|
@ -67,7 +66,6 @@ in
|
|||
"gnumake"
|
||||
"gnupg"
|
||||
"hugo"
|
||||
"lazygit"
|
||||
"mypy"
|
||||
"neofetch"
|
||||
"nixd"
|
||||
|
|
36
users/home.nix
Normal file
36
users/home.nix
Normal 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;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
|
@ -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
|
||||
|
|
|
@ -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" ];
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue