From 28d174b485e793c1cb03600ab9a3bfb9c76cf597 Mon Sep 17 00:00:00 2001 From: Alejandro Soto Date: Sat, 11 Oct 2025 12:37:40 -0600 Subject: home/desktop: switch to the trivionomicon's waybar module --- home/desktop/default.nix | 1 - home/desktop/sway.nix | 13 ++- home/desktop/waybar.nix | 201 ----------------------------------------------- 3 files changed, 11 insertions(+), 204 deletions(-) delete mode 100644 home/desktop/waybar.nix diff --git a/home/desktop/default.nix b/home/desktop/default.nix index 1224bcc..5f2d34e 100644 --- a/home/desktop/default.nix +++ b/home/desktop/default.nix @@ -10,7 +10,6 @@ in { ./athena.nix ./firefox.nix ./sway.nix - ./waybar.nix ]; options.local.desktop = { diff --git a/home/desktop/sway.nix b/home/desktop/sway.nix index d363e11..40fd83a 100644 --- a/home/desktop/sway.nix +++ b/home/desktop/sway.nix @@ -8,13 +8,22 @@ with lib; let cfg = config.local.desktop; in { config = mkIf cfg.enable { + local = { + waybar = { + enable = true; + + battery = cfg.portable; + + fontSize = "24px"; + fontFamily = "Hack Nerd Font"; + }; + }; + home.packages = [ pkgs.wlr-randr ]; programs = { - waybar.enable = true; - wofi.enable = true; }; diff --git a/home/desktop/waybar.nix b/home/desktop/waybar.nix deleted file mode 100644 index dcb7df3..0000000 --- a/home/desktop/waybar.nix +++ /dev/null @@ -1,201 +0,0 @@ -# https://git.posixlycorrect.com/fabian/nix/src/branch/master/home/modules/gui/waybar.nix -{ - config, - lib, - pkgs, - ... -}: -with lib; let - cfg = config.local.desktop; - laptop = config.local.desktop.portable; -in { - config = mkIf cfg.enable { - programs.waybar = { - enable = true; - settings = { - mainBar = { - layer = "top"; - position = "top"; - height = 20; - spacing = 0; - - modules-left = [ - "sway/workspaces" - "sway/mode" - ]; - modules-center = [ - "clock" - ]; - - modules-right = - [ - "keyboard-state" - "privacy" - "cpu" - "memory" - "disk" - "temperature" - "tray" - ] - ++ lists.optionals laptop [ - "battery" - ]; - battery = mkIf laptop { - format = "{capacity}% {icon}"; - format-plugged = "{capacity}% 󱐥{icon}"; - format-icons = ["󰂃" "󰁺" "󰁻" "󰁼" "󰁽" "󰁾" "󰁿" "󰂀" "󰂁" "󰂂" "󰁹"]; - states = { - warning = 20; - critical = 10; - }; - }; - keyboard-state = { - capslock = true; - format.capslock = "{icon}"; - format-icons = { - locked = "󰘲 "; - unlocked = ""; - }; - }; - tray = { - icon-size = 13; - spacing = 8; - }; - clock = { - interval = 60; - format = "{:%A %B %d %Y %H:%M}"; - tooltip = false; - }; - cpu = { - format = " {usage}%"; - tooltip = false; - }; - memory = { - format = " {percentage}% "; - tooltip = true; - tooltip-format = "{used}/{total}"; - }; - disk = { - format = " {specific_used:0.0f}/{specific_total:0.0f}"; - unit = "GiB"; - tooltip = false; - }; - privacy = { - icon-size = 12; - }; - }; - }; - style = '' - * { - font-family: "JetBrainsMono Nerd Font", monospace; - font-size: 12px; - font-weight: 500; - border: none; - box-shadow: none; - } - - /* Entire bar: fully transparent, no border */ - window#waybar { - background: transparent; - color: #eaeaea; - margin: 0; - padding: 0; - } - - /* Optional: small edge breathing room (comment out if you want edge-to-edge) */ - /* window#waybar { margin: 3px 6px 0 6px; } */ - - /* Module containers */ - .modules-left, .modules-center, .modules-right { - padding: 0; - margin: 0 6px; - } - - /* Subtle separators between modules (no boxes) */ - .modules-left > widget:not(:first-child), - .modules-center > widget:not(:first-child), - .modules-right > widget:not(:first-child) { - margin-left: 12px; - padding-left: 12px; - border-left: 1px solid rgba(255, 255, 255, 0.08); - } - - /* Tightest possible workspaces */ - #workspaces { padding: 0; margin: 0; } - #workspaces button { - margin: 0; - padding: 0 3px; - min-width: 0; - border-radius: 0; - background: transparent; - color: #cfcfcf; - } - #workspaces button:hover { - background: rgba(255, 255, 255, 0.06); - } - #workspaces button.active, - #workspaces button.focused { - background: rgba(255, 255, 255, 0.10); - color: #ffffff; - box-shadow: inset 0 -2px #ffffff; - } - #workspaces button.urgent { - background: rgba(255, 80, 80, 0.25); - box-shadow: inset 0 -2px #ff5050; - } - - /* Focused window title: single line, no glow */ - #window { - padding: 0 6px; - margin: 0; - color: #dedede; - } - - /* Sway mode indicator: visible only when active, no bloat */ - #mode { - padding: 0 6px; - margin: 0; - background: rgba(255, 255, 255, 0.10); - color: #ffffff; - box-shadow: inset 0 -2px #ffffff; - } - - /* Status modules — keep them flat and compact */ - #clock, #battery, #network, #pulseaudio, #backlight, #cpu, #memory, #temperature, #tray { - padding: 0 6px; - margin: 0; - background: transparent; - color: #eaeaea; - } - - /* States (battery, network, audio) */ - #battery.charging { color: #27f902; } - #battery.warning:not(.charging) { color: #fc8b02; } - #battery.critical:not(.charging) { color: #fc0000; } - - #network.disconnected { color: #ffb4b4; } - #pulseaudio.muted { color: #9aa0a6; } - - /* Tray: compress icons */ - #tray > .passive { opacity: 0.6; } - #tray > .needs-attention { opacity: 1; } - - /* Tooltips: clean and readable */ - tooltip { - background: rgba(30, 30, 30, 0.95); - border: 1px solid rgba(255, 255, 255, 0.08); - color: #eaeaea; - padding: 6px 8px; - } - - /* Remove any leftover borders around everything */ - #custom-*, #idle_inhibitor, #privacy, #bluetooth { - border: none; - background: transparent; - margin: 0; - padding: 0 6px; - } - ''; - }; - }; -} -- cgit v1.2.3