72 lines
1.7 KiB
Nix
72 lines
1.7 KiB
Nix
{ config, pkgs, lib, ... }:
|
|
|
|
let
|
|
# Opinionated: Nord Base16 scheme (YAML). Swap this for Catppuccin, Gruvbox, etc.
|
|
nordYaml = pkgs.fetchurl {
|
|
url = "https://raw.githubusercontent.com/tinted-theming/base16-schemes/master/nord.yaml";
|
|
sha256 = lib.fakeSha256; # replace with real hash after first build
|
|
};
|
|
in
|
|
{
|
|
stylix = {
|
|
enable = true;
|
|
|
|
# Wallpaper applied broadly (Sway, etc.)
|
|
image = pkgs.fetchurl {
|
|
url = "https://images.unsplash.com/photo-1441974231531-c6227db76b6e?auto=format&fit=crop&w=2400&q=80";
|
|
sha256 = lib.fakeSha256; # replace with real hash after first build
|
|
};
|
|
|
|
base16Scheme = nordYaml;
|
|
|
|
# Choose light/dark behavior
|
|
polarity = "dark";
|
|
|
|
fonts = {
|
|
monospace = {
|
|
package = pkgs.jetbrains-mono;
|
|
name = "JetBrains Mono";
|
|
};
|
|
sansSerif = {
|
|
package = pkgs.inter;
|
|
name = "Inter";
|
|
};
|
|
serif = {
|
|
package = pkgs.source-serif;
|
|
name = "Source Serif 4";
|
|
};
|
|
emoji = {
|
|
package = pkgs.noto-fonts-emoji;
|
|
name = "Noto Color Emoji";
|
|
};
|
|
|
|
sizes = {
|
|
applications = 11;
|
|
terminal = 12;
|
|
desktop = 11;
|
|
popups = 11;
|
|
};
|
|
};
|
|
|
|
cursor = {
|
|
package = pkgs.bibata-cursors;
|
|
name = "Bibata-Modern-Ice";
|
|
size = 24;
|
|
};
|
|
|
|
# Optional: global opacity hints some targets use
|
|
opacity = {
|
|
applications = 0.95;
|
|
terminal = 0.92;
|
|
popups = 0.95;
|
|
};
|
|
|
|
# Tell Stylix to actually theme these:
|
|
targets.sway.enable = true;
|
|
targets.waybar.enable = true;
|
|
|
|
# Usually nice to have:
|
|
targets.gtk.enable = true;
|
|
targets.kitty.enable = true; # if you use kitty
|
|
};
|
|
}
|