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;
+ }
+ '';
};
}