theme stuff

This commit is contained in:
mjallen18
2025-12-01 16:21:12 -06:00
parent 47e2b0caf8
commit a0870e42ca
30 changed files with 313 additions and 1088 deletions

View File

@@ -2,7 +2,6 @@
with lib;
let
cfg = config.mjallen.programs.btop;
palette = import cfg.theme.file;
in
{
imports = [ ./options.nix ];
@@ -75,52 +74,6 @@ in
selected_battery = "Auto";
log_level = "WARNING";
};
themes = {
global = ''
theme[main_bg]="${palette.colors.bg}"
theme[main_fg]="${palette.colors.text}"
theme[title]="${palette.colors.text}"
theme[hi_fg]="${palette.colors.info}"
theme[selected_bg]="${palette.colors.bgAlt}"
theme[selected_fg]="${palette.colors.info}"
theme[inactive_fg]="${palette.colors.surfaceAlt}"
theme[graph_text]="${palette.colors.text}"
theme[meter_bg]="${palette.colors.bgAlt}"
theme[proc_misc]="${palette.colors.text}"
theme[cpu_box]="${palette.colors.accent}"
theme[mem_box]="${palette.colors.success}"
theme[net_box]="${palette.colors.warning}"
theme[proc_box]="${palette.colors.danger}"
theme[div_line]="${palette.colors.bgAlt}"
theme[temp_start]="${palette.colors.success}"
theme[temp_mid]="${palette.colors.warning}"
theme[temp_end]="${palette.colors.danger}"
theme[cpu_start]="${palette.colors.accent}"
theme[cpu_mid]="${palette.colors.warning}"
theme[cpu_end]="${palette.colors.danger}"
theme[free_start]="${palette.colors.success}"
theme[free_mid]="${palette.colors.warning}"
theme[free_end]="${palette.colors.warning}"
theme[cached_start]="${palette.colors.success}"
theme[cached_mid]="${palette.colors.warning}"
theme[cached_end]="${palette.colors.warning}"
theme[available_start]="${palette.colors.text}"
theme[available_mid]="${palette.colors.danger}"
theme[available_end]="${palette.colors.danger}"
theme[used_start]="${palette.colors.success}"
theme[used_mid]="${palette.colors.warning}"
theme[used_end]="${palette.colors.danger}"
theme[download_start]="${palette.colors.info}"
theme[download_mid]="${palette.colors.info}"
theme[download_end]="${palette.colors.warning}"
theme[upload_start]="${palette.colors.info}"
theme[upload_mid]="${palette.colors.info}"
theme[upload_end]="${palette.colors.warning}"
theme[process_start]="${palette.colors.accent}"
theme[process_mid]="${palette.colors.warning}"
theme[process_end]="${palette.colors.danger}"
'';
};
};
};
}

View File

@@ -3,19 +3,5 @@ with lib;
{
options.mjallen.programs.btop = {
enable = mkEnableOption "enable btop";
theme = mkOption {
type = types.submodule {
options = {
file = mkOption {
type = types.path;
default = lib.snowfall.fs.get-file "modules/home/desktop/theme/palettes/nord.nix";
description = "Nix file exporting a palette attrset.";
};
};
};
default = { };
description = "btop theme palette configuration.";
};
};
}

View File

