diff --git a/flake.nix b/flake.nix index 88a7995..11d8f5e 100755 --- a/flake.nix +++ b/flake.nix @@ -408,6 +408,7 @@ system = "x86_64-linux"; specialArgs = { inherit inputs outputs; + hyprlandSettings = import ./hosts/desktop/hyprland-settings.nix; }; modules = [ ./hosts/base/base-nogui diff --git a/hosts/desktop/hyprland-settings.nix b/hosts/desktop/hyprland-settings.nix new file mode 100644 index 0000000..49de2b1 --- /dev/null +++ b/hosts/desktop/hyprland-settings.nix @@ -0,0 +1,89 @@ +let + theme = import ../../modules/desktop-environments/hyprland/theme.nix; + defaultOpacity = theme.waybar.defaultOpacity; + defaultBorderRadius = theme.waybar.defaultBorderRadius; + defaultCenterOptions = theme.waybar.defaultCenterOptions; + borderLeft = theme.waybar.borderLeft; + borderRight = theme.waybar.borderRight; + + # Displays + displayLeft = { + input = "DP-1"; + resolution = "3840x2160"; + refreshRate = "240.00000"; + }; + displayRight = { + input = "DP-2"; + resolution = "3840x2160"; + refreshRate = "240.00000"; + }; +in +{ + wallpaper = [ + "${displayLeft.input}, /run/wallpaper.jpg" + "${displayRight.input}, /run/wallpaper.jpg" + ]; + + monitor = [ + "${displayLeft.input},${displayLeft.resolution}@${displayLeft.refreshRate},0x0,1,bitdepth,10,cm,hdr,sdrbrightness,1.2,sdrsaturation,0.98" + "${displayRight.input},${displayRight.resolution}@${displayRight.refreshRate},3840x0,1,bitdepth,10,cm,hdr,sdrbrightness,1.5,sdrsaturation,0.98" + ]; + + workspace = [ + "name:firefox, monitor:${displayRight.input}, default:false, special, class:(.*firefox.*)" + "name:discord, monitor:${displayRight.input}, default:true, special, title:(.*vesktop.*), title:(.*Apple Music.*)" + "name:steam, monitor:${displayLeft.input}, default:false, special, class:(.*[Ss]team.*)" + ]; + + windowRule = [ + "size 2160 7680, tag:horizonrdp" + ]; + + extraConfig = '' + exec-once = nm-applet + exec-once = [silent] firefox + exec-once = [silent] vesktop + exec-once = [silent] chromium --app="https://music.apple.com" + exec-once = [silent] steam + ''; + + waybar = { + + layer = "bottom"; + + modules-right = [ + "tray" + "custom/lights" + "temperature" + "temperature#gpu" + "keyboard-state#capslock" + "keyboard-state#numlock" + "wireplumber#sink" + "wireplumber#source" + "bluetooth" + "idle_inhibitor" + "clock" + "custom/weather" + ]; + + extraModules = { + "custom/lights" = { + tooltip = false; + exec = "waybar-hass --get_light light.living_room_lights"; + interval = "once"; + format = "{text}";#"󱉓"; + on-click = "waybar-hass --toggle_light light.living_room_lights"; + return-type = "json"; + }; + }; + + extraModulesStyle = '' + #custom-lights { + color: ${theme.nord.frost.nord8}; + background-color: ${theme.nord.polarNight.nord0}; + ${defaultOpacity} + ${borderLeft} + } + ''; + }; +} \ No newline at end of file diff --git a/hosts/mac-nixos/hyprland-settings.nix b/hosts/mac-nixos/hyprland-settings.nix index c6dbf74..d396564 100644 --- a/hosts/mac-nixos/hyprland-settings.nix +++ b/hosts/mac-nixos/hyprland-settings.nix @@ -1,4 +1,10 @@ +let + theme = import ../../modules/desktop-environments/hyprland/theme.nix; +in { + wallpaper = [ + "eDP-1, /run/wallpaper.jpg" + ]; monitor = [ "eDP-1,3456x2234@60.00000,0x0,1.0,bitdepth,10,cm,hdr,sdrbrightness,1.2,sdrsaturation,0.98" ]; @@ -26,6 +32,8 @@ ]; waybar = { + layer = "top"; + modules-right = [ "tray" "temperature" @@ -36,9 +44,20 @@ # "wireplumber#source" "bluetooth" "network" + "idle_inhibitor" "clock" "battery" "custom/weather" ]; + + moduleStyle = { + window = { + margin-right = "100rem"; + }; + temperature = { + location = "${theme.waybar.borderLeft}"; + border-radius = "1"; + }; + }; }; } \ No newline at end of file diff --git a/modules/desktop-environments/hyprland/config/btop/default.nix b/modules/desktop-environments/hyprland/config/btop/default.nix index dd0cab1..86071c9 100755 --- a/modules/desktop-environments/hyprland/config/btop/default.nix +++ b/modules/desktop-environments/hyprland/config/btop/default.nix @@ -73,48 +73,48 @@ in }; themes = { nord = '' - theme[main_bg]="${settings.nord.polarNight.nord0}" - theme[main_fg]="${settings.nord.snowStorm.nord6}" - theme[title]="${settings.nord.snowStorm.nord6}" - theme[hi_fg]="${settings.nord.frost.nord7}" - theme[selected_bg]="${settings.nord.polarNight.nord1}" - theme[selected_fg]="${settings.nord.frost.nord7}" - theme[inactive_fg]="${settings.nord.polarNight.nord2}" - theme[graph_text]="${settings.nord.snowStorm.nord6}" - theme[meter_bg]="${settings.nord.polarNight.nord1}" - theme[proc_misc]="${settings.nord.snowStorm.nord6}" - theme[cpu_box]="${settings.nord.aurora.nord15}" - theme[mem_box]="${settings.nord.aurora.nord14}" - theme[net_box]="${settings.nord.aurora.nord12}" - theme[proc_box]="${settings.nord.aurora.nord11}" - theme[div_line]="${settings.nord.polarNight.nord1}" - theme[temp_start]="${settings.nord.aurora.nord14}" - theme[temp_mid]="${settings.nord.aurora.nord13}" - theme[temp_end]="${settings.nord.aurora.nord11}" - theme[cpu_start]="${settings.nord.aurora.nord15}" - theme[cpu_mid]="${settings.nord.aurora.nord12}" - theme[cpu_end]="${settings.nord.aurora.nord11}" - theme[free_start]="${settings.nord.aurora.nord14}" - theme[free_mid]="${settings.nord.aurora.nord13}" - theme[free_end]="${settings.nord.aurora.nord12}" - theme[cached_start]="${settings.nord.aurora.nord14}" - theme[cached_mid]="${settings.nord.aurora.nord13}" - theme[cached_end]="${settings.nord.aurora.nord12}" - theme[available_start]="${settings.nord.snowStorm.nord6}" - theme[available_mid]="${settings.nord.aurora.nord11}" - theme[available_end]="${settings.nord.aurora.nord11}" - theme[used_start]="${settings.nord.aurora.nord14}" - theme[used_mid]="${settings.nord.aurora.nord13}" - theme[used_end]="${settings.nord.aurora.nord11}" - theme[download_start]="${settings.nord.frost.nord8}" - theme[download_mid]="${settings.nord.frost.nord8}" - theme[download_end]="${settings.nord.aurora.nord12}" - theme[upload_start]="${settings.nord.frost.nord7}" - theme[upload_mid]="${settings.nord.frost.nord7}" - theme[upload_end]="${settings.nord.aurora.nord12}" - theme[process_start]="${settings.nord.aurora.nord15}" - theme[process_mid]="${settings.nord.aurora.nord12}" - theme[process_end]="${settings.nord.aurora.nord11}" + theme[main_bg]="${settings.theme.nord.polarNight.nord0}" + theme[main_fg]="${settings.theme.nord.snowStorm.nord6}" + theme[title]="${settings.theme.nord.snowStorm.nord6}" + theme[hi_fg]="${settings.theme.nord.frost.nord7}" + theme[selected_bg]="${settings.theme.nord.polarNight.nord1}" + theme[selected_fg]="${settings.theme.nord.frost.nord7}" + theme[inactive_fg]="${settings.theme.nord.polarNight.nord2}" + theme[graph_text]="${settings.theme.nord.snowStorm.nord6}" + theme[meter_bg]="${settings.theme.nord.polarNight.nord1}" + theme[proc_misc]="${settings.theme.nord.snowStorm.nord6}" + theme[cpu_box]="${settings.theme.nord.aurora.nord15}" + theme[mem_box]="${settings.theme.nord.aurora.nord14}" + theme[net_box]="${settings.theme.nord.aurora.nord12}" + theme[proc_box]="${settings.theme.nord.aurora.nord11}" + theme[div_line]="${settings.theme.nord.polarNight.nord1}" + theme[temp_start]="${settings.theme.nord.aurora.nord14}" + theme[temp_mid]="${settings.theme.nord.aurora.nord13}" + theme[temp_end]="${settings.theme.nord.aurora.nord11}" + theme[cpu_start]="${settings.theme.nord.aurora.nord15}" + theme[cpu_mid]="${settings.theme.nord.aurora.nord12}" + theme[cpu_end]="${settings.theme.nord.aurora.nord11}" + theme[free_start]="${settings.theme.nord.aurora.nord14}" + theme[free_mid]="${settings.theme.nord.aurora.nord13}" + theme[free_end]="${settings.theme.nord.aurora.nord12}" + theme[cached_start]="${settings.theme.nord.aurora.nord14}" + theme[cached_mid]="${settings.theme.nord.aurora.nord13}" + theme[cached_end]="${settings.theme.nord.aurora.nord12}" + theme[available_start]="${settings.theme.nord.snowStorm.nord6}" + theme[available_mid]="${settings.theme.nord.aurora.nord11}" + theme[available_end]="${settings.theme.nord.aurora.nord11}" + theme[used_start]="${settings.theme.nord.aurora.nord14}" + theme[used_mid]="${settings.theme.nord.aurora.nord13}" + theme[used_end]="${settings.theme.nord.aurora.nord11}" + theme[download_start]="${settings.theme.nord.frost.nord8}" + theme[download_mid]="${settings.theme.nord.frost.nord8}" + theme[download_end]="${settings.theme.nord.aurora.nord12}" + theme[upload_start]="${settings.theme.nord.frost.nord7}" + theme[upload_mid]="${settings.theme.nord.frost.nord7}" + theme[upload_end]="${settings.theme.nord.aurora.nord12}" + theme[process_start]="${settings.theme.nord.aurora.nord15}" + theme[process_mid]="${settings.theme.nord.aurora.nord12}" + theme[process_end]="${settings.theme.nord.aurora.nord11}" ''; }; }; diff --git a/modules/desktop-environments/hyprland/config/hypr/default.nix b/modules/desktop-environments/hyprland/config/hypr/default.nix index 2e20406..2f47098 100755 --- a/modules/desktop-environments/hyprland/config/hypr/default.nix +++ b/modules/desktop-environments/hyprland/config/hypr/default.nix @@ -123,10 +123,6 @@ in "$mod, XF86MonBrightnessDown, exec, brightnessctl -d kbd_backlight set 10%-" ]; - # monitor = [ - # "${settings.displayLeft.input},${settings.displayLeft.resolution}@${settings.displayLeft.refreshRate},0x0,1.0,bitdepth,10,cm,hdr,sdrbrightness,1.2,sdrsaturation,0.98" - # ]; - monitor = hyprlandSettings.monitor; render = { @@ -303,6 +299,6 @@ in exec-once = xhost +SI:localuser:root exec-once = nwg-look -a exec-once = nwg-dock-hyprland -d - ''; + '' + hyprlandSettings.extraConfig; }; } diff --git a/modules/desktop-environments/hyprland/config/kitty/default.nix b/modules/desktop-environments/hyprland/config/kitty/default.nix index 2918107..51a6596 100755 --- a/modules/desktop-environments/hyprland/config/kitty/default.nix +++ b/modules/desktop-environments/hyprland/config/kitty/default.nix @@ -24,77 +24,77 @@ in background_opacity = "0.85"; # The basic colors - foreground = settings.nord.snowStorm.nord6; - background = settings.nord.polarNight.nord0; - selection_foreground = settings.nord.polarNight.nord0; - selection_background = settings.nord.aurora.nord15; + foreground = settings.theme.nord.snowStorm.nord6; + background = settings.theme.nord.polarNight.nord0; + selection_foreground = settings.theme.nord.polarNight.nord0; + selection_background = settings.theme.nord.aurora.nord15; # Cursor colors - cursor = settings.nord.aurora.nord15; - cursor_text_color = settings.nord.polarNight.nord0; + cursor = settings.theme.nord.aurora.nord15; + cursor_text_color = settings.theme.nord.polarNight.nord0; # URL underline color when hovering with mouse - url_color = settings.nord.aurora.nord15; + url_color = settings.theme.nord.aurora.nord15; # Kitty window border colors - active_border_color = settings.nord.frost.nord10; - inactive_border_color = settings.nord.polarNight.nord1; - bell_border_color = settings.nord.aurora.nord13; + active_border_color = settings.theme.nord.frost.nord10; + inactive_border_color = settings.theme.nord.polarNight.nord1; + bell_border_color = settings.theme.nord.aurora.nord13; # OS Window titlebar colors - wayland_titlebar_color = settings.nord.polarNight.nord0; - macos_titlebar_color = settings.nord.polarNight.nord0; + wayland_titlebar_color = settings.theme.nord.polarNight.nord0; + macos_titlebar_color = settings.theme.nord.polarNight.nord0; # Tab bar colors - active_tab_foreground = settings.nord.polarNight.nord3; - active_tab_background = settings.nord.aurora.nord15; - inactive_tab_foreground = settings.nord.snowStorm.nord6; - inactive_tab_background = settings.nord.polarNight.nord1; - tab_bar_background = settings.nord.polarNight.nord3; + active_tab_foreground = settings.theme.nord.polarNight.nord3; + active_tab_background = settings.theme.nord.aurora.nord15; + inactive_tab_foreground = settings.theme.nord.snowStorm.nord6; + inactive_tab_background = settings.theme.nord.polarNight.nord1; + tab_bar_background = settings.theme.nord.polarNight.nord3; # Colors for marks (marked text in the terminal) - mark1_foreground = settings.nord.polarNight.nord0; - mark1_background = settings.nord.frost.nord10; - mark2_foreground = settings.nord.polarNight.nord0; - mark2_background = settings.nord.aurora.nord15; - mark3_foreground = settings.nord.polarNight.nord0; - mark3_background = settings.nord.frost.nord8; + mark1_foreground = settings.theme.nord.polarNight.nord0; + mark1_background = settings.theme.nord.frost.nord10; + mark2_foreground = settings.theme.nord.polarNight.nord0; + mark2_background = settings.theme.nord.aurora.nord15; + mark3_foreground = settings.theme.nord.polarNight.nord0; + mark3_background = settings.theme.nord.frost.nord8; # The 16 terminal colors # black - color0 = settings.nord.polarNight.nord0; + color0 = settings.theme.nord.polarNight.nord0; # Autosuggestion - color8 = settings.nord.frost.nord10; + color8 = settings.theme.nord.frost.nord10; # red - color1 = settings.nord.aurora.nord11; - color9 = settings.nord.aurora.nord11; + color1 = settings.theme.nord.aurora.nord11; + color9 = settings.theme.nord.aurora.nord11; # green - color2 = settings.nord.aurora.nord14; - color10 = settings.nord.aurora.nord14; + color2 = settings.theme.nord.aurora.nord14; + color10 = settings.theme.nord.aurora.nord14; # yellow - color3 = settings.nord.aurora.nord13; - color11 = settings.nord.aurora.nord13; + color3 = settings.theme.nord.aurora.nord13; + color11 = settings.theme.nord.aurora.nord13; # blue - color4 = settings.nord.frost.nord10; - color12 = settings.nord.frost.nord10; + color4 = settings.theme.nord.frost.nord10; + color12 = settings.theme.nord.frost.nord10; # magenta - color5 = settings.nord.aurora.nord15; - color13 = settings.nord.aurora.nord15; + color5 = settings.theme.nord.aurora.nord15; + color13 = settings.theme.nord.aurora.nord15; # cyan - color6 = settings.nord.frost.nord8; - color14 = settings.nord.frost.nord8; + color6 = settings.theme.nord.frost.nord8; + color14 = settings.theme.nord.frost.nord8; # white - color7 = settings.nord.snowStorm.nord5; - color15 = settings.nord.snowStorm.nord4; + color7 = settings.theme.nord.snowStorm.nord5; + color15 = settings.theme.nord.snowStorm.nord4; }; }; } diff --git a/modules/desktop-environments/hyprland/config/mako/default.nix b/modules/desktop-environments/hyprland/config/mako/default.nix index 99a1a73..aeaf82a 100755 --- a/modules/desktop-environments/hyprland/config/mako/default.nix +++ b/modules/desktop-environments/hyprland/config/mako/default.nix @@ -18,10 +18,10 @@ in max-icon-size = 64; default-timeout = 5000; - background-color = settings.nord.polarNight.nord0; - text-color = settings.nord.snowStorm.nord6; - border-color = settings.nord.frost.nord10; - progress-color = "over ${settings.nord.frost.nord8}"; + background-color = settings.theme.nord.polarNight.nord0; + text-color = settings.theme.nord.snowStorm.nord6; + border-color = settings.theme.nord.frost.nord10; + progress-color = "over ${settings.theme.nord.frost.nord8}"; }; }; } diff --git a/modules/desktop-environments/hyprland/config/nwg-dock/default.nix b/modules/desktop-environments/hyprland/config/nwg-dock/default.nix index 39f45c3..24dfd3e 100644 --- a/modules/desktop-environments/hyprland/config/nwg-dock/default.nix +++ b/modules/desktop-environments/hyprland/config/nwg-dock/default.nix @@ -6,11 +6,11 @@ in home.file = { ".config/nwg-dock-hyprland/drawer.css".text = '' window { - background: ${settings.nord.polarNight.nord0}; + background: ${settings.theme.nord.polarNight.nord0}; border-radius: 10px; border-style: none; border-width: 1px; - border-color: ${settings.nord.aurora.nord15}b0 + border-color: ${settings.theme.nord.aurora.nord15}b0 } #box { @@ -21,14 +21,14 @@ in active { /* This is to underline the button representing the currently active window */ border-bottom: solid 1px; - border-color: ${settings.nord.aurora.nord14}1a + border-color: ${settings.theme.nord.aurora.nord14}1a } button, image { background: none; border-style: none; box-shadow: none; - color: ${settings.nord.frost.nord10} + color: ${settings.theme.nord.frost.nord10} } button { @@ -40,7 +40,7 @@ in } button:hover { - background-color: ${settings.nord.polarNight.nord0}1a; + background-color: ${settings.theme.nord.polarNight.nord0}1a; border-radius: 2px; } diff --git a/modules/desktop-environments/hyprland/config/nwg-drawer/default.nix b/modules/desktop-environments/hyprland/config/nwg-drawer/default.nix index ed50947..26d1a91 100644 --- a/modules/desktop-environments/hyprland/config/nwg-drawer/default.nix +++ b/modules/desktop-environments/hyprland/config/nwg-drawer/default.nix @@ -6,13 +6,13 @@ in home.file = { ".config/nwg-drawer/drawer.css".text = '' window { - background-color: ${settings.nord.polarNight.nord0}bf; - color: ${settings.nord.snowStorm.nord5}00 + background-color: ${settings.theme.nord.polarNight.nord0}bf; + color: ${settings.theme.nord.snowStorm.nord5}00 } /* search entry */ entry { - background-color: ${settings.nord.polarNight.nord1}0f + background-color: ${settings.theme.nord.polarNight.nord1}0f } button, image { @@ -21,7 +21,7 @@ in } button:hover { - background-color: ${settings.nord.frost.nord10}1a + background-color: ${settings.theme.nord.frost.nord10}1a } /* in case you wanted to give category buttons a different look */ @@ -31,12 +31,12 @@ in #pinned-box { padding-bottom: 5px; - border-bottom: 1px dotted ${settings.nord.polarNight.nord3} + border-bottom: 1px dotted ${settings.theme.nord.polarNight.nord3} } #files-box { padding: 5px; - border: 1px dotted ${settings.nord.polarNight.nord3}; + border: 1px dotted ${settings.theme.nord.polarNight.nord3}; border-radius: 15px } ''; diff --git a/modules/desktop-environments/hyprland/config/waybar/default.nix b/modules/desktop-environments/hyprland/config/waybar/default.nix index 502b46a..9a0a528 100755 --- a/modules/desktop-environments/hyprland/config/waybar/default.nix +++ b/modules/desktop-environments/hyprland/config/waybar/default.nix @@ -1,34 +1,11 @@ { pkgs, hyprlandSettings, ... }: let settings = import ../../settings.nix { inherit pkgs; }; - - defaultOpacity = "opacity: 0.85;"; - defaultBorderRadius = "border-radius: 1rem;"; - defaultCenterOptions = '' - padding-top: 0.5rem; - padding-bottom: 0.5rem; - padding-left: 0.5rem; - padding-right: 0.5rem; - margin: 3px 0; - ''; - borderRight = '' - padding-top: 0.5rem; - padding-bottom: 0.5rem; - 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.5rem; - padding-bottom: 0.5rem; - padding-left: 0.5rem; - padding-right: 0.5rem; - margin: 3px 0; - border-radius: 1rem 0rem 0rem 1rem; - margin-left: 0.5rem; - ''; + defaultOpacity = settings.theme.waybar.defaultOpacity; + defaultBorderRadius = settings.theme.waybar.defaultBorderRadius; + defaultCenterOptions = settings.theme.waybar.defaultCenterOptions; + borderLeft = settings.theme.waybar.borderLeft; + borderRight = settings.theme.waybar.borderRight; in { imports = [ @@ -43,7 +20,7 @@ in systemd.enable = true; settings = { mainBar = { - layer = "top"; + layer = hyprlandSettings.waybar.layer; position = "top"; mod = "dock"; exclusive = true; @@ -56,21 +33,6 @@ in modules-center = [ "hyprland/window" ]; - # modules-right = [ - # "tray" - # "custom/lights" - # "temperature" - # "temperature#gpu" - # "keyboard-state#capslock" - # "keyboard-state#numlock" - # "wireplumber#sink" - # "wireplumber#source" - # "bluetooth" - # "idle_inhibitor" - # "clock" - # "custom/weather" - # ]; - modules-right = hyprlandSettings.waybar.modules-right; # Module Definitions @@ -96,15 +58,6 @@ in spacing = 10; }; - "custom/lights" = { - tooltip = false; - exec = "waybar-hass --get_light light.living_room_lights"; - interval = "once"; - format = "{text}";#"󱉓"; - on-click = "waybar-hass --toggle_light light.living_room_lights"; - return-type = "json"; - }; - temperature = { hwmon-path = "/sys/class/hwmon/hwmon4/temp1_input"; critical-threshold = 100; @@ -242,10 +195,10 @@ in calendar = { mode = "month"; format = { - months = "{}"; - days = "{}"; - weekdays = "{}"; - today = "{}"; + months = "{}"; + days = "{}"; + weekdays = "{}"; + today = "{}"; }; }; }; @@ -269,9 +222,12 @@ in exec = "waybar-weather"; return-type = "json"; }; - }; + } // hyprlandSettings.waybar.extraModules or { }; }; + # * { font-size: 13px; } + # window.eDP-1 * { font-size: 10px; } + style = '' * { font-family: @@ -283,12 +239,12 @@ in #waybar { background: transparent; - color: ${settings.nord.snowStorm.nord6}; + color: ${settings.theme.nord.snowStorm.nord6}; margin: 5px 5px; } #workspaces { - background-color: ${settings.nord.polarNight.nord0}; + background-color: ${settings.theme.nord.polarNight.nord0}; ${defaultBorderRadius} ${defaultOpacity} ${defaultCenterOptions} @@ -296,69 +252,69 @@ in } #workspaces button { - color: ${settings.nord.frost.nord10}; + color: ${settings.theme.nord.frost.nord10}; ${defaultBorderRadius} padding: 0.4rem; } #workspaces button.active { - color: ${settings.nord.frost.nord8}; + color: ${settings.theme.nord.frost.nord8}; ${defaultBorderRadius} } #workspaces button:hover { - color: ${settings.nord.frost.nord7}; + color: ${settings.theme.nord.frost.nord7}; ${defaultBorderRadius} } #workspaces button.focused { - color: ${settings.nord.snowStorm.nord6}; - background: ${settings.nord.aurora.nord13}; + color: ${settings.theme.nord.snowStorm.nord6}; + background: ${settings.theme.nord.aurora.nord13}; ${defaultBorderRadius} } #workspaces button.urgent { - color: ${settings.nord.polarNight.nord0}; - background: ${settings.nord.snowStorm.nord6}; + color: ${settings.theme.nord.polarNight.nord0}; + background: ${settings.theme.nord.snowStorm.nord6}; ${defaultBorderRadius} } #tooltip { - background: ${settings.nord.polarNight.nord0}; - border-color: ${settings.nord.polarNight.nord0}; + background: ${settings.theme.nord.polarNight.nord0}; + border-color: ${settings.theme.nord.polarNight.nord0}; ${defaultBorderRadius} border-width: 1rem; border-style: solid; } #window { - color: ${settings.nord.aurora.nord15}; - background-color: ${settings.nord.polarNight.nord0}; + color: ${settings.theme.nord.aurora.nord15}; + background-color: ${settings.theme.nord.polarNight.nord0}; ${defaultOpacity} ${defaultBorderRadius} ${defaultCenterOptions} - margin-left: 4rem; - margin-right: 100rem; + margin-left: ${hyprlandSettings.waybar.moduleStyle.window.margin-left or "4rem"}; + margin-right: ${hyprlandSettings.waybar.moduleStyle.window.margin-right or "4rem"}; } #custom-weather { - color: ${settings.nord.frost.nord10}; - background-color: ${settings.nord.polarNight.nord0}; + color: ${settings.theme.nord.frost.nord10}; + background-color: ${settings.theme.nord.polarNight.nord0}; ${defaultOpacity} ${borderRight} } #battery { - color: ${settings.nord.aurora.nord15}; - background-color: ${settings.nord.polarNight.nord0}; + color: ${settings.theme.nord.aurora.nord15}; + background-color: ${settings.theme.nord.polarNight.nord0}; ${defaultOpacity} ${defaultCenterOptions} border-radius: 0; } #clock { - color: ${settings.nord.frost.nord9}; - background-color: ${settings.nord.polarNight.nord0}; + color: ${settings.theme.nord.frost.nord9}; + background-color: ${settings.theme.nord.polarNight.nord0}; ${defaultOpacity} ${borderLeft} } @@ -366,91 +322,88 @@ in /* ------------- */ #idle_inhibitor { - color: ${settings.nord.frost.nord10}; - background-color: ${settings.nord.polarNight.nord0}; + color: ${settings.theme.nord.frost.nord10}; + background-color: ${settings.theme.nord.polarNight.nord0}; ${defaultOpacity} ${borderRight} } #network { - color: ${settings.nord.aurora.nord15}; - background-color: ${settings.nord.polarNight.nord0}; + color: ${settings.theme.nord.aurora.nord15}; + background-color: ${settings.theme.nord.polarNight.nord0}; ${defaultOpacity} - ${borderRight} + ${defaultCenterOptions} + border-radius: 0; padding-right: 15px; } #bluetooth { - color: ${settings.nord.frost.nord9}; - background-color: ${settings.nord.polarNight.nord0}; + color: ${settings.theme.nord.frost.nord9}; + background-color: ${settings.theme.nord.polarNight.nord0}; ${defaultOpacity} ${defaultCenterOptions} border-radius: 0; } #wireplumber.source { - color: ${settings.nord.frost.nord8}; - background-color: ${settings.nord.polarNight.nord0}; + color: ${settings.theme.nord.frost.nord8}; + background-color: ${settings.theme.nord.polarNight.nord0}; ${defaultOpacity} ${defaultCenterOptions} border-radius: 0; } #wireplumber.sink { - color: ${settings.nord.frost.nord7}; - background-color: ${settings.nord.polarNight.nord0}; + color: ${settings.theme.nord.frost.nord7}; + background-color: ${settings.theme.nord.polarNight.nord0}; ${defaultOpacity} ${defaultCenterOptions} border-radius: 0; } #keyboard-state.numlock { - color: ${settings.nord.frost.nord8}; - background-color: ${settings.nord.polarNight.nord0}; + color: ${settings.theme.nord.frost.nord8}; + background-color: ${settings.theme.nord.polarNight.nord0}; ${defaultOpacity} ${defaultCenterOptions} border-radius: 0; } #keyboard-state.capslock { - color: ${settings.nord.frost.nord9}; - background-color: ${settings.nord.polarNight.nord0}; + color: ${settings.theme.nord.frost.nord9}; + background-color: ${settings.theme.nord.polarNight.nord0}; ${defaultOpacity} ${defaultCenterOptions} border-radius: 0; } #temperature.gpu { - color: ${settings.nord.frost.nord10}; - background-color: ${settings.nord.polarNight.nord0}; + color: ${settings.theme.nord.frost.nord10}; + background-color: ${settings.theme.nord.polarNight.nord0}; ${defaultOpacity} ${defaultCenterOptions} border-radius: 0; } #temperature { - color: ${settings.nord.frost.nord9}; - background-color: ${settings.nord.polarNight.nord0}; + color: ${settings.theme.nord.frost.nord9}; + background-color: ${settings.theme.nord.polarNight.nord0}; ${defaultOpacity} - ${borderLeft} - } - - #custom-lights { - color: ${settings.nord.frost.nord8}; - background-color: ${settings.nord.polarNight.nord0}; - ${defaultOpacity} - ${borderLeft} + ${hyprlandSettings.waybar.moduleStyle.temperature.location or defaultCenterOptions} + border-radius: ${hyprlandSettings.waybar.moduleStyle.temperature.border-radius or "0"} } /* ------------- */ #tray { - background-color: ${settings.nord.polarNight.nord0}; + background-color: ${settings.theme.nord.polarNight.nord0}; ${defaultOpacity} ${defaultCenterOptions} ${defaultBorderRadius} margin-right: 1rem; } - ''; + + /* ------------- */ + '' + hyprlandSettings.waybar.extraModulesStyle or ''''; }; } diff --git a/modules/desktop-environments/hyprland/config/wlogout/default.nix b/modules/desktop-environments/hyprland/config/wlogout/default.nix index c0fd8da..38c56fa 100644 --- a/modules/desktop-environments/hyprland/config/wlogout/default.nix +++ b/modules/desktop-environments/hyprland/config/wlogout/default.nix @@ -49,13 +49,13 @@ in } window { - background-color: ${settings.nord.polarNight.nord0}f0 + background-color: ${settings.theme.nord.polarNight.nord0}f0 } button { margin: 8px; - color: ${settings.nord.frost.nord7}; - background-color: ${settings.nord.polarNight.nord1}; + color: ${settings.theme.nord.frost.nord7}; + background-color: ${settings.theme.nord.polarNight.nord1}; border-style: solid; border-width: 2px; background-repeat: no-repeat; @@ -66,8 +66,8 @@ in button:active, button:focus, button:hover { - color: ${settings.nord.frost.nord8}; - background-color: ${settings.nord.polarNight.nord2}; + color: ${settings.theme.nord.frost.nord8}; + background-color: ${settings.theme.nord.polarNight.nord2}; outline-style: none; } diff --git a/modules/desktop-environments/hyprland/config/wofi/default.nix b/modules/desktop-environments/hyprland/config/wofi/default.nix index 958831c..b11e6c42 100755 --- a/modules/desktop-environments/hyprland/config/wofi/default.nix +++ b/modules/desktop-environments/hyprland/config/wofi/default.nix @@ -15,9 +15,9 @@ in window { margin: 0px; padding: 10px; - border: 0.16em solid ${settings.nord.aurora.nord15}; + border: 0.16em solid ${settings.theme.nord.aurora.nord15}; border-radius: 0.1em; - background-color: ${settings.nord.polarNight.nord0}; + background-color: ${settings.theme.nord.polarNight.nord0}; } /* Inner Box */ @@ -25,7 +25,7 @@ in margin: 5px; padding: 10px; border: none; - background-color: ${settings.nord.polarNight.nord0}; + background-color: ${settings.theme.nord.polarNight.nord0}; } /* Outer Box */ @@ -33,7 +33,7 @@ in margin: 5px; padding: 10px; border: none; - background-color: ${settings.nord.polarNight.nord0}; + background-color: ${settings.theme.nord.polarNight.nord0}; } /* Scroll */ @@ -41,7 +41,7 @@ in margin: 0px; padding: 10px; border: none; - background-color: ${settings.nord.polarNight.nord0}; + background-color: ${settings.theme.nord.polarNight.nord0}; } /* Input */ @@ -50,46 +50,46 @@ in padding: 10px; border: none; border-radius: 0.1em; - color: ${settings.nord.snowStorm.nord6}; - background-color: ${settings.nord.polarNight.nord0}; + color: ${settings.theme.nord.snowStorm.nord6}; + background-color: ${settings.theme.nord.polarNight.nord0}; } #input image { border: none; - color: ${settings.nord.aurora.nord11}; + color: ${settings.theme.nord.aurora.nord11}; } #input * { - outline: 4px solid ${settings.nord.aurora.nord11}!important; + outline: 4px solid ${settings.theme.nord.aurora.nord11}!important; } /* Text */ #text { margin: 5px; border: none; - color: ${settings.nord.snowStorm.nord6}; + color: ${settings.theme.nord.snowStorm.nord6}; } #entry { - background-color: ${settings.nord.polarNight.nord0}; + background-color: ${settings.theme.nord.polarNight.nord0}; } #entry arrow { border: none; - color: ${settings.nord.aurora.nord15}; + color: ${settings.theme.nord.aurora.nord15}; } /* Selected Entry */ #entry:selected { - border: 0.11em solid ${settings.nord.aurora.nord15}; + border: 0.11em solid ${settings.theme.nord.aurora.nord15}; } #entry:selected #text { - color: ${settings.nord.frost.nord7}; + color: ${settings.theme.nord.frost.nord7}; } #entry:drop(active) { - background-color: ${settings.nord.aurora.nord15}!important; + background-color: ${settings.theme.nord.aurora.nord15}!important; } ''; }; diff --git a/modules/desktop-environments/hyprland/home.nix b/modules/desktop-environments/hyprland/home.nix index a21bd3c..53a150a 100755 --- a/modules/desktop-environments/hyprland/home.nix +++ b/modules/desktop-environments/hyprland/home.nix @@ -98,10 +98,7 @@ in enable = true; settings = { preload = [ "/run/wallpaper.jpg" wallpaper ]; - wallpaper = [ - "${settings.displayLeft.input}, /run/wallpaper.jpg" - "${settings.displayRight.input}, /run/wallpaper.jpg" - ]; + wallpaper = hyprlandSettings.wallpaper; splash = false; }; }; diff --git a/modules/desktop-environments/hyprland/settings.nix b/modules/desktop-environments/hyprland/settings.nix index 20f4c29..7ed19c7 100644 --- a/modules/desktop-environments/hyprland/settings.nix +++ b/modules/desktop-environments/hyprland/settings.nix @@ -1,5 +1,6 @@ { pkgs, ... }: let + nord = import ./theme.nix; themeSize = "compact"; # [ "standard" "compact" ] themeAccent = "all"; # [ "default" "purple" "pink" "red" "orange" "yellow" "green" "teal" "grey" "all" ] themeVariant = "nord"; # [ "nord" "dracula" "gruvbox" "everforest" "catppuccin" "all" "black" "rimless" "normal" "float" ] @@ -103,38 +104,5 @@ in imageViewer = pkgs.gnome-photos; }; - # Nord colors - # Opacity Hex alpha - # 100% FF - # 75% BF - # 50% 80 - # 25% 40 - # 10% 1A - # 0% 00 - nord = { - polarNight = { - nord0 = "#2e3440"; - nord1 = "#3b4252"; - nord2 = "#434c5e"; - nord3 = "#4c566a"; - }; - snowStorm = { - nord4 = "#d8dee9"; - nord5 = "#e5e9f0"; - nord6 = "#eceff4"; - }; - frost = { - nord7 = "#8fbcbb"; - nord8 = "#88c0d0"; - nord9 = "#81a1c1"; - nord10 = "#5e81ac"; - }; - aurora = { - nord11 = "#bf616a"; - nord12 = "#d08770"; - nord13 = "#ebcb8b"; - nord14 = "#a3be8c"; - nord15 = "#b48ead"; - }; - }; + theme = nord; } \ No newline at end of file diff --git a/modules/desktop-environments/hyprland/theme.nix b/modules/desktop-environments/hyprland/theme.nix new file mode 100644 index 0000000..2afe6a4 --- /dev/null +++ b/modules/desktop-environments/hyprland/theme.nix @@ -0,0 +1,66 @@ +{ + # Nord colors + # Opacity Hex alpha + # 100% FF + # 75% BF + # 50% 80 + # 25% 40 + # 10% 1A + # 0% 00 + nord = { + polarNight = { + nord0 = "#2e3440"; + nord1 = "#3b4252"; + nord2 = "#434c5e"; + nord3 = "#4c566a"; + }; + snowStorm = { + nord4 = "#d8dee9"; + nord5 = "#e5e9f0"; + nord6 = "#eceff4"; + }; + frost = { + nord7 = "#8fbcbb"; + nord8 = "#88c0d0"; + nord9 = "#81a1c1"; + nord10 = "#5e81ac"; + }; + aurora = { + nord11 = "#bf616a"; + nord12 = "#d08770"; + nord13 = "#ebcb8b"; + nord14 = "#a3be8c"; + nord15 = "#b48ead"; + }; + }; + + waybar = { + defaultOpacity = "opacity: 0.85;"; + defaultBorderRadius = "border-radius: 1rem;"; + defaultCenterOptions = '' + padding-top: 0.5rem; + padding-bottom: 0.5rem; + padding-left: 0.5rem; + padding-right: 0.5rem; + margin: 3px 0; + ''; + borderRight = '' + padding-top: 0.5rem; + padding-bottom: 0.5rem; + 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.5rem; + padding-bottom: 0.5rem; + padding-left: 0.5rem; + padding-right: 0.5rem; + margin: 3px 0; + border-radius: 1rem 0rem 0rem 1rem; + margin-left: 0.5rem; + ''; + }; +} \ No newline at end of file