From f924d92f1bbcaafa17b113294f5011f9ba8ae956 Mon Sep 17 00:00:00 2001 From: Bernardo Magri Date: Mon, 6 Jul 2026 21:24:42 +0100 Subject: [PATCH] fix(themes): restore lost Nerd Font glyphs in executive-slate + boreal bars MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The whole-swap waybar.jsonc for both themes shipped with every Nerd Font private-use glyph dropped to an empty string — the launcher (U+F000), the power button (U+F011), and all pulseaudio / battery / notification format-icons — so the bars rendered with those icons blank. The glyphs were lost when the files were first written; restored here from the known-good generated bar (waybar.nix) and summer-night, verified by codepoint: launcher U+F000, power U+F011, notification bells U+F009A-C, full battery/volume icon sets. (Files re-dumped with ensure_ascii=False, so the module arrays are now multi-line — content only, no layout change.) V1: strict JSON + builtins.fromJSON parse both (13 right-modules each); comprehensive scan reports zero empty glyph fields; flake check green. Found while sweeping the branch: summer-night/day carry the same empty notification format-icons (pre-existing, untouched here) — flagged for a separate fix. Co-Authored-By: Claude Opus 4.8 --- themes/boreal/waybar.jsonc | 109 +++++++++++++++------------ themes/executive-slate/waybar.jsonc | 111 ++++++++++++++++------------ 2 files changed, 126 insertions(+), 94 deletions(-) diff --git a/themes/boreal/waybar.jsonc b/themes/boreal/waybar.jsonc index 1bab55b..c417747 100644 --- a/themes/boreal/waybar.jsonc +++ b/themes/boreal/waybar.jsonc @@ -8,29 +8,44 @@ "position": "top", "spacing": 4, "reload_style_on_change": true, - - "modules-left": ["custom/nomarchy", "clock", "clock#date"], - "modules-center": ["hyprland/workspaces"], - "modules-right": ["custom/recording", "custom/updates", "custom/doctor", "idle_inhibitor", "custom/nightlight", "hyprland/language", "custom/vpn", "pulseaudio", "battery", "custom/powerprofile", "tray", "custom/notification", "custom/powermenu"], - + "modules-left": [ + "custom/nomarchy", + "clock", + "clock#date" + ], + "modules-center": [ + "hyprland/workspaces" + ], + "modules-right": [ + "custom/recording", + "custom/updates", + "custom/doctor", + "idle_inhibitor", + "custom/nightlight", + "hyprland/language", + "custom/vpn", + "pulseaudio", + "battery", + "custom/powerprofile", + "tray", + "custom/notification", + "custom/powermenu" + ], "custom/nomarchy": { "interval": "once", - "format": "", + "format": "", "on-click": "nomarchy-menu", "tooltip-format": "Nomarchy menu" }, - "clock": { "format": "{:%H:%M}", "tooltip": true, "tooltip-format": "{:%Z (UTC%z)}\n{calendar}" }, - "clock#date": { "format": "{:%a %d %b}", "tooltip": false }, - "hyprland/workspaces": { "disable-scroll": true, "all-outputs": true, @@ -38,7 +53,6 @@ "on-scroll-up": "hyprctl dispatch workspace r+1", "on-scroll-down": "hyprctl dispatch workspace r-1" }, - "custom/recording": { "return-type": "json", "interval": 10, @@ -46,7 +60,6 @@ "exec": "nomarchy-record status", "on-click": "nomarchy-record stop" }, - "custom/updates": { "return-type": "json", "interval": 1800, @@ -54,83 +67,86 @@ "exec": "nomarchy-updates status", "on-click": "sh -c '$TERMINAL -e nomarchy-updates upgrade'" }, - "custom/doctor": { "return-type": "json", "interval": 300, "exec": "nomarchy-doctor-status", "on-click": "nomarchy-menu doctor" }, - "idle_inhibitor": { "format": "{icon}", "format-icons": { - "activated": "󰅶", - "deactivated": "󰾪" + "activated": " 󰅶 ", + "deactivated": " 󰾪 " } }, - "custom/nightlight": { "return-type": "json", "interval": 3, "exec": "nomarchy-nightlight status", "on-click": "nomarchy-nightlight toggle" }, - "hyprland/language": { "format": "󰌌 {short}", "tooltip": false }, - "custom/vpn": { "return-type": "json", "interval": 5, "exec": "nomarchy-vpn-status", "on-click": "nomarchy-vpn" }, - "pulseaudio": { "scroll-step": 5, "format": "{icon} {volume}%", - "format-bluetooth": "{icon} {volume}%", - "format-bluetooth-muted": "{icon} muted", - "format-muted": " muted", + "format-bluetooth": "{icon} {volume}%", + "format-bluetooth-muted": " {icon}", + "format-muted": " muted", "format-icons": { - "headphone": "", - "hands-free": "", - "headset": "", - "phone": "", - "portable": "", - "car": "", - "default": ["", "", ""] + "headphone": "", + "hands-free": "", + "headset": "", + "phone": "", + "portable": "", + "car": "", + "default": [ + "", + "", + "" + ] }, "on-click": "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle", "tooltip-format": "{desc} | {volume}%" }, - "battery": { "interval": 30, - "states": { "warning": 25, "critical": 10 }, + "states": { + "warning": 25, + "critical": 10 + }, "format": "{icon} {capacity}%", - "format-charging": " {capacity}%", - "format-plugged": " {capacity}%", - "format-icons": ["", "", "", "", ""], + "format-charging": " {capacity}%", + "format-plugged": " {capacity}%", + "format-icons": [ + "", + "", + "", + "", + "" + ], "on-click": "nomarchy-menu power", "tooltip-format": "Battery status" }, - "custom/powerprofile": { "return-type": "json", "interval": 5, "exec": "nomarchy-powerprofile-status", "on-click": "nomarchy-powerprofile-cycle" }, - "tray": { "icon-size": 15, "spacing": 10 }, - "custom/notification": { "format": "{icon}", "return-type": "json", @@ -141,19 +157,18 @@ "on-click": "swaync-client -t -sw", "on-click-right": "swaync-client -d -sw", "format-icons": { - "none": "", - "notification": "", - "dnd-none": "", - "dnd-notification": "", - "inhibited-none": "", - "inhibited-notification": "", - "dnd-inhibited-none": "", - "dnd-inhibited-notification": "" + "none": "󰂜", + "notification": "󰂚", + "dnd-none": "󰂛", + "dnd-notification": "󰂛", + "inhibited-none": "󰂜", + "inhibited-notification": "󰂚", + "dnd-inhibited-none": "󰂛", + "dnd-inhibited-notification": "󰂛" } }, - "custom/powermenu": { - "format": "", + "format": "", "on-click": "nomarchy-menu power", "tooltip": false } diff --git a/themes/executive-slate/waybar.jsonc b/themes/executive-slate/waybar.jsonc index 1d7d9a8..22d37eb 100644 --- a/themes/executive-slate/waybar.jsonc +++ b/themes/executive-slate/waybar.jsonc @@ -8,18 +8,35 @@ "position": "top", "spacing": 0, "reload_style_on_change": true, - - "modules-left": ["custom/nomarchy", "hyprland/workspaces", "clock#date"], - "modules-center": ["clock"], - "modules-right": ["custom/recording", "idle_inhibitor", "custom/nightlight", "hyprland/language", "custom/updates", "pulseaudio", "custom/powerprofile", "battery", "custom/vpn", "custom/doctor", "custom/notification", "tray", "custom/powermenu"], - + "modules-left": [ + "custom/nomarchy", + "hyprland/workspaces", + "clock#date" + ], + "modules-center": [ + "clock" + ], + "modules-right": [ + "custom/recording", + "idle_inhibitor", + "custom/nightlight", + "hyprland/language", + "custom/updates", + "pulseaudio", + "custom/powerprofile", + "battery", + "custom/vpn", + "custom/doctor", + "custom/notification", + "tray", + "custom/powermenu" + ], "custom/nomarchy": { "interval": "once", "format": "", "on-click": "nomarchy-menu", "tooltip-format": "Nomarchy menu" }, - "hyprland/workspaces": { "disable-scroll": true, "all-outputs": true, @@ -27,18 +44,15 @@ "on-scroll-up": "hyprctl dispatch workspace r+1", "on-scroll-down": "hyprctl dispatch workspace r-1" }, - "clock": { "format": "{:%H:%M}", "tooltip": true, "tooltip-format": "{:%Z (UTC%z)}\n{calendar}" }, - "clock#date": { "format": "{:%a %d %b}", "tooltip": false }, - "custom/recording": { "return-type": "json", "interval": 10, @@ -46,27 +60,23 @@ "exec": "nomarchy-record status", "on-click": "nomarchy-record stop" }, - "idle_inhibitor": { "format": "{icon}", "format-icons": { - "activated": "󰅶", - "deactivated": "󰾪" + "activated": " 󰅶 ", + "deactivated": " 󰾪 " } }, - "custom/nightlight": { "return-type": "json", "interval": 3, "exec": "nomarchy-nightlight status", "on-click": "nomarchy-nightlight toggle" }, - "hyprland/language": { "format": "󰌌 {short}", "tooltip": false }, - "custom/updates": { "return-type": "json", "interval": 1800, @@ -74,58 +84,65 @@ "exec": "nomarchy-updates status", "on-click": "sh -c '$TERMINAL -e nomarchy-updates upgrade'" }, - "pulseaudio": { "scroll-step": 5, "format": "{icon} {volume}%", - "format-bluetooth": "{icon} {volume}%", - "format-bluetooth-muted": "{icon} muted", - "format-muted": " muted", + "format-bluetooth": "{icon} {volume}%", + "format-bluetooth-muted": " {icon}", + "format-muted": " muted", "format-icons": { - "headphone": "", - "hands-free": "", - "headset": "", - "phone": "", - "portable": "", - "car": "", - "default": ["", "", ""] + "headphone": "", + "hands-free": "", + "headset": "", + "phone": "", + "portable": "", + "car": "", + "default": [ + "", + "", + "" + ] }, "on-click": "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle", "tooltip-format": "{desc} | {volume}%" }, - "custom/powerprofile": { "return-type": "json", "interval": 5, "exec": "nomarchy-powerprofile-status", "on-click": "nomarchy-powerprofile-cycle" }, - "battery": { "interval": 30, - "states": { "warning": 25, "critical": 10 }, + "states": { + "warning": 25, + "critical": 10 + }, "format": "{icon} {capacity}%", - "format-charging": " {capacity}%", - "format-plugged": " {capacity}%", - "format-icons": ["", "", "", "", ""], + "format-charging": " {capacity}%", + "format-plugged": " {capacity}%", + "format-icons": [ + "", + "", + "", + "", + "" + ], "on-click": "nomarchy-menu power", "tooltip-format": "Battery status" }, - "custom/vpn": { "return-type": "json", "interval": 5, "exec": "nomarchy-vpn-status", "on-click": "nomarchy-vpn" }, - "custom/doctor": { "return-type": "json", "interval": 300, "exec": "nomarchy-doctor-status", "on-click": "nomarchy-menu doctor" }, - "custom/notification": { "format": "{icon}", "return-type": "json", @@ -136,21 +153,21 @@ "on-click": "swaync-client -t -sw", "on-click-right": "swaync-client -d -sw", "format-icons": { - "none": "", - "notification": "", - "dnd-none": "", - "dnd-notification": "", - "inhibited-none": "", - "inhibited-notification": "", - "dnd-inhibited-none": "", - "dnd-inhibited-notification": "" + "none": "󰂜", + "notification": "󰂚", + "dnd-none": "󰂛", + "dnd-notification": "󰂛", + "inhibited-none": "󰂜", + "inhibited-notification": "󰂚", + "dnd-inhibited-none": "󰂛", + "dnd-inhibited-notification": "󰂛" } }, - - "tray": { "spacing": 8 }, - + "tray": { + "spacing": 8 + }, "custom/powermenu": { - "format": "", + "format": "", "on-click": "nomarchy-menu power", "tooltip": false }