@@ -2,7 +2,6 @@
config,
lib,
pkgs,
mjallenThemeComputed,
...
}:
with lib;
@@ -10,12 +9,12 @@ let
cfg = config.mjallen.programs.hyprland;
# Pull from global theme options
themeSize = config.mjallen.theme.gtk.size; # "standard" | "compact"
themeAccent = config.mjallen.theme.gtk.accent; # "default" | ... | "all"
themeTweak = config.mjallen.theme.gtk.tweak; # "normal" | "rimless" | "float" | "black"
themeColor = config.mjallen.theme.gtk.color; # "light" | "dark"
iconThemeVariant = config.mjallen.theme.icons.variant; # "default" | ... | "all"
iconScheme = config.mjallen.theme.icons.scheme; # "default" | "nord" | "dracula" | ...
themeSize = "standard"; # "standard" | "compact"
themeAccent = "default"; # "default" | ... | "all"
themeTweak = "normal"; # "normal" | "rimless" | "float" | "black"
themeColor = "dark"; # "light" | "dark"
iconThemeVariant = "default"; # "default" | ... | "all"
iconScheme = "nord"; # "default" | "nord" | "dracula" | ...
# Cursor
cursorTheme = "macOS";
@@ -23,7 +22,7 @@ let
cursorSize = 24;
# GTK
gtkTheme = mjallenThemeComputed.gtkTheme;
gtkTheme = "Colloid-dark-standard";
gtkThemePkg = pkgs.colloid-gtk-theme.override {
sizeVariants = [ themeSize ];
colorVariants = [ themeColor ];
@@ -32,7 +31,7 @@ let
};
# Icons
iconTheme = mjallenThemeComputed.iconTheme;
iconTheme = "Colloid-nord-dark";
iconThemePkg = pkgs.colloid-icon-theme.override {
schemeVariants = [ iconScheme ];
colorVariants = [ iconThemeVariant ];

View File

@@ -2,7 +2,6 @@
with lib;
let
cfg = config.mjallen.programs.kitty;
palette = import cfg.theme.file;
in
{
imports = [ ./options.nix ];
@@ -28,78 +27,78 @@ in
confirm_os_window_close = "0";
background_opacity = mkForce "0.85";
# The basic colors
foreground = palette.colors.text;
background = palette.colors.bg;
selection_foreground = palette.colors.bg;
selection_background = palette.colors.accent;
# # The basic colors
# foreground = config.lib.stylix.colors.base06;
# background = config.lib.stylix.colors.base00;
# selection_foreground = config.lib.stylix.colors.base00;
# selection_background = config.lib.stylix.colors.base0E;
# Cursor colors
cursor = palette.colors.accent;
cursor_text_color = palette.colors.bg;
# # Cursor colors
# cursor = config.lib.stylix.colors.base0E;
# cursor_text_color = config.lib.stylix.colors.base00;
# URL underline color when hovering with mouse
url_color = palette.colors.accent;
# # URL underline color when hovering with mouse
# url_color = config.lib.stylix.colors.base0E;
# Kitty window border colors
active_border_color = palette.colors.primary;
inactive_border_color = palette.colors.bgAlt;
bell_border_color = palette.colors.warning;
# # Kitty window border colors
# active_border_color = config.lib.stylix.colors.base0F;
# inactive_border_color = config.lib.stylix.colors.base01;
# bell_border_color = config.lib.stylix.colors.base0A;
# OS Window titlebar colors
wayland_titlebar_color = palette.colors.bg;
macos_titlebar_color = palette.colors.bg;
# # OS Window titlebar colors
# wayland_titlebar_color = config.lib.stylix.colors.base00;
# macos_titlebar_color = config.lib.stylix.colors.base00;
# Tab bar colors
active_tab_foreground = palette.colors.border;
active_tab_background = palette.colors.accent;
inactive_tab_foreground = palette.colors.text;
inactive_tab_background = palette.colors.bgAlt;
tab_bar_background = palette.colors.border;
# # Tab bar colors
# active_tab_foreground = config.lib.stylix.colors.base03;
# active_tab_background = config.lib.stylix.colors.base0E;
# inactive_tab_foreground = config.lib.stylix.colors.base06;
# inactive_tab_background = config.lib.stylix.colors.base01;
# tab_bar_background = config.lib.stylix.colors.base03;
# Colors for marks (marked text in the terminal)
mark1_foreground = palette.colors.bg;
mark1_background = palette.colors.primary;
mark2_foreground = palette.colors.bg;
mark2_background = palette.colors.accent;
mark3_foreground = palette.colors.bg;
mark3_background = palette.colors.info;
# # Colors for marks (marked text in the terminal)
# mark1_foreground = config.lib.stylix.colors.base00;
# mark1_background = config.lib.stylix.colors.base0F;
# mark2_foreground = config.lib.stylix.colors.base00;
# mark2_background = config.lib.stylix.colors.base0E;
# mark3_foreground = config.lib.stylix.colors.base00;
# mark3_background = config.lib.stylix.colors.base0C;
# The 16 terminal colors
# # The 16 terminal colors
# black
color0 = palette.colors.bg;
# # black
# color0 = config.lib.stylix.colors.base00;
# Autosuggestion
color8 = palette.colors.primary;
# # Autosuggestion
# color8 = config.lib.stylix.colors.base0F;
# red
color1 = palette.colors.danger;
color9 = palette.colors.danger;
# # red
# color1 = config.lib.stylix.colors.base08;
# color9 = config.lib.stylix.colors.base08;
# green
color2 = palette.colors.success;
color10 = palette.colors.success;
# # green
# color2 = config.lib.stylix.colors.base0B;
# color10 = config.lib.stylix.colors.base0B;
# yellow
color3 = palette.colors.warning;
color11 = palette.colors.warning;
# # yellow
# color3 = config.lib.stylix.colors.base0A;
# color11 = config.lib.stylix.colors.base0A;
# blue
color4 = palette.colors.primary;
color12 = palette.colors.primary;
# # blue
# color4 = config.lib.stylix.colors.base0F;
# color12 = config.lib.stylix.colors.base0F;
# magenta
color5 = palette.colors.accent;
color13 = palette.colors.accent;
# # magenta
# color5 = config.lib.stylix.colors.base0E;
# color13 = config.lib.stylix.colors.base0E;
# cyan
color6 = palette.colors.info;
color14 = palette.colors.info;
# # cyan
# color6 = config.lib.stylix.colors.base0C;
# color14 = config.lib.stylix.colors.base0C;
# white
color7 = palette.colors.textMuted;
color15 = palette.colors.text;
# # white
# color7 = config.lib.stylix.colors.base05;
# color15 = config.lib.stylix.colors.base06;
};
};
};

