mirror of
https://gitlab.com/upRootNutrition/dotfiles.git
synced 2025-06-16 18:15:13 -05:00
feat: added themes and other stuff
This commit is contained in:
parent
951928150e
commit
c7b32f0f31
18 changed files with 248 additions and 61 deletions
|
@ -8,6 +8,9 @@
|
|||
listType = lib.mkOption {
|
||||
type = lib.types.listOf lib.types.str;
|
||||
};
|
||||
attrList = lib.mkOption {
|
||||
type = lib.types.attrsOf lib.types.str;
|
||||
};
|
||||
|
||||
numOptions = 20;
|
||||
|
||||
|
@ -83,6 +86,13 @@
|
|||
// genOptions mountConfig "samba"
|
||||
// genOptions mountConfig "storage";
|
||||
};
|
||||
|
||||
themesSubmodule = lib.types.submodule {
|
||||
options = {
|
||||
colors = attrList;
|
||||
font = stringType;
|
||||
};
|
||||
};
|
||||
in {
|
||||
options = {
|
||||
services = lib.mkOption {
|
||||
|
@ -122,11 +132,23 @@ in {
|
|||
};
|
||||
};
|
||||
};
|
||||
aesthetics = lib.mkOption {
|
||||
type = lib.types.submodule {
|
||||
options =
|
||||
mkOptionsFromDir ./themes/config
|
||||
// {
|
||||
themes = lib.mkOption {
|
||||
type = lib.types.attrsOf themesSubmodule;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
people = import ./users;
|
||||
services = import ./instances;
|
||||
machines = import ./devices;
|
||||
aesthetics = import ./themes;
|
||||
};
|
||||
}
|
||||
|
|
31
config/themes/config/theme.nix
Executable file
31
config/themes/config/theme.nix
Executable file
|
@ -0,0 +1,31 @@
|
|||
{themeFunctions}: {
|
||||
colors = {
|
||||
rosewater = "f4dbd6";
|
||||
flamingo = "f0c6c6";
|
||||
pink = "f5bde6";
|
||||
mauve = "c6a0f6";
|
||||
red = "ed8796";
|
||||
maroon = "ee99a0";
|
||||
peach = "f5a97f";
|
||||
yellow = "eed49f";
|
||||
green = "a6da95";
|
||||
teal = "8bd5ca";
|
||||
sky = "91d7e3";
|
||||
sapphire = "7dc4e4";
|
||||
blue = "8aadf4";
|
||||
lavender = "b7bdf8";
|
||||
text = "cad3f5";
|
||||
subtext1 = "b8c0e0";
|
||||
subtext0 = "a5adcb";
|
||||
overlay2 = "939ab7";
|
||||
overlay1 = "8087a2";
|
||||
overlay0 = "6e738d";
|
||||
surface2 = "5b6078";
|
||||
surface1 = "494d64";
|
||||
surface0 = "363a4f";
|
||||
base = "24273a";
|
||||
mantle = "1e2030";
|
||||
crust = "181926";
|
||||
};
|
||||
font = "MonaspiceRn Nerd Font";
|
||||
}
|
17
config/themes/default.nix
Executable file
17
config/themes/default.nix
Executable file
|
@ -0,0 +1,17 @@
|
|||
let
|
||||
configPath = ./config;
|
||||
|
||||
themeFunctions = {
|
||||
dummy = [];
|
||||
};
|
||||
|
||||
themes = builtins.listToAttrs (map (name: {
|
||||
name = builtins.substring 0 (builtins.stringLength name - 4) name;
|
||||
value = import (configPath + "/${name}") {inherit themeFunctions;};
|
||||
})
|
||||
(builtins.filter (name:
|
||||
builtins.match ".*\\.nix$" name != null) (builtins.attrNames
|
||||
(builtins.readDir configPath))));
|
||||
in {
|
||||
themes = themes;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue