From e52fbce169892e03308c876573b9222b7170dcc8 Mon Sep 17 00:00:00 2001 From: Kyle Brown Date: Sat, 2 Dec 2023 14:57:20 -0800 Subject: [PATCH] fix: Cleanup --- .gitignore | 1 + common/style/stylix.nix | 2 +- flake.nix | 10 +- home-manager/modules/hyprland.nix | 2 +- home-manager/modules/waybar.nix | 256 +++++++++++++++++++----------- 5 files changed, 168 insertions(+), 103 deletions(-) diff --git a/.gitignore b/.gitignore index b2be92b..726d2d6 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ result +.direnv diff --git a/common/style/stylix.nix b/common/style/stylix.nix index 8da06bf..ac9f89e 100644 --- a/common/style/stylix.nix +++ b/common/style/stylix.nix @@ -37,7 +37,7 @@ }; emoji = { - package = pkgs.noto-fonts-emoji; + package = pkgs.noto-fonts-color-emoji; name = "Noto Color Emoji"; }; }; diff --git a/flake.nix b/flake.nix index 828473c..7aa92fc 100644 --- a/flake.nix +++ b/flake.nix @@ -122,10 +122,12 @@ homeConfigurations = { "kdb424@cubert" = mkHome [./home-manager/machines/cubert.nix] nixpkgs.legacyPackages.aarch64-darwin; "kdb424@farnsworth" = mkHome [./home-manager/machines/headless.nix] nixpkgs.legacyPackages.aarch64-linux; - "kdb424@zapp" = mkHome [ - stylix.homeManagerModules.stylix - ./home-manager/machines/headless.nix - ] nixpkgs.legacyPackages.x86_64-linux; + "kdb424@zapp" = + mkHome [ + stylix.homeManagerModules.stylix + ./home-manager/machines/headless.nix + ] + nixpkgs.legacyPackages.x86_64-linux; }; }; diff --git a/home-manager/modules/hyprland.nix b/home-manager/modules/hyprland.nix index 050ea2c..25c8d9b 100644 --- a/home-manager/modules/hyprland.nix +++ b/home-manager/modules/hyprland.nix @@ -39,7 +39,7 @@ general = { gaps_in = 5; - gaps_out = 16; + gaps_out = 8; resize_on_border = true; hover_icon_on_border = false; layout = "master"; diff --git a/home-manager/modules/waybar.nix b/home-manager/modules/waybar.nix index 1abef3b..0244595 100644 --- a/home-manager/modules/waybar.nix +++ b/home-manager/modules/waybar.nix @@ -17,116 +17,178 @@ else if osConfig.networking.hostName == "amy" then "/sys/class/hwmon/hwmon4/temp1_input" else ""; - + colors = config.lib.stylix.colors.withHashtag; + primaryColor = colors.base04; + altColor = colors.base0C; in { - programs.waybar.enable = true; + programs.waybar = { + enable = true; - programs.waybar.settings = { - mainBar = { - layer = "top"; - position = "top"; - height = 24; - modules-left = ["hyprland/workspaces" "wlr/taskbar"]; - modules-center = ["hyprland/window" "gamemode"]; - modules-right = ["network" "pulseaudio" "disk" "cpu" "temperature" "memory" "battery" "tray" "clock"]; + settings = { + mainBar = { + layer = "top"; + position = "top"; + height = 24; + spacing = 8; + margin = "2px 2px 0px 2px"; + modules-left = ["hyprland/workspaces"]; + modules-center = ["hyprland/window" "gamemode"]; + modules-right = ["network" "cpu" "temperature" "memory" "disk" "pulseaudio" "battery" "tray" "clock" "privacy"]; - "hyprland/workspaces" = { - sort-by-number = true; - on-click = "activate"; - format = "{icon}"; - persistent-workspaces = { - "1" = "[]"; - "2" = "[]"; - "3" = "[]"; - "4" = "[]"; + "hyprland/window" = { + format = "{}"; }; - format-icons = { - "urgent" = ""; - "active" = ""; - "default" = ""; + + "hyprland/workspaces" = { + sort-by-number = true; + on-click = "activate"; + format = "{icon}"; + persistent-workspaces = { + "1" = "[]"; + "2" = "[]"; + "3" = "[]"; + "4" = "[]"; + }; + format-icons = { + "urgent" = ""; + "active" = ""; + "default" = ""; + }; }; - }; - "tray"."spacing" = 2; + "tray"."spacing" = 2; - "clock" = { - format = " {:%a %b %d %R}"; - }; - - "cpu" = { - "interval" = 2; - "format" = "{usage}%  {avg_frequency}GHz"; - "on-click" = "${pkgs.alacritty}/bin/alacritty -e ${pkgs.bottom}/bin/btm"; - }; - - "battery" = { - "bat" = "BAT0"; - "states" = { - "good" = 95; - "warning" = 30; - "critical" = 15; + "clock" = { + format = " {:%R} "; + "format-alt" = " {:%a, %b %d, %Y %R} "; + "tooltip-format" = "{calendar}"; + "calendar" = { + "mode" = "year"; + "mode-mon-col" = 3; + "weeks-pos" = "right"; + "on-scroll" = 1; + "on-click-right" = "mode"; + "format" = { + "months" = "{}"; + "days" = "{}"; + "weeks" = "W{}"; + "weekdays" = "{}"; + "today" = "{}"; + }; + }; + "actions" = { + "on-click-right" = "mode"; + "on-scroll-up" = "shift_up"; + "on-scroll-down" = "shift_down"; + }; }; - "format" = "{capacity}% {icon} "; - "format-full" = ""; - "format-icons" = ["" "" "" "" ""]; - }; - "memory" = { - "format" = "{used:0.1f}G/{total:0.1f}G  "; - "on-click" = "${pkgs.alacritty}/bin/alacritty -e ${pkgs.bottom}/bin/btm"; - }; - - "disk" = { - "format" = "{used}/{total} "; - "path" = "/"; - }; - - "network" = { - "interface" = "${networkInterface.eth}"; - "interval" = 2; - "format-ethernet" = "Up: {bandwidthUpBits} Down: {bandwidthDownBits}  "; - "tooltip-format-ethernet" = "{ifname}  "; - "format-wifi" = "Up: {bandwidthUpBits} Down: {bandwidthDownBits} {essid} ({signalStrength}%)  "; - "tooltip-format-wifi" = "{ifname} {essid} ({signalStrength}%) "; - "format-disconnected" = "Disconnected ⚠"; - "on-click" = "${pkgs.alacritty}/bin/alacritty -e ${pkgs.networkmanager}/bin/nmtui"; - }; - - "pulseaudio" = { - "format" = "{volume}% {icon} "; - "format-bluetooth" = "{volume}% {icon} "; - "format-muted" = ""; - "format-icons" = { - "headphones" = ""; - "handsfree" = ""; - "headset" = ""; - "phone" = ""; - "portable" = ""; - "car" = ""; - "default" = ["" ""]; + "cpu" = { + "interval" = 2; + "format" = "{usage}%  {avg_frequency}GHz"; + "on-click" = "${pkgs.alacritty}/bin/alacritty -e ${pkgs.bottom}/bin/btm"; }; - "on-click" = "${pkgs.pavucontrol}/bin/pavucontrol"; - }; - "temperature" = { - "hwmon-path" = "${hwmon}"; - "format" = "{}°C"; - "critical-threshold" = 80; - "on-click" = "${pkgs.alacritty}/bin/alacritty -e ${pkgs.bottom}/bin/btm"; - }; + "battery" = { + "bat" = "BAT0"; + "states" = { + "good" = 95; + "warning" = 30; + "critical" = 15; + }; + "format" = "{capacity}% {icon}"; + "format-full" = ""; + "format-icons" = [ + "" + "" + "" + "" + "" + ]; + }; - "gamemode" = { - "format" = "{glyph}"; - "format-alt" = "{glyph} {count}"; - "glyph" = ""; - "hide-not-running" = true; - "use-icon" = true; - "icon-name" = "input-gaming-symbolic"; - "icon-spacing" = 4; - "icon-size" = 20; - "tooltip" = true; - "tooltip-format" = "Games running: {count}"; + "memory" = { + "format" = "{used:0.1f}G/{total:0.1f}G "; + "on-click" = "${pkgs.alacritty}/bin/alacritty -e ${pkgs.bottom}/bin/btm"; + }; + + "disk" = { + "format" = "{used}/{total} "; + "path" = "/"; + }; + + "network" = { + "interface" = "${networkInterface.eth}"; + "interval" = 2; + "format-ethernet" = "Up: {bandwidthUpBits} Down: {bandwidthDownBits} "; + "tooltip-format-ethernet" = "{ifname} "; + "format-wifi" = "Up: {bandwidthUpBits} Down: {bandwidthDownBits} {essid} ({signalStrength}%) "; + "tooltip-format-wifi" = "{ifname} {essid} ({signalStrength}%) "; + "format-disconnected" = "Disconnected ⚠"; + "on-click" = "${pkgs.alacritty}/bin/alacritty -e ${pkgs.networkmanager}/bin/nmtui"; + }; + + "pulseaudio" = { + "format" = "{volume}% {icon}"; + "format-bluetooth" = "{volume}% {icon}"; + "format-muted" = ""; + "format-icons" = { + "headphones" = ""; + "handsfree" = ""; + "headset" = ""; + "phone" = ""; + "portable" = ""; + "car" = ""; + "default" = [ + "" + "" + ]; + }; + "on-click" = "${pkgs.pavucontrol}/bin/pavucontrol"; + }; + + "temperature" = { + "hwmon-path" = "${hwmon}"; + "format" = "{}°C"; + "critical-threshold" = 80; + "on-click" = "${pkgs.alacritty}/bin/alacritty -e ${pkgs.bottom}/bin/btm"; + }; + + "gamemode" = { + "format" = "{glyph}"; + "format-alt" = "{glyph} {count}"; + "glyph" = ""; + "hide-not-running" = true; + "use-icon" = true; + "icon-name" = "input-gaming-symbolic"; + "icon-spacing" = 4; + "icon-size" = 20; + "tooltip" = true; + "tooltip-format" = "Games running: {count}"; + }; + "privacy" = { + "icon-size" = 20; + "icon-spacing" = 4; + "transition-duration" = 250; + "modules" = [ + { + "type" = "screenshare"; + "tooltip" = true; + "tooltip-icon-size" = 24; + } + { + "type" = "audio-in"; + "tooltip" = true; + "tooltip-icon-size" = 24; + } + ]; + }; }; }; + style = '' + window#waybar { + border-radius: 5px; + } + ''; }; }