View File

@@ -20,20 +20,5 @@ in
default = 12;
};
};
theme = mkOption {
type = types.submodule {
options = {
file = mkOption {
type = types.path;
# Fallback default; global theme module sets this via mkDefault
default = lib.snowfall.fs.get-file "modules/home/desktop/theme/palettes/nord.nix";
description = "Nix file exporting a palette attrset.";
};
};
};
default = { };
description = "Kitty theme palette configuration.";
};
};
}

View File

@@ -2,7 +2,6 @@
with lib;
let
cfg = config.mjallen.programs.mako;
palette = import cfg.theme.file;
in
{
imports = [ ./options.nix ];
@@ -22,10 +21,10 @@ in
max-icon-size = 64;
default-timeout = 5000;
background-color = mkDefault palette.colors.bg;
text-color = mkDefault palette.colors.text;
border-color = mkDefault palette.colors.primary;
progress-color = mkDefault "over ${palette.colors.info}";
# background-color = mkDefault config.lib.stylix.colors.base00;
# text-color = mkDefault config.lib.stylix.colors.base06;
# border-color = mkDefault config.lib.stylix.colors.base0F;
# progress-color = mkDefault "over ${config.lib.stylix.colors.base0C}";
};
};
};

View File

@@ -8,19 +8,5 @@ with lib;
type = types.str;
default = "DejaVu Sans";
};
theme = mkOption {
type = types.submodule {
options = {
file = mkOption {
type = types.path;
default = lib.snowfall.fs.get-file "modules/home/desktop/theme/palettes/nord.nix";
description = "Nix file exporting a palette attrset.";
};
};
};
default = { };
description = "Mako theme palette configuration.";
};
};
}

