add theme file

This commit is contained in:
lucy 2026-08-31 17:05:14 +02:00
commit 9d32d57869
4 changed files with 64 additions and 5 deletions

19
flake.lock generated
View file

@ -89,7 +89,8 @@
"base16": "base16", "base16": "base16",
"home-manager": "home-manager", "home-manager": "home-manager",
"nixpkgs": "nixpkgs_2", "nixpkgs": "nixpkgs_2",
"tt-schemes": "tt-schemes" "tt-schemes": "tt-schemes",
"tt-terminal": "tt-terminal"
} }
}, },
"tt-schemes": { "tt-schemes": {
@ -107,6 +108,22 @@
"repo": "schemes", "repo": "schemes",
"type": "github" "type": "github"
} }
},
"tt-terminal": {
"flake": false,
"locked": {
"lastModified": 1786840953,
"narHash": "sha256-R5U9KnrG5cARf90nw5e33Z4A4svwLTRv9qbvFAiAaAY=",
"owner": "tinted-theming",
"repo": "tinted-terminal",
"rev": "993a33342b053b1830e4ccb82448455991dcfd54",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "tinted-terminal",
"type": "github"
}
} }
}, },
"root": "root", "root": "root",

View file

@ -28,8 +28,10 @@
nixosConfigurations.nerv = nixpkgs.lib.nixosSystem { nixosConfigurations.nerv = nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs; }; specialArgs = { inherit inputs; };
modules = [ modules = [
./theme.nix
{ config.theming.theme = "catppuccin-mocha"; }
base16.nixosModule base16.nixosModule
{ scheme = "${inputs.tt-schemes}/base16/${theme}.yaml"; } ({ config, ... }: { scheme = "${config.theming.theme}"; })
./modules/hosts/nerv/configuration.nix ./modules/hosts/nerv/configuration.nix
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager
{ {
@ -37,9 +39,10 @@
home-manager.useUserPackages = true; home-manager.useUserPackages = true;
home-manager.extraSpecialArgs = { inherit inputs; }; home-manager.extraSpecialArgs = { inherit inputs; };
imports = [ imports = [
./modules/home.nix
./modules/programs/emacs.nix ./modules/programs/emacs.nix
./modules/programs/niri.nix ./modules/programs/niri.nix
./modules/home.nix ./modules/programs/foot.nix
]; ];
} }
]; ];

View file

@ -4,13 +4,40 @@
inputs, inputs,
... ...
}: }:
let
c = config.scheme;
in
{ {
home-manager.users.lucy.programs.foot = { home-manager.users.lucy.programs.foot = {
enable = true; enable = true;
settings = { settings = {
} colors-dark = {
++ builtins.readFile (config.scheme inputs.tt-terminal); background = c.base00;
foreground = c.base05;
regular0 = c.base00;
regular1 = c.base08;
regular2 = c.base0B;
regular3 = c.base0A;
regular4 = c.base0D;
regular5 = c.base0E;
regular6 = c.base0C;
regular7 = c.base05;
bright0 = c.base03;
bright1 = c.base08;
bright2 = c.base0B;
bright3 = c.base0A;
bright4 = c.base0D;
bright5 = c.base0E;
bright6 = c.base0C;
bright7 = c.base07;
selection-foreground = c.base00;
selection-background = c.base05;
};
};
}; };
} }

12
theme.nix Normal file
View file

@ -0,0 +1,12 @@
{ lib, inputs}: {
options.theming.theme = lib.mkOption {
type = lib.types.str;
apply = name: "${inputs.tt-schemes}/base16/${name}";
};
options.theming.font = lib.mkOption {
type = lib.types.str;
};
options.theming.fontPackage = lib.mkOption {
type = lib.types.pkgs;
};
}