Update
97
home/themes/config/template.nix
Normal file
@@ -0,0 +1,97 @@
|
||||
{ lib, ... }:
|
||||
with lib; {
|
||||
options.theme = {
|
||||
|
||||
waybar-transparent = mkOption {
|
||||
type = types.bool;
|
||||
description = "Does waybar have a transparent background?";
|
||||
};
|
||||
|
||||
print-neofetch = mkOption {
|
||||
type = types.bool;
|
||||
description = "Does kitty launch neofetch?";
|
||||
};
|
||||
|
||||
wallpaper = mkOption {
|
||||
type = types.str;
|
||||
description = "Name of the wallpaper (from the wallpapers directory)";
|
||||
};
|
||||
|
||||
font = mkOption {
|
||||
type = types.str;
|
||||
description = "Default font";
|
||||
};
|
||||
|
||||
font-mono = mkOption {
|
||||
type = types.str;
|
||||
description = "Default mono font";
|
||||
};
|
||||
|
||||
rounding = mkOption {
|
||||
type = types.int;
|
||||
description = "Borders rounding";
|
||||
};
|
||||
|
||||
gaps-in = mkOption {
|
||||
type = types.int;
|
||||
description = "Gaps in";
|
||||
};
|
||||
|
||||
gaps-out = mkOption {
|
||||
type = types.int;
|
||||
description = "Gaps out";
|
||||
};
|
||||
|
||||
border-size = mkOption {
|
||||
type = types.int;
|
||||
description = "Border size";
|
||||
};
|
||||
|
||||
colors = let
|
||||
mkColorOption = name: {
|
||||
inherit name;
|
||||
value = mkOption {
|
||||
type = types.strMatching "[a-fA-F0-9]{6}";
|
||||
description = "Color ${name}.";
|
||||
};
|
||||
};
|
||||
in listToAttrs (map mkColorOption [
|
||||
"bg"
|
||||
"fg"
|
||||
"alt-bg"
|
||||
"alt-fg"
|
||||
"primary-bg"
|
||||
"primary-fg"
|
||||
"secondary-bg"
|
||||
"secondary-fg"
|
||||
"color0"
|
||||
"color1"
|
||||
"color2"
|
||||
"color3"
|
||||
"color4"
|
||||
"color5"
|
||||
"color6"
|
||||
"color7"
|
||||
"color8"
|
||||
"color9"
|
||||
"color10"
|
||||
"color11"
|
||||
"color12"
|
||||
"color13"
|
||||
"color14"
|
||||
"color15"
|
||||
]) // {
|
||||
primary-ansi-16 = mkOption {
|
||||
type = types.str;
|
||||
description =
|
||||
"Name of the primary color - ansi 16 colors (black, red, green, yellow, blue, magenta, cyan, white, bright-black, bright-red, bright-green, bright-yellow, bright-blue, bright-magenta, bright-cyan, bright-white)";
|
||||
};
|
||||
|
||||
primary-ansi-16-number = mkOption {
|
||||
type = types.int;
|
||||
description = "Set the primary color - ansi 16 colors (0-15)";
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
}
|
||||
39
home/themes/default.nix
Normal file
@@ -0,0 +1,39 @@
|
||||
{ config, ... }: {
|
||||
imports = [ ./nixy.nix ./wallpapers ];
|
||||
config.theme.colors.primary-ansi-16-number =
|
||||
if config.theme.colors.primary-ansi-16 == "black" then
|
||||
0
|
||||
else if config.theme.colors.primary-ansi-16 == "red" then
|
||||
1
|
||||
else if config.theme.colors.primary-ansi-16 == "green" then
|
||||
2
|
||||
else if config.theme.colors.primary-ansi-16 == "yellow" then
|
||||
3
|
||||
else if config.theme.colors.primary-ansi-16 == "blue" then
|
||||
4
|
||||
else if config.theme.colors.primary-ansi-16 == "magenta" then
|
||||
5
|
||||
else if config.theme.colors.primary-ansi-16 == "cyan" then
|
||||
6
|
||||
else if config.theme.colors.primary-ansi-16 == "white" then
|
||||
7
|
||||
else if config.theme.colors.primary-ansi-16 == "bright-white" then
|
||||
8
|
||||
else if config.theme.colors.primary-ansi-16 == "bright-black" then
|
||||
9
|
||||
else if config.theme.colors.primary-ansi-16 == "bright-red" then
|
||||
10
|
||||
else if config.theme.colors.primary-ansi-16 == "bright-green" then
|
||||
11
|
||||
else if config.theme.colors.primary-ansi-16 == "bright-yellow" then
|
||||
12
|
||||
else if config.theme.colors.primary-ansi-16 == "bright-blue" then
|
||||
13
|
||||
else if config.theme.colors.primary-ansi-16 == "bright-magenta" then
|
||||
14
|
||||
else if config.theme.colors.primary-ansi-16 == "bright-cyan" then
|
||||
15
|
||||
else
|
||||
0;
|
||||
|
||||
}
|
||||
44
home/themes/nixy.nix
Normal file
@@ -0,0 +1,44 @@
|
||||
{
|
||||
imports = [ ./config/template.nix ];
|
||||
|
||||
theme = {
|
||||
wallpaper = "default.png";
|
||||
waybar-transparent = true;
|
||||
print-neofetch = true;
|
||||
font-mono = "FiraCode Nerd Font Mono";
|
||||
font = "SFProDisplay Nerd Font";
|
||||
rounding = 12;
|
||||
gaps-in = 10;
|
||||
gaps-out = 20;
|
||||
border-size = 3;
|
||||
|
||||
colors = {
|
||||
bg = "040409";
|
||||
fg = "FCFCFC";
|
||||
alt-bg = "101012";
|
||||
alt-fg = "ECECEC";
|
||||
primary-ansi-16 = "magenta";
|
||||
primary-bg = "a158ff";
|
||||
primary-fg = "000000";
|
||||
secondary-bg = "4928B8";
|
||||
secondary-fg = "000000";
|
||||
color0 = "000000";
|
||||
color1 = "f7768e";
|
||||
color2 = "73daca";
|
||||
color3 = "e0af68";
|
||||
color4 = "7aa2f7";
|
||||
color5 = "9978F8";
|
||||
color6 = "7dcfff";
|
||||
color7 = "E4E5E7";
|
||||
color8 = "515878";
|
||||
color9 = "f7869e";
|
||||
color10 = "83eada";
|
||||
color11 = "f0bf78";
|
||||
color12 = "8ab2f7";
|
||||
color13 = "A988F8";
|
||||
color14 = "8ddfff";
|
||||
color15 = "f4f5f7";
|
||||
};
|
||||
};
|
||||
|
||||
}
|
||||
6
home/themes/wallpapers/default.nix
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
xdg.configFile."wallpapers" = {
|
||||
recursive = true;
|
||||
source = ./wallpapers;
|
||||
};
|
||||
}
|
||||
BIN
home/themes/wallpapers/wallpapers/barcode.png
Normal file
|
After Width: | Height: | Size: 826 KiB |
BIN
home/themes/wallpapers/wallpapers/cat_leaves.png
Normal file
|
After Width: | Height: | Size: 1.3 MiB |
BIN
home/themes/wallpapers/wallpapers/default.png
Normal file
|
After Width: | Height: | Size: 12 MiB |
BIN
home/themes/wallpapers/wallpapers/galaxy.png
Normal file
|
After Width: | Height: | Size: 95 KiB |
BIN
home/themes/wallpapers/wallpapers/house_cloud.png
Normal file
|
After Width: | Height: | Size: 378 KiB |
BIN
home/themes/wallpapers/wallpapers/mountains.png
Normal file
|
After Width: | Height: | Size: 288 KiB |
BIN
home/themes/wallpapers/wallpapers/mountains_black.png
Normal file
|
After Width: | Height: | Size: 641 KiB |
BIN
home/themes/wallpapers/wallpapers/tokyo.png
Normal file
|
After Width: | Height: | Size: 1.0 MiB |
BIN
home/themes/wallpapers/wallpapers/windows.png
Normal file
|
After Width: | Height: | Size: 8.6 MiB |