View File

@@ -18,11 +18,11 @@ in
home.file = {
".config/nwg-dock-hyprland/drawer.css".text = ''
window {
background: ${palette.colors.bg};
background: ${config.lib.stylix.colors.base00};
border-radius: 10px;
border-style: none;
border-width: 1px;
border-color: ${palette.colors.accent}b0
border-color: ${config.lib.stylix.colors.base0E}b0
}
#box {
@@ -33,14 +33,14 @@ in
active {
/* This is to underline the button representing the currently active window */
border-bottom: solid 1px;
border-color: ${palette.colors.success}1a
border-color: ${config.lib.stylix.colors.base0B}1a
}
button, image {
background: none;
border-style: none;
box-shadow: none;
color: ${palette.colors.primary}
color: ${config.lib.stylix.colors.base0F}
}
button {
@@ -52,7 +52,7 @@ in
}
button:hover {
background-color: ${palette.colors.bg}1a;
background-color: ${config.lib.stylix.colors.base00}1a;
border-radius: 2px;
}

View File

@@ -3,19 +3,5 @@ with lib;
{
options.mjallen.programs.nwg-dock = {
enable = mkEnableOption "enable nwg-dock";
theme = mkOption {
type = types.submodule {
options = {
file = mkOption {
type = types.path;
default = lib.snowfall.fs.get-file "modules/home/desktop/theme/palettes/nord.nix";
description = "Nix file exporting a palette attrset.";
};
};
};
default = { };
description = "nwg-dock theme palette configuration.";
};
};
}

View File

@@ -18,13 +18,13 @@ in
home.file = {
".config/nwg-drawer/drawer.css".text = ''
window {
background-color: ${palette.colors.bg}bf;
color: ${palette.colors.textMuted}00
background-color: ${config.lib.stylix.colors.base00}bf;
color: ${config.lib.stylix.colors.base05}00
}
/* search entry */
entry {
background-color: ${palette.colors.bgAlt}0f
background-color: ${config.lib.stylix.colors.base01}0f
}
button, image {
@@ -33,7 +33,7 @@ in
}
button:hover {
background-color: ${palette.colors.primary}1a
background-color: ${config.lib.stylix.colors.base0F}1a
}
/* in case you wanted to give category buttons a different look */
@@ -43,12 +43,12 @@ in
#pinned-box {
padding-bottom: 5px;
border-bottom: 1px dotted ${palette.colors.border}
border-bottom: 1px dotted ${config.lib.stylix.colors.base03}
}
#files-box {
padding: 5px;
border: 1px dotted ${palette.colors.border};
border: 1px dotted ${config.lib.stylix.colors.base03};
border-radius: 15px
}
'';

View File

@@ -3,19 +3,5 @@ with lib;
{
options.mjallen.programs.nwg-drawer = {
enable = mkEnableOption "enable nwg-drawer";
theme = mkOption {
type = types.submodule {
options = {
file = mkOption {
type = types.path;
default = lib.snowfall.fs.get-file "modules/home/desktop/theme/palettes/nord.nix";
description = "Nix file exporting a palette attrset.";
};
};
};
default = { };
description = "nwg-drawer theme palette configuration.";
};
};
}

View File

