# Waybar changelog > A highly customizable status bar for Wayland compositors. - Vendor: Waybar - Category: Operating Systems - Platforms: Linux - Official site: https://github.com/Alexays/Waybar - Tracked by: What's New (https://whatsnew.fyi/product/waybar) - Harvested from: GitHub (Alexays/Waybar) - Entries below: 10 (newest first) What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. ## Releases ### 0.15.0 - Date: 2026-02-06 - Version: 0.15.0 - Original notes: https://github.com/Alexays/Waybar/releases/tag/0.15.0 - Permalink: https://whatsnew.fyi/product/waybar/releases/0.15.0 - Labels: Platforms: Linux - **fixed** — Close SNI menu on item destruction - **fixed** — Handle null GDK window reference in surface initialization - **fixed** — Hide vacant tags on initial startup in river module - **fixed** — Fix appearing of hidden workspaces in ext/workspaces - **fixed** — Temperature critical style not being removed - **changed** — Clock module now supports independent clock tooltip formatting - **fixed** — Clock module fix for blank line at the end of the timezone list - **fixed** — Clock use after scope error - **fixed** — Prevent child zombie process from tearing down Hyprland IPC - **added** — Support millisecond precision for script intervals - **fixed** — Expanding wildcards in config includes - **fixed** — Module and tray item staying in hover state after opening menu - **fixed** — Display icons for userwide installed applications - **changed** — Hyprland workspaces taskbar improvements - **added** — CSS classes for niri/language module - **added** — ISO 8601 calendar to clock module - **fixed** — Correct error in converting network speed units - **fixed** — Right and middle button not working in ext/workspace module - **fixed** — Memory leak by removing old CSS provider before reloading CSS styles - **fixed** — Backlight module gracefully handle null epoll device - **fixed** — Prevent duplicate layer surfaces on monitor hotplug ##### What's Changed * fix: close sni menu on item destruction by @notpeelz in https://github.com/Alexays/Waybar/pull/4476 * Fix example in waybar-niri-language.5.scd by @stefonarch in https://github.com/Alexays/Waybar/pull/4495 * fix: handle null GDK window reference in surface initialization by @coleleavitt in https://github.com/Alexays/Waybar/pull/4485 * fix: changed *waybar-styles(5)" to *waybar-styles(5)* in the last line by @RQuarx in https://github.com/Alexays/Waybar/pull/4488 * fix(river): hide vacant tags on initial startup by @LordMZTE in https://github.com/Alexays/Waybar/pull/4474 * docs(temperature): add missed `warning` style by @dmyTRUEk in https://github.com/Alexays/Waybar/pull/4452 * ext/workspaces: fix appearing of hidden workspaces by @jp7677 in https://github.com/Alexays/Waybar/pull/4437 * Cava backend. Comminication using signals by @LukashonakV in https://github.com/Alexays/Waybar/pull/4493 * fix(temperature): critical style not being removed by @dmyTRUEk in https://github.com/Alexays/Waybar/pull/4457 * feat(makefile): support more detailed test output by @khaneliman in https://github.com/Alexays/Waybar/pull/4380 * Clock Module: Independent clock tooltip formatting and fix for blank line at the end of the timezone list by @guttermonk in https://github.com/Alexays/Waybar/pull/4447 * flake.lock: Update by @github-actions[bot] in https://github.com/Alexays/Waybar/pull/4428 * docs: fix waybar menu example and formatting by @PedroManse in https://github.com/Alexays/Waybar/pull/4414 * clock: fix use after scope by @lfos in https://github.com/Alexays/Waybar/pull/4410 * Prevent child zombie process from tearing down Hyprland IPC by @lfos in https://github.com/Alexays/Waybar/pull/4408 * Support millisecond precision for script intervals by @aidansunbury in https://github.com/Alexays/Waybar/pull/4390 * bugfix: expanding wildcards in config includes (#4354) by @Arkoniak in https://github.com/Alexays/Waybar/pull/4373 * Moved workspace id failing to parse from an error to part of the trace by @labruzese in https://github.com/Alexays/Waybar/pull/4358 * fix(flake): fix formatter configuration by @khaneliman in https://github.com/Alexays/Waybar/pull/4371 * Fix module and tray item staying in hover state after opening menu by @rellimn in https://github.com/Alexays/Waybar/pull/4372 * fix: display icons for userwide installed applications by @seschwar in https://github.com/Alexays/Waybar/pull/4387 * [hyprland/workspaces] Taskbar improvements by @pol-rivero in https://github.com/Alexays/Waybar/pull/4395 * feat(niri/language): add CSS classes by @workflow in https://github.com/Alexays/Waybar/pull/4507 * Fix: style: show active workspace on hyprland by @kolayne in https://github.com/Alexays/Waybar/pull/4458 * Fix: styling: set gamemode icon size and spacing to 0 if use-icon is false by @winkelnp in https://github.com/Alexays/Waybar/pull/4448 * feat: Add ISO 8601 calendar to clock module by @edeustua in https://github.com/Alexays/Waybar/pull/4246 * Fixes #4521 and #4522 by @lairez in https://github.com/Alexays/Waybar/pull/4525 * fix: Correct the error in converting network speed units by @DreamMaoMao in https://github.com/Alexays/Waybar/pull/4518 * fix: right and middle button not work in ext/workspace module by @DreamMaoMao in https://github.com/Alexays/Waybar/pull/4516 * Fix Hyprland IPC thread sanitizer warning, other IPC & general fixes by @zjeffer in https://github.com/Alexays/Waybar/pull/4359 * fix: resolve memory leak by removing old CSS provider before reloading CSS styles by @NicolasBuchin in https://github.com/Alexays/Waybar/pull/4560 * fix(pulseaudio-slider): Use `background` in CSS example by @carljustineoyales in https://github.com/Alexays/Waybar/pull/4559 * fix: FMT version update from 11.0.2 to 12.0.0 by @kosa12 in https://github.com/Alexays/Waybar/pull/4546 * backlight: gracefully handle a null epoll device by @aanderse in https://github.com/Alexays/Waybar/pull/4541 * cava bump _[Truncated at 4000 characters — full notes: https://github.com/Alexays/Waybar/releases/tag/0.15.0]_ ### 0.14.0 - Date: 2025-08-08 - Version: 0.14.0 - Original notes: https://github.com/Alexays/Waybar/releases/tag/0.14.0 - Permalink: https://whatsnew.fyi/product/waybar/releases/0.14.0 - Labels: Platforms: Linux - **fixed** — Fix default icon in tray module - **fixed** — Fix hyprland/language layout parsing - **fixed** — Make 'ethernet' network state have precedence over 'disabled' - **changed** — Change default tooltip for the battery module - **added** — Enable pango markup support for tooltip of battery and pulseaudio modules - **fixed** — Prevent persistent workspaces from being duplicated if they exist - **changed** — Respect gtk color scheme variant for gtk css variable - **fixed** — Fix hyprland named persistent workspaces - **added** — Add rfkill network setting - **added** — Add a way to override electron app tray icons - **fixed** — Fix unable to disable upower's tooltip - **added** — Implement workspace taskbars in hyprland/workspaces - **added** — Add uri and filename format arguments to mpd - **changed** — Port ext/workspaces from wlr/workspaces to ext-workspace-v1 for labwc support - **added** — Match network interfaces by their altnames - **added** — Set layout name as class in river - **added** — Implement idempotent bar show/hide via configurable user kill signals - **fixed** — Hide tray when there are no non-passive icons - **added** — Add OpenBSD support - **added** — Implement reverse-scroll in sway/workspaces ##### What's Changed * Fix default icon in tray module by @Invertisment in https://github.com/Alexays/Waybar/pull/4234 * fix hyprland/language layout parsing by @mexanoz in https://github.com/Alexays/Waybar/pull/4242 * fix: 'ethernet' network state should have precedence over 'disabled' by @notpeelz in https://github.com/Alexays/Waybar/pull/4258 * flake.lock: Update by @github-actions[bot] in https://github.com/Alexays/Waybar/pull/4256 * Change default tooltip for the battery module. by @tpaau-17DB in https://github.com/Alexays/Waybar/pull/4274 * enabled pango markup support for tooltip of battery and pulseaudio modules by @hritix in https://github.com/Alexays/Waybar/pull/4284 * fix: prevent persistent workspaces from being duplicated if they exist… by @acarl005 in https://github.com/Alexays/Waybar/pull/4275 * respect gtk color scheme variant for gtk css variable by @nraffp in https://github.com/Alexays/Waybar/pull/4292 * fix: hyprland named persistent workspaces by @labruzese in https://github.com/Alexays/Waybar/pull/4272 * Fix #4307 by @arnaud-ma in https://github.com/Alexays/Waybar/pull/4310 * adding dependency command for arch by @csskevin in https://github.com/Alexays/Waybar/pull/4298 * feat: add rfkill network setting by @notpeelz in https://github.com/Alexays/Waybar/pull/4260 * feat: add a way to override electron app tray icons by @blackxored in https://github.com/Alexays/Waybar/pull/4161 * style: clang-format by @notpeelz in https://github.com/Alexays/Waybar/pull/4315 * fix: unable to disable upower's tooltip by @erikeah in https://github.com/Alexays/Waybar/pull/4316 * [hyprland/workspaces] Implement workspace taskbars by @pol-rivero in https://github.com/Alexays/Waybar/pull/3868 * flake.lock: Update by @github-actions[bot] in https://github.com/Alexays/Waybar/pull/4337 * mpd: add uri and filename format arguments by @haansn08 in https://github.com/Alexays/Waybar/pull/3849 * ext/workspaces: port from wlr/workspaces to ext-workspace-v1 for a.o. labwc support by @jp7677 in https://github.com/Alexays/Waybar/pull/4016 * feat: match network interfaces by their altnames by @notpeelz in https://github.com/Alexays/Waybar/pull/4326 * feat(river): set layout name as class by @proycon in https://github.com/Alexays/Waybar/pull/4080 * Idempotent bar show/hide via configurable user kill signals by @Invertisment in https://github.com/Alexays/Waybar/pull/3930 * fix: hide tray when there are no non-passive icons by @Bahnschrift in https://github.com/Alexays/Waybar/pull/3833 * add openbsd support by @rwsalie in https://github.com/Alexays/Waybar/pull/4278 * sway/workspaces: Implement reverse-scroll by @xb-bx in https://github.com/Alexays/Waybar/pull/3929 * Relative paths in included configs by @Arkoniak in https://github.com/Alexays/Waybar/pull/4333 * battery: Add support for battery level related events by @markx86 in https://github.com/Alexays/Waybar/pull/4208 * wireplumber & backlight: fix states and support for microphone by @M0streng0 in https://github.com/Alexays/Waybar/pull/4319 ##### New Contributors * @Invertisment made their first contribution in https://github.com/Alexays/Waybar/pull/4234 * @mexanoz made their first contribution in https://github.com/Alexays/Waybar/pull/4242 * @tpaau-17DB made their first contribution in https://github.com/Alexays/Waybar/pull/4274 * @hritix made their first contribution in https://github.com/Alexays/Waybar/pull/4284 * @acarl005 made their first contribution in https://github.com/Alexays/Waybar/pull/4275 * @nraffp made their first contribution in https://github.com/Alexays/Waybar/pull/4292 * @labruzese made their first contribution in https://github.com/Alexays/Waybar/pull/4272 * @arnaud-ma made their first contribution in https://github.com/Alexays/Waybar/pull/4310 * @csskevin made their first contribution in https://github.com/Alexays/Waybar/pull/4298 * @blackxored made their first contribution in https://github.com/Alexays/Waybar/pull/4161 * @erike _[Truncated at 4000 characters — full notes: https://github.com/Alexays/Waybar/releases/tag/0.14.0]_ ### 0.13.0 - Date: 2025-06-23 - Version: 0.13.0 - Original notes: https://github.com/Alexays/Waybar/releases/tag/0.13.0 - Permalink: https://whatsnew.fyi/product/waybar/releases/0.13.0 - Labels: Platforms: Linux - **fixed** — Use dev.cpu temperature sysctl on FreeBSD - **added** — Add source support to wireplumber module - **added** — Add login-proxy option - **changed** — CFFI always returns config values as JSON - **added** — Provide an option to show ipv4, ipv6 or both in network module - **fixed** — Fix incorrect type for weeks-pos in waybar-clock man page - **changed** — Migrate Hyprland workspace events to v2 - **added** — Add support for custom icons in systray - **added** — Add support for vertical orientation in privacy module - **fixed** — Fix manpage for backlight/slider - **fixed** — Fix crash in hyprland/workspaces - **fixed** — Support libcava 0.10.4 - **fixed** — Fix crash in audio_backend - **fixed** — Find icon by title as fallback in wlr/taskbar - **fixed** — Fix potential null pointer dereference in wireplumber - **fixed** — Fix workspace button not showing for tabbed/nested layouts in Sway - **fixed** — Fix memory leak for continuous scripts in custom module - **fixed** — Fix network frequency reported in GHz - **fixed** — Fix cldMonShift_ not getting initialized in Clock constructor - **fixed** — Fix length_error thrown in handleOutputDescription - **fixed** — Fix network module not displaying rfkill state ##### What's Changed * fix(FreeBSD): Use dev.cpu temperature sysctl by @lbartoletti in https://github.com/Alexays/Waybar/pull/4002 * Resolves #3092 Add source support to wireplumber module by @RowanLeeder in https://github.com/Alexays/Waybar/pull/3638 * add login-proxy option by @spectrum70 in https://github.com/Alexays/Waybar/pull/3995 * cffi: always return config values as JSON by @LawnGnome in https://github.com/Alexays/Waybar/pull/3969 * flake.lock: Update by @github-actions in https://github.com/Alexays/Waybar/pull/3961 * nix/default: disable version check by @khaneliman in https://github.com/Alexays/Waybar/pull/3970 * Provide an option to show ipv4, ipv6 or both by @voiceroy in https://github.com/Alexays/Waybar/pull/3959 * fix incorrect type for `weeks-pos` in waybar-clock man page by @teatwig in https://github.com/Alexays/Waybar/pull/4009 * Migrate Hyprland workspace events to v2 by @matt-fff in https://github.com/Alexays/Waybar/pull/3878 * Features/systray custom icons by @ChaosInfinited in https://github.com/Alexays/Waybar/pull/3941 * Add support for vertical orientation in privacy module by @bpandreotti in https://github.com/Alexays/Waybar/pull/3921 * flake.lock: Update by @github-actions in https://github.com/Alexays/Waybar/pull/4018 * fix manpage for backlight/slider by @RobertMueller2 in https://github.com/Alexays/Waybar/pull/4017 * hyprland/workspaces: fix crash by @khaneliman in https://github.com/Alexays/Waybar/pull/4024 * .github/workflows/clang-format: bump github action (fix clang-format check) by @khaneliman in https://github.com/Alexays/Waybar/pull/4026 * fix: support libcava 0.10.4 by @OriginCode in https://github.com/Alexays/Waybar/pull/4052 * audio_backend: fix crash by @khaneliman in https://github.com/Alexays/Waybar/pull/4045 * wlr/taskbar: find icon by title as fallback by @clemenscodes in https://github.com/Alexays/Waybar/pull/4042 * libCava bump: 0.10.4 by @LukashonakV in https://github.com/Alexays/Waybar/pull/4056 * nix: cava bump (fix nix build) by @khaneliman in https://github.com/Alexays/Waybar/pull/4058 * flake.nix: add treefmt; treewide: clang and nix format by @khaneliman in https://github.com/Alexays/Waybar/pull/4025 * wireplumber: fix potential nullpointer deref by @RobertMueller2 in https://github.com/Alexays/Waybar/pull/4032 * flake.lock: Update by @github-actions in https://github.com/Alexays/Waybar/pull/4075 * Sway Workspace: Fix workspace button not showing for tabbed/nested layouts by @ebeem in https://github.com/Alexays/Waybar/pull/4046 * Memory Fix for continuous scripts in custom module by @Talbrelliles in https://github.com/Alexays/Waybar/pull/4183 * fix: network frequency is reported in GHz by @notpeelz in https://github.com/Alexays/Waybar/pull/4189 * fix: `cldMonShift_` not getting initialized in `Clock()` constructor by @markx86 in https://github.com/Alexays/Waybar/pull/4202 * Dockerfiles: Use debian-slim for container by @stkth in https://github.com/Alexays/Waybar/pull/4205 * fix: length_error thrown in handleOutputDescription by @notpeelz in https://github.com/Alexays/Waybar/pull/4191 * fix: network module not displaying rfkill state by @notpeelz in https://github.com/Alexays/Waybar/pull/4190 * Fix Description= in systemd service file by @VannTen in https://github.com/Alexays/Waybar/pull/4154 * Fix gentoo CI build by @notpeelz in https://github.com/Alexays/Waybar/pull/4211 * ci: bump FreeBSD to 14.3 by @notpeelz in https://github.com/Alexays/Waybar/pull/4214 * fix: don't use c++20 chrono literals by @notpeelz in https://github.com/Alexays/Waybar/pull/4213 * Fix namespace pollution by @notpeelz in https://github.com/Alexays/Waybar/pull/4212 * Fix CI clang-format by @notpeelz in https://github.com/Alexays/Waybar/pull/4209 * modules: memory: Add swapState format argument by @stkth in https://github.com/Alexays/Waybar/pull/4204 * fix: MPRIS widget not hiding when no player is active by @markx86 in https://github.com/Alexays/Waybar/pull/4207 _[Truncated at 4000 characters — full notes: https://github.com/Alexays/Waybar/releases/tag/0.13.0]_ ### 0.12.0 - Date: 2025-02-21 - Version: 0.12.0 - Original notes: https://github.com/Alexays/Waybar/releases/tag/0.12.0 - Permalink: https://whatsnew.fyi/product/waybar/releases/0.12.0 - Labels: Platforms: Linux - **fixed** — Fix std::bad_cast errors in tray module - **fixed** — Return app_identifier as itself in AAppIconLabel if it's an absolute path - **fixed** — Fix Sway modes and wlr_scene support - **fixed** — Stop mixing manual and automatic arg indexing in custom module - **added** — Add format_silent option and css triggers to cava module - **fixed** — Set default value for cldYearShift_ to 1900/01/01 in Clock module - **added** — Add minimum brightness option to Backlight module - **fixed** — Fix crash after handling SIGINT and data race when initializing Hyprland workspace modules - **changed** — Update pulseaudio volume indicator on default output switch - **added** — Add warning threshold to temperature module - **fixed** — Fix hyprland's grouped window flags - **added** — Add stretching of modules and modules-center toggling - **fixed** — Fix null dereference due to unconstructed PrivacyNodeInfo - **changed** — Allow network module to handle ipv4 and ipv6 simultaneously - **changed** — Use X11 class for XWayland windows in sway/workspaces - **added** — Add locking for interacting with the pulseaudio thread - **changed** — Use 'auto' instead of 'self' in backlight module - **fixed** — Fix 'Mapping is not an object' warning in sway - **fixed** — Fix hyprland/window getting empty ipc json data - **fixed** — Escape markup characters in dwl/window - **fixed** — Fix compilation with libc++ - **fixed** — Never sleep cava when sleep_timer is 0 - **fixed** — Escape tray tooltip text - **added** — Allow using wildcards in config include paths - **added** — Add hide vacant tags config option on River - **fixed** — Hide upower module when specified device disconnected - **added** — Enable tooltip for hyprland window module - **fixed** — Fix workspacerules not taking into account defaultName - **fixed** — Fix battery runtime estimation with negative sysfs values - **fixed** — Fix Hyprland IPC issues - **fixed** — Fix urgent status for special workspaces in hyprland/workspaces - **changed** — Turn off ellipsize for niri/language module ##### What's Changed * Clarify documentation of 'rotate' option. by @hramrach in https://github.com/Alexays/Waybar/pull/3580 * Fix `std::bad_cast`s in tray module by @alebastr in https://github.com/Alexays/Waybar/pull/3604 * fix: return app_identifier as itself in AAppIconLabel if it's an absolute path by @ThatOneCalculator in https://github.com/Alexays/Waybar/pull/3613 * Fixes for Sway modes and wlr_scene support by @alebastr in https://github.com/Alexays/Waybar/pull/3528 * fix(custom): stop mixing manual and automatic arg indexing by @lukasfink1 in https://github.com/Alexays/Waybar/pull/3617 * cava: Add format_silent option and css triggers by @S0nter in https://github.com/Alexays/Waybar/pull/3523 * Fix: 3383. Clock. Default value for cldYearShift_ = 1900/01/01 by @LukashonakV in https://github.com/Alexays/Waybar/pull/3632 * nix: remove patches from downstream by @mslxl in https://github.com/Alexays/Waybar/pull/3640 * cava bump by @LukashonakV in https://github.com/Alexays/Waybar/pull/3646 * .github/workflows: don't run on forks by @khaneliman in https://github.com/Alexays/Waybar/pull/3651 * nix/default: cava bump by @khaneliman in https://github.com/Alexays/Waybar/pull/3650 * .github/workflows: allow forks to manually run flake lock update by @khaneliman in https://github.com/Alexays/Waybar/pull/3652 * #2275 Backlight: Add minimum brightness by @TripleTrable in https://github.com/Alexays/Waybar/pull/3637 * flake.lock: Update by @github-actions in https://github.com/Alexays/Waybar/pull/3658 * Fix a crash after handling SIGINT and a data race when initializing the Hyprland workspace modules by @cfillion in https://github.com/Alexays/Waybar/pull/3695 * pulseaudio: volume indicator update on default output switch by @findus in https://github.com/Alexays/Waybar/pull/3464 * Add warning threshold to temperature module by @PassiHD2004 in https://github.com/Alexays/Waybar/pull/3674 * Add signals section to manpage by @ArijanJ in https://github.com/Alexays/Waybar/pull/3758 * fix hyprland's grouped window flags by @Aqa-Ib in https://github.com/Alexays/Waybar/pull/3747 * flake.lock: Update by @github-actions in https://github.com/Alexays/Waybar/pull/3736 * Add stretching of modules and modules-center toggling by @TripleTrable in https://github.com/Alexays/Waybar/pull/3730 * fix null-deref due to unconstructed PrivacyNodeInfo by @deprekated in https://github.com/Alexays/Waybar/pull/3768 * flake.lock: Update by @github-actions in https://github.com/Alexays/Waybar/pull/3800 * Let network module handle ipv4 and ipv6 simultaneously by @gustafullberg in https://github.com/Alexays/Waybar/pull/3809 * sway/workspaces: use X11 class for XWayland windows by @majutsushi in https://github.com/Alexays/Waybar/pull/3801 * Add locking for interacting with the pulseaudio thread by @meithecatte in https://github.com/Alexays/Waybar/pull/3806 * Using 'auto' instead of 'self' in backlight module by @Nambers in https://github.com/Alexays/Waybar/pull/3808 * sway: fix "Mapping is not an object" warning by @c4rlo in https://github.com/Alexays/Waybar/pull/3831 * fix: hyprland/window get empty ipc json data by @DreamMaoMao in https://github.com/Alexays/Waybar/pull/3826 * Escape markup characters in dwl/window by @pope in https://github.com/Alexays/Waybar/pull/3827 * Update LICENSE, fix copyright license year by @JasonnnW3000 in https://github.com/Alexays/Waybar/pull/3860 * flake.lock: Update by @github-actions in https://github.com/Alexays/Waybar/pull/3859 * Fix compilation with libc++ by @AngryLoki in https://github.com/Alexays/Waybar/pull/3866 * fix: never sleep cava when sleep_timer is 0 by @alexlnkp in https://github.com/Alexays/Waybar/pull/3875 * Escape tray tooltip text by @pol-rivero in https://github.com/Alexays/Waybar/pull/3877 * Allow using wildcards in config include paths by @emar10 in https://github.com/Alexays/Waybar/pull/3862 * Hide vacant tags config option on River by @thetwistedlogic in https://github.com/A _[Truncated at 4000 characters — full notes: https://github.com/Alexays/Waybar/releases/tag/0.12.0]_ ### 0.11.0 - Date: 2024-09-13 - Version: 0.11.0 - Original notes: https://github.com/Alexays/Waybar/releases/tag/0.11.0 - Permalink: https://whatsnew.fyi/product/waybar/releases/0.11.0 - Labels: Platforms: Linux - **fixed** — Fix setVisible for bar - **changed** — Walk up symlink chain for configuration files - **fixed** — Shift only calendar in clock module - **fixed** — Fix revealer hover regression in group module - **fixed** — Handle offline CPUs and CPU hotplug - **fixed** — Expand menu file path before opening it - **changed** — Accept default-node-changed signals from wireplumber even if only the node ID is changed - **fixed** — Fix crash caused by use-after-free of bar instance - **fixed** — Check format-source before use - **changed** — Drop unnecessary getaddrinfo call in hyprland backend - **changed** — Send minimize geometry hints from taskbar - **fixed** — Fix upower module selection with multiple devices - **added** — Add HiDPI support for image module - **added** — Add niri/workspaces, niri/window, and niri/language modules ##### What's Changed * bar: fix setVisible by @khaneliman in https://github.com/Alexays/Waybar/pull/3459 * Walk up Symlink Chain by @DomCristaldi in https://github.com/Alexays/Waybar/pull/3462 * Issue #3414/clock: Shift ONLY calendar by @RobertMueller2 in https://github.com/Alexays/Waybar/pull/3457 * group: fix revealer hover regression by @khaneliman in https://github.com/Alexays/Waybar/pull/3500 * flake.lock: Update by @github-actions in https://github.com/Alexays/Waybar/pull/3493 * Handle offline CPUs and CPU hotplug by @gergo-salyi in https://github.com/Alexays/Waybar/pull/3499 * fix #3490: expand menu file before opening it by @yangyingchao in https://github.com/Alexays/Waybar/pull/3494 * Accept "default-node-changed" signals from wireplumber, even if only the node ID is changed by @hacrvlq in https://github.com/Alexays/Waybar/pull/3511 * fix crash caused by use bar instance after it is freed (use-after-free) by @yangyingchao in https://github.com/Alexays/Waybar/pull/3531 * fix: check format-source before use by @ilpianista in https://github.com/Alexays/Waybar/pull/3534 * hyprland/backend: drop unnecessary getaddrinfo call by @alebastr in https://github.com/Alexays/Waybar/pull/3527 * taskbar: Send minimize geometry hints by @soreau in https://github.com/Alexays/Waybar/pull/3506 * chore: update power_profiles_daemon.cpp by @eltociear in https://github.com/Alexays/Waybar/pull/3585 * flake.lock: Update by @github-actions in https://github.com/Alexays/Waybar/pull/3555 * fix/upower: upower module selection with multiple devices by @3u13r in https://github.com/Alexays/Waybar/pull/3554 * feat: hidpi support for image module by @saveman71 in https://github.com/Alexays/Waybar/pull/3565 * Add niri/workspaces, niri/window, niri/language by @YaLTeR in https://github.com/Alexays/Waybar/pull/3551 ##### New Contributors * @DomCristaldi made their first contribution in https://github.com/Alexays/Waybar/pull/3462 * @gergo-salyi made their first contribution in https://github.com/Alexays/Waybar/pull/3499 * @hacrvlq made their first contribution in https://github.com/Alexays/Waybar/pull/3511 * @soreau made their first contribution in https://github.com/Alexays/Waybar/pull/3506 * @3u13r made their first contribution in https://github.com/Alexays/Waybar/pull/3554 * @saveman71 made their first contribution in https://github.com/Alexays/Waybar/pull/3565 * @YaLTeR made their first contribution in https://github.com/Alexays/Waybar/pull/3551 **Full Changelog**: https://github.com/Alexays/Waybar/compare/0.10.4...0.11.0 ### 0.10.4 - Date: 2024-07-17 - Version: 0.10.4 - Original notes: https://github.com/Alexays/Waybar/releases/tag/0.10.4 - Permalink: https://whatsnew.fyi/product/waybar/releases/0.10.4 - Labels: Platforms: Linux - **fixed** — Fix hyprland/language events not working with keyboard names with commas in them - **changed** — Upower refactoring - **fixed** — Fix segmentation fault in Upower - **fixed** — Do not try to strcmp a variable that may be a null-pointer - **changed** — Cava $XDG_CONFIG_HOME validation - **fixed** — Fix crash in hyprland when failed to parse IPC message - **changed** — Hyprland refactor and cleanup - **fixed** — Fix Clock tooltip calendar text overflows - **added** — Add option to hide non-visible special workspaces in Hyprland/Workspaces - **fixed** — Fix format replacement names - **fixed** — Fix taskbar not applying empty class on empty - **fixed** — Correct behavior in sway/workspaces when current-only is set - **added** — Enable using capture groups in window-rewrite - **fixed** — Fix privacy to consider only configured modules - **fixed** — Fix mpris to hide on current player vanished - **added** — Support for muted icons for pulseaudio devices/ports - **added** — Add hotplug detection of bluetooth controllers - **fixed** — Fix device list not being updated on selecting new bluetooth controller - **added** — Add ability to have dropdown menu for modules - **added** — Add hide-empty-text option to hide module whenever output is empty but format is not - **added** — Add config option to select UPower device based on device model ##### What's Changed * Fix hyprland/language events not working with keyboard names with commas in them by @zjeffer in https://github.com/Alexays/Waybar/pull/3224 * Upower refactoring by @LukashonakV in https://github.com/Alexays/Waybar/pull/3220 * Upower. Fix segmentation fault by @LukashonakV in https://github.com/Alexays/Waybar/pull/3248 * Do not try to strcmp a variable that may be a null-pointer by @luttermann in https://github.com/Alexays/Waybar/pull/3266 * Cava. $XDG_CONFIG_HOME validation by @LukashonakV in https://github.com/Alexays/Waybar/pull/3278 * (hyprland) fix crash when failed to parse IPC message by @yangyingchao in https://github.com/Alexays/Waybar/pull/3289 * cava bump: 0.10.2 by @LukashonakV in https://github.com/Alexays/Waybar/pull/3294 * cava bump: 0.10.2 for nix by @unrealhoang in https://github.com/Alexays/Waybar/pull/3296 * hyprland: refactor and cleanup by @khaneliman in https://github.com/Alexays/Waybar/pull/3299 * Fix debian dockerfile by @zjeffer in https://github.com/Alexays/Waybar/pull/3258 * temperature: allow hwmon-path-abs as array by @rtgiskard in https://github.com/Alexays/Waybar/pull/3241 * clang-tidy fixes in the privacy module by @zjeffer in https://github.com/Alexays/Waybar/pull/3260 * Fix Clock. Tooltip calendar text overflows(#2240) by @LukashonakV in https://github.com/Alexays/Waybar/pull/3255 * Add GitHub action for nightly Docker image building by @zjeffer in https://github.com/Alexays/Waybar/pull/3259 * fix(#3211) change layer for mode invisible to nullopt by @VlctM in https://github.com/Alexays/Waybar/pull/3281 * workflows: add nix workflows by @JohnRTitor in https://github.com/Alexays/Waybar/pull/3306 * modules/hyprland/backend: use /tmp by @khaneliman in https://github.com/Alexays/Waybar/pull/3308 * treewide: meson deprecation and freebsd fixes by @khaneliman in https://github.com/Alexays/Waybar/pull/3309 * Hyprland/Workspaces: Added option to hide non-visible special workspaces by @alttabber in https://github.com/Alexays/Waybar/pull/3064 * Fix docker image build github action by @zjeffer in https://github.com/Alexays/Waybar/pull/3313 * Fix format replacement names by @jackwilsdon in https://github.com/Alexays/Waybar/pull/3317 * fix: taskbar not applying empty class on empty by @zspher in https://github.com/Alexays/Waybar/pull/3332 * sway/workspaces: Correct behavior when "current-only" is set by @pjones in https://github.com/Alexays/Waybar/pull/3336 * flake.lock: Update by @github-actions in https://github.com/Alexays/Waybar/pull/3318 * Organize tests and start Hyprland testing by @khaneliman in https://github.com/Alexays/Waybar/pull/3345 * Enable using capture groups in window-rewrite by @Eisfunke in https://github.com/Alexays/Waybar/pull/3331 * fix privacy: consider only configured modules by @rtgiskard in https://github.com/Alexays/Waybar/pull/3244 * fix mpris: hide on current player vanished by @rtgiskard in https://github.com/Alexays/Waybar/pull/3320 * Support for muted icons for pulseaudio devices/ports by @locked-out in https://github.com/Alexays/Waybar/pull/3353 * Add hotplug detection of bluetooth controllers by @lukasfink1 in https://github.com/Alexays/Waybar/pull/3360 * Fix device list not being updated on selecting new bluetooth controller by @lukasfink1 in https://github.com/Alexays/Waybar/pull/3362 * hyprland/workspaces: remove deprecated property by @khaneliman in https://github.com/Alexays/Waybar/pull/3364 * modules/battery: Deprioritize `capacity` /sys value for battery calculation if other methods are available by @OpenSauce04 in https://github.com/Alexays/Waybar/pull/3381 * modules/hyprland/backend: handle empty socket response by @khaneliman in https://github.com/Alexays/Waybar/pull/3389 * Adding the ability to have dropdown menu for modules by @benjamin-voisin in https://github.com/Alexays/Waybar/pull/3247 * flake.lock: Update by @github-actions in https://github.com/Alexays/Waybar/pull/3396 * add hide-empty-text optio _[Truncated at 4000 characters — full notes: https://github.com/Alexays/Waybar/releases/tag/0.10.4]_ ### 0.10.3 - Date: 2024-05-06 - Version: 0.10.3 - Original notes: https://github.com/Alexays/Waybar/releases/tag/0.10.3 - Permalink: https://whatsnew.fyi/product/waybar/releases/0.10.3 - Labels: Platforms: Linux - **fixed** — Fix {health} format replacement in battery module - **added** — Cursor changes to indicate module clickability - **fixed** — Fix segfault in upower by initializing lastWarningLevel - **fixed** — Fix Hyprland socketpath to work with XDG_RUNTIME_DIR - **fixed** — Fix build on FreeBSD for pipewire - **fixed** — Set cursor appropriately on user event hover - **fixed** — Fix Nix Flake overlay application - **fixed** — Fix custom module mediaplayer not respecting arguments - **added** — Style tray icon on hover - **fixed** — Fix tooltip-format on custom modules not working in some cases - **added** — Add hover effect for whole group - **fixed** — Remove listener when the window is destroyed ##### What's Changed * fix(battery): Fix `{health}` format replacement by @kiriDevs in https://github.com/Alexays/Waybar/pull/3167 * Cursor change to indicate module clickability by @bananaoomarang in https://github.com/Alexays/Waybar/pull/3108 * upower: fix segfault by initializing lastWarningLevel by @craftyguy in https://github.com/Alexays/Waybar/pull/3171 * Fix Hyprland socketpath changed to XDG_RUNTIME_DIR by @zjeffer in https://github.com/Alexays/Waybar/pull/3183 * pipewire: unbreak build on FreeBSD by @jbeich in https://github.com/Alexays/Waybar/pull/3193 * fix: set cursor appropriately on user event hover by @haug1 in https://github.com/Alexays/Waybar/pull/3195 * Nix Flake: Fix overlay (again) by @spikespaz in https://github.com/Alexays/Waybar/pull/3196 * fix: custom module mediaplayer doesn't respect argument by @stanly0726 in https://github.com/Alexays/Waybar/pull/3198 * flake: fix overlay not actually being applied by @spitulax in https://github.com/Alexays/Waybar/pull/3208 * feat(#3182): style tray icon on hover by @haug1 in https://github.com/Alexays/Waybar/pull/3203 * fix(#3210): tooltip-format on custom modules not working in some cases by @haug1 in https://github.com/Alexays/Waybar/pull/3213 * feat(#3174): hover for whole group by @haug1 in https://github.com/Alexays/Waybar/pull/3201 * Remove listener when the window is destroyed by @eyusupov in https://github.com/Alexays/Waybar/pull/3215 ##### New Contributors * @bananaoomarang made their first contribution in https://github.com/Alexays/Waybar/pull/3108 * @craftyguy made their first contribution in https://github.com/Alexays/Waybar/pull/3171 * @stanly0726 made their first contribution in https://github.com/Alexays/Waybar/pull/3198 * @spitulax made their first contribution in https://github.com/Alexays/Waybar/pull/3208 **Full Changelog**: https://github.com/Alexays/Waybar/compare/0.10.2...0.10.3 ### 0.10.2 - Date: 2024-04-23 - Version: 0.10.2 - Original notes: https://github.com/Alexays/Waybar/releases/tag/0.10.2 - Permalink: https://whatsnew.fyi/product/waybar/releases/0.10.2 - Labels: Platforms: Linux - **fixed** — Hover event did not propagate causing issues ##### What's Changed * fix(#3162): hover event did not propagate causing issues by @haug1 in https://github.com/Alexays/Waybar/pull/3165 **Full Changelog**: https://github.com/Alexays/Waybar/compare/0.10.1...0.10.2 ### 0.10.1 - Date: 2024-04-23 - Version: 0.10.1 - Original notes: https://github.com/Alexays/Waybar/releases/tag/0.10.1 - Permalink: https://whatsnew.fyi/product/waybar/releases/0.10.1 - Labels: Platforms: Linux - **fixed** — Correctly set initial visibility for power-profiles-daemon module - **fixed** — Use the correct thermal zone in FreeBSD - **fixed** — dwl tag crash when using wlr-randr to enable monitor - **added** — Hyprland workspaces hosting-monitor CSS class - **fixed** — Segfault in module - **fixed** — Consider floating nodes when checking for flags - **fixed** — Persistent class on buttons - **changed** — Right-click to cycle down power profiles daemon - **fixed** — wlr/taskbar crash on taskbar drag and drop event - **fixed** — sway/workspaces visible class doesn't work - **changed** — Update Wireplumber API to 0.5 - **added** — Empty workspace style for Sway - **added** — hyprland/workspaces new options to change on click behaviour and active workspace status - **added** — dwl/window module - **added** — Always on option for hyprland/submap - **added** — Upower warning level - **fixed** — Clock on-scroll value not being used for calendar - **fixed** — Reloading config - **fixed** — Alt format on group modules - **added** — battery format replacements {cycles} and {health} - **added** — calendar shift_reset action ##### What's Changed * fix(power-profiles-daemon): correctly set initial visibility by @alebastr in https://github.com/Alexays/Waybar/pull/3008 * README: tweak repology badge by @luzpaz in https://github.com/Alexays/Waybar/pull/3010 * Use the correct thermal zone in FreeBSD by @nicolarevelant in https://github.com/Alexays/Waybar/pull/3011 * fix:dwl tag crash when use wlr-randr enable monitor by @DreamMaoMao in https://github.com/Alexays/Waybar/pull/3015 * Hyprland workspaces `hosting-monitor` css class by @jramrath in https://github.com/Alexays/Waybar/pull/2968 * Fixed segfault by @tomben13 in https://github.com/Alexays/Waybar/pull/3023 * Also consider floating nodes when checking for flags by @hrdl-github in https://github.com/Alexays/Waybar/pull/3039 * Fix peristent class on buttons by @grimpy in https://github.com/Alexays/Waybar/pull/3037 * Make right-click to circle down ppd by @leiserfg in https://github.com/Alexays/Waybar/pull/3032 * fix(wlr/taskbar): crash on taskbar drag and drop event by @MauroGuida in https://github.com/Alexays/Waybar/pull/3049 * fix(sway/workspaces): visible class doesn't work by @MauroGuida in https://github.com/Alexays/Waybar/pull/3051 * Update Wireplumber API to 0.5 by @tokyovigilante in https://github.com/Alexays/Waybar/pull/2919 * Add empty workspace style for Sway by @wispl in https://github.com/Alexays/Waybar/pull/3034 * [hyprland/workspaces] New options to change on click behaviour and active workspace status by @tomben13 in https://github.com/Alexays/Waybar/pull/2987 * refactor(backlight): use concrete types for some helper functions by @staticssleever668 in https://github.com/Alexays/Waybar/pull/2638 * Add dwl/window module by @eyusupov in https://github.com/Alexays/Waybar/pull/3005 * Add always on option for hyprland/submap by @alttabber in https://github.com/Alexays/Waybar/pull/2917 * Upower warning level by @bartelsielski in https://github.com/Alexays/Waybar/pull/3028 * Fix clock on-scroll value not being used for calendar by @encbar5 in https://github.com/Alexays/Waybar/pull/3067 * Fix reloading config by @cptpcrd in https://github.com/Alexays/Waybar/pull/3076 * nix: build against wireplumber 0.5 by @iynaix in https://github.com/Alexays/Waybar/pull/3081 * (Fix) Alt format on group modules by @ordy in https://github.com/Alexays/Waybar/pull/3068 * fix(sway/workspaces): Visible class doesn't work on visible and empty workspaces by @MauroGuida in https://github.com/Alexays/Waybar/pull/3066 * refactor(privacy): clean up the module by @Kuruyia in https://github.com/Alexays/Waybar/pull/3082 * fix(sway/workspaces): floating_nodes and focused icon by @kkvark in https://github.com/Alexays/Waybar/pull/3099 * taskbar: search user directories first for desktop files by @dep4 in https://github.com/Alexays/Waybar/pull/3102 * Fix #3125 by @hvenev in https://github.com/Alexays/Waybar/pull/3128 * Add waybar-styles(5) manual page by @dkg in https://github.com/Alexays/Waybar/pull/3127 * Pipewire backend: use pipewire thread lock by @hrdl-github in https://github.com/Alexays/Waybar/pull/3136 * Remove unused variable in Workspaces::updateWindows by @rnestler in https://github.com/Alexays/Waybar/pull/3141 * calendar: add shift_reset action by @janpeterd in https://github.com/Alexays/Waybar/pull/3142 * Fixes for hyprland/workspaces by @tomben13 in https://github.com/Alexays/Waybar/pull/3143 * battery: Add {cycles}, {health} format replacements by @kiriDevs in https://github.com/Alexays/Waybar/pull/3130 * sway/workspaces: Fix scroll on unfocused monitor by @VAWVAW in https://github.com/Alexays/Waybar/pull/3148 * Escape tooltip in custom module by @joesri in https://github.com/Alexays/Waybar/pull/3147 * feat(#2989): (optional) hover for all modules by @haug1 in https://github.com/Alexays/Waybar/pull/3145 * fix: update clock tooltip without placeholders by @drendog in https://github.com/Alexays/Waybar/pull/3155 ##### New Contributors * @luzpaz made their first contributio _[Truncated at 4000 characters — full notes: https://github.com/Alexays/Waybar/releases/tag/0.10.1]_ ### 0.10.0 - Date: 2024-03-13 - Version: 0.10.0 - Original notes: https://github.com/Alexays/Waybar/releases/tag/0.10.0 - Permalink: https://whatsnew.fyi/product/waybar/releases/0.10.0 - Labels: Platforms: Linux - **added** — Add Privacy Module - **added** — Add systemd-failed-units module to monitor failed systemd units - **added** — Add button click check to hyprland workspaces module - **added** — Add show-icon config option to upower module - **added** — Add C ABI plugin system - **added** — Pass WAYBAR_OUTPUT_NAME environment variable to custom exec scripts - **added** — Add empty class for Image module when path/exec is returning an empty value - **added** — Add style classes for hyprland/submap - **added** — Add module class to the root elements of the modules - **changed** — Upgrade to C++20 with updated clock chrono API and STL format - **changed** — Hyprland module sort workspaces after rename occurred - **changed** — Allow using the original window class/title in hyprland/workspaces - **changed** — CPU usage on Linux counts iowait toward idle time - **changed** — Use image-missing fallback if no taskbar icon is found - **changed** — Battery state-based classes now apply to the entire waybar - **changed** — Use steps() in animation to reduce cpu usage - **changed** — Move .empty CSS class from Img to Box in the Image module - **changed** — PulseAudio context reconnects when pulseaudio server restarts - **fixed** — Fix segmentation fault in WirePlumber module - **fixed** — Fix visibility when privacy module is disabled - **fixed** — Fix wireplumber reverse-scroll option - **fixed** — Fix restart-interval being ignored while signal is defined - **fixed** — Fix Hyprland workspaces window rewrite on multiple non-overlapping bars - **fixed** — Fix tray to completely hide when it is empty - **fixed** — Fix clock handling of timezone changes - **fixed** — Fix clock construction with calendar.format.today - **fixed** — Fix use after free on task close - **fixed** — Fix UPower display device pointer - **fixed** — Fix Sway workspaces persistent icon - **fixed** — Fix JSON parsing with hexadecimal characters - **fixed** — Fix drawer not appearing on configured side - **fixed** — Fix build warnings ##### What's Changed * avoid converting to local_time when converting to zoned_time afterwards by @qbe in https://github.com/Alexays/Waybar/pull/2643 * Add Privacy Module by @ErikReider in https://github.com/Alexays/Waybar/pull/2612 * Fix segmentation fault in WirePlumber module by @Mrcarrot1 in https://github.com/Alexays/Waybar/pull/2648 * c++20. clock chrono API. STL + format by @LukashonakV in https://github.com/Alexays/Waybar/pull/2659 * Happy clang. fmt9-10 by @LukashonakV in https://github.com/Alexays/Waybar/pull/2668 * Fix for #2646 by @fdev31 in https://github.com/Alexays/Waybar/pull/2672 * cpu_usage/linux: count iowait toward idle time by @tactikauan in https://github.com/Alexays/Waybar/pull/2681 * hyprland module: added sort_workspaces after rename occured by @aserowy in https://github.com/Alexays/Waybar/pull/2679 * Using 'image-missing' fallback if no taskbar icon is found by @sjoblomj in https://github.com/Alexays/Waybar/pull/2677 * privacy: fix visibility when a module is disabled by @aruhier in https://github.com/Alexays/Waybar/pull/2686 * Add button click check to hyprland workspaces module by @thejch in https://github.com/Alexays/Waybar/pull/2701 * Disconnect from PipeWire when destroying the WirePlumber module by @alexbakker in https://github.com/Alexays/Waybar/pull/2707 * chore: lint fix by @khaneliman in https://github.com/Alexays/Waybar/pull/2712 * flake: update & cleanup by @chayleaf in https://github.com/Alexays/Waybar/pull/2711 * Added initial .clang-tidy file by @zjeffer in https://github.com/Alexays/Waybar/pull/2595 * upower: show-icon config option by @czadowanie in https://github.com/Alexays/Waybar/pull/2703 * Clear README.md from duplicated list of distributions by @mcepl in https://github.com/Alexays/Waybar/pull/2731 * Applied clang-tidy suggestions for hyprland workspaces by @zjeffer in https://github.com/Alexays/Waybar/pull/2720 * Sway/workspaces: fix persistent icon by @Rice8Dyb6 in https://github.com/Alexays/Waybar/pull/2736 * Specify config is JSONC by @rpdelaney in https://github.com/Alexays/Waybar/pull/2744 * Added sudo, python3-pip & python3-venv to debian image, required for clang-tidy GH action by @zjeffer in https://github.com/Alexays/Waybar/pull/2742 * C ABI plugin system by @CromFr in https://github.com/Alexays/Waybar/pull/2573 * Added clang-tidy GitHub action by @zjeffer in https://github.com/Alexays/Waybar/pull/2755 * Pass WAYBAR_OUTPUT_NAME environment variable to custom exec scripts by @grimpy in https://github.com/Alexays/Waybar/pull/2756 * Fix wireplumber reverse-scroll option by @avannereau in https://github.com/Alexays/Waybar/pull/2760 * Bump clang-tidy cpp-linter-action version to v2.7.5 by @zjeffer in https://github.com/Alexays/Waybar/pull/2767 * Bump cross-platform-action to attempt fixing freebsd runner by @zjeffer in https://github.com/Alexays/Waybar/pull/2768 * fix `restart-interval` being ignored while `signal` is defined (#2650) by @an-prata in https://github.com/Alexays/Waybar/pull/2778 * hyprland/workspaces: allow using the original window class/title by @scgtrp in https://github.com/Alexays/Waybar/pull/2787 * Catch2 bump by @LukashonakV in https://github.com/Alexays/Waybar/pull/2803 * fix:#2769 by @DreamMaoMao in https://github.com/Alexays/Waybar/pull/2789 * Improvements for Hyprland worskspaces & backend by @yangyingchao in https://github.com/Alexays/Waybar/pull/2813 * flake update and direnv fix by @khaneliman in https://github.com/Alexays/Waybar/pull/2814 * Fix/Hyprland/Workspaces: Window Rewrite on multiple non-overlapping bars by @Syndelis in https://github.com/Alexays/Waybar/pull/2817 * Add module systemd-failed-units to monitor failed systemd units by @oxalica in https://github.com/Alexays/Waybar/pull/2820 * fix(tray): completely hide tray when it is empty by @JManch in https://github.com/Alexays/Waybar/pull/2831 * clock: handle timezone changes (again again) by @m-bdf in https://github.com/Alexays/Waybar/pull/2838 * clock _[Truncated at 4000 characters — full notes: https://github.com/Alexays/Waybar/releases/tag/0.10.0]_