stylix.nix
1 { 2 config, 3 pkgs, 4 lib, 5 ... 6 }: 7 with lib; 8 let 9 cfg = config.maatwerk.stylix; 10 in 11 { 12 options.maatwerk.stylix = { 13 enable = mkEnableOption "Automatic styling"; 14 }; 15 config = mkIf cfg.enable { 16 home.packages = with pkgs; [ gnome-font-viewer ]; 17 18 # file:///home/martijn/.config/stylix/palette.html 19 stylix = { 20 enable = true; 21 image = pkgs.fetchurl { 22 url = "https://storage.boers.email/random/wallpaper_optimized.jpg"; 23 hash = "sha256-7tCkOYseY4Oayw+WHxn+fK45BdOjRaELYPp33m9+UYI="; 24 }; 25 polarity = "dark"; 26 icons = { 27 enable = true; 28 package = pkgs.tela-icon-theme; 29 dark = "Tela"; 30 }; 31 cursor = { 32 package = pkgs.phinger-cursors; 33 name = "phinger-cursors-light"; 34 size = 26; 35 }; 36 # https://tinted-theming.github.io/tinted-gallery/ 37 base16Scheme = "${pkgs.base16-schemes}/share/themes/kanagawa-dragon.yaml"; 38 fonts = { 39 serif = { 40 package = pkgs.inter; 41 name = "Inter Display, Light Italic"; 42 }; 43 sansSerif = { 44 package = pkgs.inter; 45 name = "Inter"; 46 }; 47 monospace = { 48 package = pkgs.nerd-fonts.jetbrains-mono; 49 name = "JetbrainsMono Nerd Font"; 50 }; 51 emoji = { 52 package = pkgs.noto-fonts-color-emoji; 53 name = "Noto Color Emoji"; 54 }; 55 sizes = { 56 terminal = 13; 57 popups = 14; 58 }; 59 }; 60 targets = { 61 librewolf = { 62 enable = true; 63 colorTheme.enable = true; 64 profileNames = [ "default" ]; 65 }; 66 waybar.enable = false; 67 nixvim.enable = false; 68 hyprlock.enable = false; 69 }; 70 }; 71 }; 72 }