@@ -2,324 +2,233 @@
with lib;
let
cfg = config.mjallen.programs.waybar;
palette = import cfg.theme.file;
defaultOpacity = palette.tokens.opacity or "opacity: 0.85;";
defaultBorderRadius = palette.tokens.borderRadius or "border-radius: 1rem;";
defaultCenterOptions =
palette.tokens.centerOptions or ''
padding-top: 0.2rem;
padding-bottom: 0.2rem;
padding-left: 0.5rem;
padding-right: 0.5rem;
margin: 3px 0;
'';
borderRight =
palette.tokens.borderRight or ''
padding-top: 0.2rem;
padding-bottom: 0.2rem;
padding-left: 0.5rem;
padding-right: 0.5rem;
margin: 3px 0;
border-radius: 0rem 1rem 1rem 0rem;
margin-right: 0.5rem;
'';
borderLeft = ''
padding-top: 0.2rem;
padding-bottom: 0.2rem;
padding-left: 0.5rem;
padding-right: 0.5rem;
margin: 3px 0;
border-radius: 1rem 0rem 0rem 1rem;
margin-left: 0.5rem;
'';
baseStyle =
if cfg.style.file != null then
builtins.readFile cfg.style.file
else
''
.blink_me {
animation: blinker 1s linear infinite;
}
/* =============================================================================
ANIMATIONS & GLOBAL OVERRIDES
============================================================================= */
@keyframes blinker {
50% {
color: @base08;
}
50% { color: @base08; }
}
/* Override Stylix font settings */
* {
font-family:
Jetbrains Mono Nerd Font,
monospace;
font-family: "Jetbrains Mono Nerd Font", monospace;
font-size: 14px;
min-height: 0;
}
/* =============================================================================
MAIN BAR & TOOLTIPS
============================================================================= */
window#waybar {
background: transparent;
}
#waybar {
background: transparent;
color: ${palette.colors.text};
color: @base06;
margin: 5px 5px;
}
#workspaces {
background-color: ${palette.colors.bg};
${defaultBorderRadius}
${defaultOpacity}
${defaultCenterOptions}
margin-left: 0.6rem;
}
#workspaces button {
color: ${palette.colors.primary};
${defaultBorderRadius}
padding: 0.4rem;
}
#workspaces button.active {
color: ${palette.colors.info};
${defaultBorderRadius}
}
#workspaces button:hover {
color: ${palette.colors.info};
${defaultBorderRadius}
}
#workspaces button.focused {
color: ${palette.colors.text};
background: ${palette.colors.warning};
${defaultBorderRadius}
}
#workspaces button.urgent {
color: ${palette.colors.bg};
background: ${palette.colors.text};
${defaultBorderRadius}
}
#tooltip {
background: ${palette.colors.bg};
border-color: ${palette.colors.bg};
${defaultBorderRadius}
border-width: 1rem;
background: @base00;
border-color: @base00;
border-radius: 1rem;
border-width: 2px; /* Reduced from 1rem which is usually too thick */
border-style: solid;
}
#window {
color: ${palette.colors.accent};
background-color: ${palette.colors.bg};
${defaultOpacity}
${defaultBorderRadius}
${defaultCenterOptions}
margin-left: 4rem;
margin-right: ${toString cfg.windowOffset}rem;
}
/* make window module transparent when no windows present */
#window.empty {
background-color: transparent;
}
#custom-power {
color: ${palette.colors.primary};
background-color: ${palette.colors.bg};
${defaultOpacity}
${defaultCenterOptions}
border-radius: 0;
}
/* Right-click menu styling */
menu {
border-radius: 15px;
background: ${palette.colors.bg};
color: ${palette.colors.text};
background: @base00;
color: @base06;
}
menuitem {
border-radius: 15px;
}
#custom-weather {
color: ${palette.colors.primary};
background-color: ${palette.colors.bg};
${defaultOpacity}
${defaultCenterOptions}
border-radius: 0;
/* =============================================================================
WORKSPACES
============================================================================= */
#workspaces {
background-color: @base00;
border-radius: 1rem;
opacity: 0.85;
padding: 0.2rem 0.5rem;
margin: 3px 0 3px 0.6rem;
}
#custom-notifications {
color: ${palette.colors.primary};
background-color: ${palette.colors.bg};
${defaultOpacity}
${defaultCenterOptions}
border-radius: 0;
#workspaces button {
color: @base0F;
border-radius: 1rem;
padding: 0.4rem;
/* Border handled by stylix, but we add specific colors below */
}
#custom-notifications.notify {
color: ${palette.colors.danger};
#workspaces button.active,
#workspaces button:hover {
color: @base0C;
border-radius: 1rem;
}
#workspaces button.focused {
color: @base06;
background: @base0A;
border-radius: 1rem;
}
#workspaces button.urgent {
color: @base00;
background: @base06;
border-radius: 1rem;
}
/* =============================================================================
WINDOW TITLE
============================================================================= */
#window {
color: @base0E;
background-color: @base00;
opacity: 0.85;
border-radius: 1rem;
padding: 0.2rem 0.5rem;
margin: 3px 0;
margin-left: 4rem;
margin-right: 75rem; /* This is very large, likely a centering hack */
}
#window.empty {
background-color: transparent;
}
/* =============================================================================
SHARED MODULE STYLES
============================================================================= */
/* This block applies the standard "Nord Background" style to all modules
to avoid repeating code for every single ID. */
#custom-power,
#custom-weather,
#custom-notifications,
#battery,
#clock,
#idle_inhibitor,
#network,
#bluetooth,
#wireplumber,
#keyboard-state,
#temperature,
#custom-left-end,
#custom-right-end,
#custom-lights,
#tray {
background-color: @base00;
opacity: 0.85;
padding: 0.2rem 0.5rem;
margin: 3px 0;
border-radius: 0; /* Default to square, rounded manually below */
}
/* Common Hover Effect */
#idle_inhibitor:hover,
#network:hover,
#bluetooth:hover,
#wireplumber:hover,
#temperature:hover,
#custom-lights:hover {
background: @base02;
}
/* =============================================================================
MODULE SPECIFIC COLORS
============================================================================= */
#custom-power,
#custom-weather,
#custom-notifications {
color: @base0F;
}
#custom-notifications.notify { color: @base08; }
#custom-notifications.alert {
animation-name: blinker;
animation-duration: 3s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation: blinker 3s linear infinite;
}
#battery {
color: ${palette.colors.accent};
background-color: ${palette.colors.bg};
${defaultOpacity}
${defaultCenterOptions}
border-radius: 0;
color: @base0E;
min-width: 3rem;
}
#clock {
color: ${palette.colors.primary};
background-color: ${palette.colors.bg};
${defaultOpacity}
${defaultCenterOptions}
border-radius: 0;
}
/* ------------- */
#clock { color: @base0F; }
#idle_inhibitor {
color: ${palette.colors.primary};
background-color: ${palette.colors.bg};
${defaultOpacity}
${defaultCenterOptions}
border-radius: 0;
color: @base0F;
padding-right: 1rem;
}
#idle_inhibitor:hover {
background: ${palette.colors.surfaceAlt};
}
#network {
color: ${palette.colors.accent};
background-color: ${palette.colors.bg};
${defaultOpacity}
${defaultCenterOptions}
border-radius: 0;
color: @base0E;
padding-right: 15px;
}
#network:hover {
background: ${palette.colors.surfaceAlt};
}
#bluetooth { color: @base0F; }
#bluetooth {
color: ${palette.colors.primary};
background-color: ${palette.colors.bg};
${defaultOpacity}
${defaultCenterOptions}
border-radius: 0;
}
#bluetooth:hover {
background: ${palette.colors.surfaceAlt};
}
#wireplumber.source {
color: ${palette.colors.info};
background-color: ${palette.colors.bg};
${defaultOpacity}
${defaultCenterOptions}
border-radius: 0;
/* --- Audio source/sink --- */
#wireplumber.source,
#wireplumber.sink {
color: @base0C;
}
#wireplumber.source.muted {
animation-name: blinker;
animation-duration: 2s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation: blinker 2s linear infinite;
padding-right: 1rem;
}
#wireplumber.source:hover {
background: ${palette.colors.surfaceAlt};
}
#wireplumber.sink {
color: ${palette.colors.info};
background-color: ${palette.colors.bg};
${defaultOpacity}
${defaultCenterOptions}
border-radius: 0;
}
#wireplumber.sink.muted {
animation-name: blinker;
animation-duration: 5s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation: blinker 5s linear infinite;
}
#wireplumber.sink:hover {
background: ${palette.colors.surfaceAlt};
}
#keyboard-state.numlock {
color: ${palette.colors.info};
background-color: ${palette.colors.bg};
${defaultOpacity}
${defaultCenterOptions}
border-radius: 0;
}
#keyboard-state.capslock {
color: ${palette.colors.primary};
background-color: ${palette.colors.bg};
${defaultOpacity}
${defaultCenterOptions}
border-radius: 0;
}
/* --- Keyboard --- */
#keyboard-state.numlock { color: @base0C; }
#keyboard-state.capslock { color: @base0F; }
/* --- Temperature --- */
#temperature,
#temperature.gpu {
color: ${palette.colors.primary};
background-color: ${palette.colors.bg};
${defaultOpacity}
${defaultCenterOptions}
border-radius: 0;
color: @base0F;
}
#temperature.gpu:hover {
background: ${palette.colors.surfaceAlt};
}
#temperature {
color: ${palette.colors.primary};
background-color: ${palette.colors.bg};
${defaultOpacity}
${defaultCenterOptions}
border-radius: 0
}
/* ------------- */
/* --- Tray --- */
#tray {
background-color: ${palette.colors.bg};
${defaultOpacity}
${defaultCenterOptions}
${defaultBorderRadius}
border-radius: 1rem;
margin-right: 0.6rem;
}
/* ------------- */
/* =============================================================================
DECORATIVE END CAPS & EXTRAS
============================================================================= */
#custom-left-end {
background-color: ${palette.colors.bg};
${defaultOpacity}
${borderLeft}
border-radius: 1rem 0 0 1rem;
margin-left: 0.5rem;
}
#custom-right-end {
background-color: ${palette.colors.bg};
${defaultOpacity}
${borderRight}
border-radius: 0 1rem 1rem 0;
margin-right: 0.5rem;
}
#custom-lights {
color: @base0C;
/* Re-declaring background here to ensure specific override logic if needed */
background-color: @base00;
border-radius: 1rem 0 0 1rem;
margin-left: 0.5rem;
}
'';
in
@@ -596,10 +505,10 @@ in
calendar = {
mode = "month";
format = {
months = "<span color='${palette.colors.primary}'><b>{}</b></span>";
days = "<span color='${palette.colors.primary}'><b>{}</b></span>";
weekdays = "<span color='${palette.colors.info}'><b>{}</b></span>";
today = "<span color='${palette.colors.success}'><b><u>{}</u></b></span>";
months = "<span color='@base0F'><b>{}</b></span>";
days = "<span color='@base0F'><b>{}</b></span>";
weekdays = "<span color='@base0C'><b>{}</b></span>";
today = "<span color='${config.lib.stylix.colors.base0B}'><b><u>{}</u></b></span>";
};
};
};

