reorganize theme stuff

This commit is contained in:
Reid 2024-07-25 21:22:21 -07:00
parent a55c75925c
commit cb510f5173
Signed by: reidlab
GPG key ID: DAF5EAF6665839FD
8 changed files with 60 additions and 28 deletions

View file

@ -5,9 +5,10 @@ let
cfg = config.modules.desktop.themes;
accent = "pink";
variant = "mocha";
colorScheme = inputs.nix-colors.colorSchemes.catppuccin-mocha;
in {
config = mkIf (cfg.active == "catppuccin") {
colorScheme = inputs.nix-colors.colorSchemes.catppuccin-mocha;
colorScheme = colorScheme;
modules.desktop.themes = {
dark = true;
@ -63,7 +64,35 @@ in {
};
};
hyprland = "${inputs.hyprland-catppuccin}/themes/${variant}.conf";
hyprland = {
source = "${inputs.hyprland-catppuccin}/themes/${variant}.conf";
extraConfig = ''
general {
col.active_border=''$${accent}
col.inactive_border=$surface0
}
decoration {
col.shadow=$surface0
col.shadow_inactive=$surface0
}
misc {
background_color=$crust
}
'';
};
waybar = builtins.concatStringsSep "\n" [
"@import \"${inputs.waybar-catppuccin}/themes/${variant}.css\";"
(lib.readFile ./waybar.css)
];
wob = with colorScheme.palette; {
borderColor = "${base04}FF";
backgroundColor = "${base01}66";
barColor = "${base05}FF";
};
rofi = ./rofi.rasi;
};
};
}

View file

@ -0,0 +1,98 @@
* {
bg-col: #24273a;
bg-col-light: #313244;
border-col: #363a4f;
selected-col: #45475a;
pink: #f5c2e7;
fg-col: #cdd6f4;
fg-col2: @pink;
grey: #bac2de;
width: 450px;
}
element-text, element-icon , mode-switcher {
background-color: inherit;
text-color: inherit;
}
window {
height: 500px;
border: 2px;
border-radius: 1em;
border-color: @pink;
background-color: @bg-col;
}
mainbox {background-color: @bg-col;}
inputbar {
margin: 10px 5px 5px 5px;
children: [prompt, entry];
background-color: @bg-col;
padding: 1px;
}
prompt {
background-color: transparent;
padding: 1px;
text-color: @fg-col;
border-radius: 1.5em;
}
textbox-prompt-colon {
expand: true;
str: ":";
}
entry {
padding: 1px;
margin: 0px;
text-color: @fg-col;
background-color: @bg-col;
}
listview {
border: 0px 0px 0px;
margin: 5px 0px 0px 10px;
columns: 1;
lines: 10;
background-color: @bg-col;
}
element {
padding: 1px;
background-color: @bg-col;
text-color: @fg-col;
}
element-icon {size: 12px;}
element.selected {
background-color: @selected-col;
text-color: @fg-col2;
}
scrollbar {
width: 4px ;
border: 0;
handle-color: @fg-col;
handle-width: 8px ;
padding: 0;
}
mode-switcher {spacing: 0;}
button {
spacing: 0;
background-color: @bg-col-light;
text-color: @grey;
vertical-align: 0.5;
horizontal-align: 0.5;
}
button.selected {
background-color: @bg-col;
text-color: @pink;
}

View file

@ -0,0 +1,157 @@
* {
border: none;
border-radius: 0px;
min-height: 0;
}
button, button:hover {
box-shadow: none; /* undo default styles */
}
window#waybar {
color: @text;
/*background: alpha(@base, 0.6);*/
background: @base;
border-radius: 1em;
/*font-family: VictorMono, Iosevka Nerd Font, Noto Sans CJK;*/
/*font-family: 'Atkinson Hyperlegible', FontAwesome, Noto Sans CJK;*/
font-family: CozetteVector, monospace, FontAwesome, Noto Sans CJK;
font-size: 13px;
font-style: normal;
}
#workspaces, .modules-right box {
background-color: @surface0;
margin: 0 0.25em;
padding: 0.15em 0.25em;
border-radius: 1em;
}
.modules-right label.module {
margin: 0 0.5em;
}
.modules-right box {
padding: 0.15em 0.4em;
}
.modules-left, .modules-right {
margin: 0.4em 0.5em;
}
#workspaces {
background-color: @surface0;
padding: 0;
}
#workspaces button {
background-color: transparent;
color: @text;
padding: 0 0.4em;
transition: none;
}
#workspaces button:nth-child(1) {
border-top-left-radius: 1em;
border-bottom-left-radius: 1em;
}
#workspaces button:nth-last-child(1) {
border-top-right-radius: 1em;
border-bottom-right-radius: 1em;
}
#workspaces button.empty {
color: @overlay0;
}
#workspaces button.visible {
background: @surface1;
}
#workspaces button.focused {
box-shadow: none;
}
#workspaces button.active {
background: @pink;
color: @surface0;
}
#workspaces button:hover {
background: rgba(255, 255, 255, 0.1);
color: @text;
box-shadow: none;
}
#workspaces button.active:hover {
background: @pink;
color: @surface0;
}
#workspaces button.urgent {
background: @red;
color: @surface0;
}
#window {
background: transparent;
}
window#waybar.floating #window {
color: @pink;
}
#clock {
color: @lavender;
}
#power-profiles-daemon {
color: @teal;
}
#battery {
color: @green;
}
#battery.charging {
color: @green;
}
#battery.warning:not(.charging) {
color: @peach;
}
#battery.critical:not(.charging) {
color: @maroon;
}
#network {
color: @sapphire;
}
#backlight {
color: @yellow;
}
#pulseaudio {
color: @pink;
}
#custom-power {
color: @red;
}
#privacy {
margin: 0 0.25em;
padding: 0;
}
#privacy-item {
padding: 0 1px;
color: @text;
}
tooltip {
background: @base;
border: 1px solid @surface2;
}
tooltip * {
padding: 0px;
margin: 0px;
color: @text;
font-family: CozetteVector, monospace;
}

View file

@ -44,7 +44,20 @@ in {
};
};
hyprland = mkOpt (nullOr str) null;
hyprland = {
source = mkOpt (nullOr str) null;
extraConfig = mkOpt (nullOr str) null;
};
waybar = mkOpt str "";
wob = {
borderColor = mkOpt (nullOr str) null;
backgroundColor = mkOpt (nullOr str) null;
barColor = mkOpt (nullOr str) null;
};
rofi = mkOpt (nullOr path) null;
};
config = mkIf (cfg.active != null) {
@ -96,6 +109,19 @@ in {
};
};
hm.wayland.windowManager.hyprland.settings.source = mkIf (cfg.hyprland != null) [ cfg.hyprland ];
hm.wayland.windowManager.hyprland = {
settings.source = mkIf (cfg.hyprland.source != null) [ cfg.hyprland.source ];
extraConfig = mkIf (cfg.hyprland.extraConfig != null) cfg.hyprland.extraConfig;
};
hm.programs.waybar.style = cfg.waybar;
hm.services.wob.settings."" = {
border_color = cfg.wob.borderColor;
background_color = cfg.wob.backgroundColor;
bar_color = cfg.wob.barColor;
};
hm.programs.rofi.theme = cfg.rofi;
};
}