From 927d48de14f692799abfb1ee27da46b20dcd181d Mon Sep 17 00:00:00 2001 From: andrey_varnavskiy Date: Tue, 26 Nov 2024 06:15:19 +0500 Subject: [PATCH] add waybar configuration --- home-manager/modules/default.nix | 1 + home-manager/modules/hyprland/main.nix | 2 +- home-manager/modules/waybar/default.nix | 6 ++ home-manager/modules/waybar/main.nix | 87 +++++++++++++++++++++++++ 4 files changed, 95 insertions(+), 1 deletion(-) create mode 100644 home-manager/modules/waybar/default.nix create mode 100644 home-manager/modules/waybar/main.nix diff --git a/home-manager/modules/default.nix b/home-manager/modules/default.nix index b277b4f..f36676a 100644 --- a/home-manager/modules/default.nix +++ b/home-manager/modules/default.nix @@ -5,5 +5,6 @@ ./hyprland ./zsh.nix ./tmux.nix + ./waybar ]; } diff --git a/home-manager/modules/hyprland/main.nix b/home-manager/modules/hyprland/main.nix index 3e5c35d..9a518f3 100644 --- a/home-manager/modules/hyprland/main.nix +++ b/home-manager/modules/hyprland/main.nix @@ -11,7 +11,7 @@ exec-once = [ "swww-daemon" "swww img ~/Downloads/wp.png" - "sleep 5 && waybar -c ~/.config/waybar/config.json" + "sleep 5 && waybar" "wl-paste --type text --watch cliphist store" "wl-paste --type image --watch cliphist store" ]; diff --git a/home-manager/modules/waybar/default.nix b/home-manager/modules/waybar/default.nix new file mode 100644 index 0000000..b29af5d --- /dev/null +++ b/home-manager/modules/waybar/default.nix @@ -0,0 +1,6 @@ +{ + imports = [ + ./main.nix + # ./styles.nix + ]; +} diff --git a/home-manager/modules/waybar/main.nix b/home-manager/modules/waybar/main.nix new file mode 100644 index 0000000..59deb5e --- /dev/null +++ b/home-manager/modules/waybar/main.nix @@ -0,0 +1,87 @@ +{ + programs.waybar = { + enable = true; + settings = { + mainBar = { + layer = "top"; + position = "top"; + height = 30; + modules-left = ["hyprland/workspaces"]; + modules-center = ["hyprland/window"]; + modules-right = ["hyprland/language" "custom/weather" "pulseaudio" "battery" "clock" "tray"]; + "hyprland/workspaces" = { + disable-scroll = true; + all-outputs = false; + format = "{icon}"; + format-icons = { + "1" = ""; + "2" = ""; + "3" = ""; + "4" = ""; + "5" = ""; + "6" = ""; + "7" = ""; + "8" = ""; + "9" = ""; + }; + + persistent-workspaces = { + "*" = 9; + }; + }; + + + "hyprland/language" = { + format-en = "🇺🇸"; + format-ru = "🇷🇺"; + min-length = 5; + tooltip = false; + }; + + "custom/weather" = { + format = " {} "; + exec = "curl -s 'wttr.in/Tashkent?format=%c%t'"; + interval = 300; + class = "weather"; + }; + + "battery" = { + states = { + warning = 30; + critical = 1; + }; + format = "{icon} {capacity}%"; + format-charging = " {capacity}%"; + format-alt = "{time} {icon}"; + format-icons = ["" "" "" "" ""]; + }; + + "tray" = { + icon-size = 14; + spacing = 1; + }; + + "clock" = { + format = "{:%d.%m.%Y - %H:%M}"; + format-alt = "{:%A, %B %d at %R}"; + }; + + "pulseaudio" = { + format = "{icon} {volume}%"; + format-bluetooth = "{icon} {volume}% "; + format-muted = ""; + format-icons = { + "headphones" = ""; + "handsfree" = ""; + "headset" = ""; + "phone" = ""; + "portable" = ""; + "car" = ""; + "default" = ["" ""]; + }; + on-click = "pavucontrol"; + }; + }; + }; + }; +}