View File

@@ -41,21 +41,6 @@ in
description = "Right margin offset for the hyprland/window module (in rem).";
};
# Theme
theme = mkOption {
type = submodule {
options = {
file = mkOption {
type = path;
default = lib.snowfall.fs.get-file "modules/home/desktop/theme/palettes/nord.nix";
description = "Nix file exporting a palette attrset (e.g., Nord).";
};
};
};
default = { };
description = "Theme configuration.";
};
# Layout
layout = mkOption {
type = submodule {

View File

@@ -53,13 +53,13 @@ in
}
window {
background-color: ${palette.colors.bg}f0
background-color: ${config.lib.stylix.colors.base00}f0
}
button {
margin: 8px;
color: ${palette.colors.info};
background-color: ${palette.colors.bgAlt};
color: ${config.lib.stylix.colors.base0C};
background-color: ${config.lib.stylix.colors.base01};
border-style: solid;
border-width: 2px;
background-repeat: no-repeat;
@@ -70,8 +70,8 @@ in
button:active,
button:focus,
button:hover {
color: ${palette.colors.info};
background-color: ${palette.colors.surfaceAlt};
color: ${config.lib.stylix.colors.base0C};
background-color: ${config.lib.stylix.colors.base02Alt};
outline-style: none;
}

View File

@@ -3,24 +3,5 @@ with lib;
{
options.mjallen.programs.wlogout = {
enable = mkEnableOption "enable wlogout";
fontName = mkOption {
type = types.str;
default = "Deja Vu Sans";
};
theme = mkOption {
type = types.submodule {
options = {
file = mkOption {
type = types.path;
default = lib.snowfall.fs.get-file "modules/home/desktop/theme/palettes/nord.nix";
description = "Nix file exporting a palette attrset.";
};
};
};
default = { };
description = "wlogout theme palette configuration.";
};
};
}

View File

@@ -20,9 +20,9 @@ in
window {
margin: 0px;
padding: 10px;
border: 0.16em solid ${palette.colors.accent};
border: 0.16em solid ${config.lib.stylix.colors.base0E};
border-radius: 0.1em;
background-color: ${palette.colors.bg};
background-color: ${config.lib.stylix.colors.base00};
}
/* Inner Box */
@@ -30,7 +30,7 @@ in
margin: 5px;
padding: 10px;
border: none;
background-color: ${palette.colors.bg};
background-color: ${config.lib.stylix.colors.base00};
}
/* Outer Box */
@@ -38,7 +38,7 @@ in
margin: 5px;
padding: 10px;
border: none;
background-color: ${palette.colors.bg};
background-color: ${config.lib.stylix.colors.base00};
}
/* Scroll */
@@ -46,7 +46,7 @@ in
margin: 0px;
padding: 10px;
border: none;
background-color: ${palette.colors.bg};
background-color: ${config.lib.stylix.colors.base00};
}
/* Input */
@@ -55,46 +55,46 @@ in
padding: 10px;
border: none;
border-radius: 0.1em;
color: ${palette.colors.text};
background-color: ${palette.colors.bg};
color: ${config.lib.stylix.colors.base06};
background-color: ${config.lib.stylix.colors.base00};
}
#input image {
border: none;
color: ${palette.colors.danger};
color: ${config.lib.stylix.colors.base08};
}
#input * {
outline: 4px solid ${palette.colors.danger}!important;
outline: 4px solid ${config.lib.stylix.colors.base08}!important;
}
/* Text */
#text {
margin: 5px;
border: none;
color: ${palette.colors.text};
color: ${config.lib.stylix.colors.base06};
}
#entry {
background-color: ${palette.colors.bg};
background-color: ${config.lib.stylix.colors.base00};
}
#entry arrow {
border: none;
color: ${palette.colors.accent};
color: ${config.lib.stylix.colors.base0E};
}
/* Selected Entry */
#entry:selected {
border: 0.11em solid ${palette.colors.accent};
border: 0.11em solid ${config.lib.stylix.colors.base0E};
}
#entry:selected #text {
color: ${palette.colors.info};
color: ${config.lib.stylix.colors.base0C};
}
#entry:drop(active) {
background-color: ${palette.colors.accent}!important;
background-color: ${config.lib.stylix.colors.base0E}!important;
}
'';
};

View File

@@ -8,19 +8,5 @@ with lib;
type = types.str;
default = "Deja Vu Sans";
};
theme = mkOption {
type = types.submodule {
options = {
file = mkOption {
type = types.path;
default = lib.snowfall.fs.get-file "modules/home/desktop/theme/palettes/nord.nix";
description = "Nix file exporting a palette attrset.";
};
};
};
default = { };
description = "Wofi theme palette configuration.";
};
};
}