Skip to content

Changelog

Version v0.17.0

A huge release a long time in the making. Thanks to everybody who contributed in any form, especially those who submitted PRs and are listed below! It means a lot to have so many people contributing to my silly little project.

:boom: BREAKING CHANGES

  • due to 03136e7 - new sorting options (commit by @JakeStanger):

    The workspace sort config option valid values have changed. Where alphanumeric is explicitly set, this will need changing to one of label or name.

  • due to 01de0ac - overhaul to add aggregate/unit/formatting support (commit by @JakeStanger):

    Use of the sys_info module in your config will need to be updated to use the new token format. See the wiki page for more info.

  • due to 322fc0c - standardize home-manager module options (commit by @74k1):

    programs.ironbar.systemd is not enabled by default anymore

  • due to 3e55d87 - overhaul .desktop and image resolver systems (commit by @JakeStanger):

    The icon_theme setting has been moved from per-bar to top-level

  • due to 0d8ec47 - commands for controlling css class names (commit by @JakeStanger):

    The load-css command has been moved to the style subcommand (ie ironbar style load-css).

:sparkles: New Features

  • afe534c - add .urgent workspace css class (commit by @Rodrigodd)
  • df4bfc8 - truncate: explicit off mode (commit by @JakeStanger)
  • da13b9d - launcher: truncate and truncate_popup config options (commit by @JakeStanger)
  • 64b953c - launcher: add option to minimize window if focused (commit by @pachliopta)
  • 9f7c391 - sway: support workspace rename events (PR #799 by @quietvoid)
  • 7f71a38 - launcher: open new window on middle-click (commit by @BowDown097)
  • ccfe73f - libinput keys module (commit by @JakeStanger)
  • 03136e7 - workspaces: new sorting options (commit by @JakeStanger)
  • 4381fd5 - add shell completions (commit by @donovanglover)
  • 708118d - justify property for clock and custom label (commit by @BowDown097)
  • 87c6801 - launcher: icon overrides (commit by @BowDown097)
  • 03e6f10 - keyboard: ability to display and switch kb layout (PR #836 by @kuzy000)
    • :arrow_lower_right: addresses issue #575 opened by @madfanat
  • 5e7e741 - volume: add pango support to button (commit by @JakeStanger)
  • 01de0ac - sysinfo: overhaul to add aggregate/unit/formatting support (commit by @JakeStanger)
  • 02a8dda - workspaces: niri support (commit by @anant-357)
  • 183ca40 - launcher: pagination controls when item count is reached (commit by @JakeStanger)
  • ba5ec80 - label: add truncate to module and custom widget (commit by @JakeStanger)
  • b83f26c - sysinfo: expose values as ironvars (commit by @JakeStanger)
  • c20feb7 - fully implement orientation/justify options (commit by @JakeStanger)
  • 5a5b110 - rename sway_mode to bindmode and add Hyprland support (commit by @Rodrigodd)
  • 322fc0c - nix: standardize home-manager module options (commit by @74k1)
  • 89073dc - nix: use lib.fileset for src (commit by @reo101)
  • b13c725 - custom: add halign and valign options to box widget (PR #988 by @BBFifield)
    • :arrow_lower_right: addresses issue #985 opened by @BBFifield
  • 3a0e102 - change icon_overrides to apply to all resolved images (commit by @JakeStanger)
  • 96e10fe - add menu module (commit by @ClaireNeveu)
  • 5520562 - support glob patterns for keyboard layout icons (PR #949 by @postsolar)
  • 53b1e0f - bluetooth: add bluetooth module (commit by @kuzy000)
  • ebcb972 - smooth scrolling speed option (commit by @JakeStanger)
  • 69df0c9 - menu, notifications, upower: use ironbar image system (commit by @JakeStanger)
  • a2bd428 - upower: expose properties as ironvars (commit by @JakeStanger)
  • c76e569 - upower: dynamic thresholds for styling (commit by @JakeStanger)
  • 0d8ec47 - ipc: commands for controlling css class names (commit by @JakeStanger)
  • 757588e - notifications: add class for button widget (commit by @JakeStanger)
  • ffca125 - support pango markup in icon buttons (commit by @JakeStanger)

:bug: Bug Fixes

  • a181d4e - networkmanager, upower: widget not vertical on left/right bars (commit by @JakeStanger)
  • fa6f27d - workspaces: rewrite module to fix several small issues (commit by @JakeStanger)
  • e0bae2c - keys: high cpu usage (commit by @JakeStanger)
  • 75375aa - clipboard: possible deadlock when copying (PR #863 by @ToxicMushroom)
  • 1d29d61 - exit 0 on ipc connection error (commit by @JakeStanger)
  • 551e1ce - keyboard: panic when layout update channel lags behind (PR #869 by @quietvoid)
  • e8da00b - custom: buttons lock up on long running commands (commit by @JakeStanger)
  • 3320cf2 - workspaces: niri workspaces not respecting added sort (PR #911 by @MapoMagpie)
  • ff9ba7b - clipboard: failing to paste in some applications (commit by @JakeStanger)
  • 963a450 - wayland: panicking on compositors without protocol support (commit by @JakeStanger)
  • 4d92af7 - music: hours not being displayed in track duration (PR #968 by @postsolar)
    • :arrow_lower_right: fixes issue #967 opened by @Ly-sec
  • 040e7e6 - mpris: use set_position instead of seek (PR #978 by @postsolar)
    • :arrow_lower_right: fixes issue #970 opened by @postsolar
  • e240ab7 - cairo: huge memory leak (commit by @JakeStanger)
  • 375ceb8 - workspaces: reload broken on niri (commit by @JakeStanger)
  • 7b220cb - issues with bar appearing on wrong monitor (commit by @JakeStanger)
  • ff359f6 - launcher: regression - favourites in wrong order (commit by @JakeStanger)
  • 9ed0d12 - unable to use markup in icon labels (commit by @JakeStanger)
  • 448f461 - regression - image prefixes not handled correctly (commit by @JakeStanger)
  • 9b0c0dd - default HM module config option to null (commit by @postsolar)
  • 81ce2c1 - upower: round battery percent to whole number (PR #1058 by @pgattic)
  • 673b05e - panic when module controller errors (commit by @JakeStanger)
  • c4f5485 - ipc: message size limited to 1024 bytes (commit by @JakeStanger)
  • 40adfaf - opening programs via launcher and menu leaving zombie processes (commit by @JakeStanger)
  • ff185d0 - desktop_file: case-insensitive app_id -> desktop_file find (commit by @slowsage)
  • feccc29 - regression caused by #1089 (commit by @JakeStanger)
  • 0159c01 - app_id StartupWMClass resolution in launcher (commit by @slowsage)
  • 663ccda - notifications, upower: regression from #1125 (commit by @JakeStanger)
  • caa1bf0 - autohide: hiding bar when some widgets hovered (commit by @JakeStanger)
  • c6a1670 - autohide: hiding bar when leaving and re-entering within timeout (commit by @JakeStanger)
  • 8563786 - custom: spaces in class names not handled (commit by @JakeStanger)
  • c2e21d4 - on_click events not working on button widgets (commit by @JakeStanger)

:recycle: Refactors

  • cc6f21e - take reference into image provider (commit by @JakeStanger)
  • 8b05ed5 - move label truncate function to ext trait (commit by @JakeStanger)
  • 8cdbe7e - hyprland: improve logging (commit by @JakeStanger)
  • 5136637 - fix some strict clippy warnings (commit by @JakeStanger)
  • 9cb1dfc - enum/struct formatting (commit by @BowDown097)
  • 59b5ddc - clock: move justify above common (commit by @BowDown097)
  • d1b4af4 - make icon overrides bar-level and apply to focused module (commit by @BowDown097)
  • 40d449e - address requested changes (commit by @BowDown097)
  • d5e4e08 - address requested changes (2) (commit by @BowDown097)
  • 2fd49e0 - address requested changes (3) (commit by @BowDown097)
  • 63f5954 - upgrade to zbus v5 (commit by @JakeStanger)
  • c2beda8 - ensure one copy of icon_overrides (commit by @BowDown097)
  • f39c4c4 - fix clippy warnings (commit by @JakeStanger)
  • 202c19e - update to rust 2024, fix strict clippy warnings (commit by @JakeStanger)
  • a023155 - keys: switch to colpetto (commit by @JakeStanger)
  • 5bb1c88 - clipboard: switch from nix to rustix (commit by @JakeStanger)
  • fc24949 - update mlua crate (commit by @JakeStanger)
  • 638f2a2 - avoid explicity cast with long type (commit by @Rodrigodd)
  • 5affad3 - nix: use flake-parts and flake-compat (commit by @74k1)
  • 1b6aa10 - update hyprland-rs, remove expects from hyprland client code (commit by @JakeStanger)
  • c6f3af4 - improvements to feature flags (commit by @JakeStanger)
  • f929aef - replace channel macros with ext trait methods (commit by @JakeStanger)
  • 09ba381 - couple of tiny changes (commit by @JakeStanger)
  • 8575300 - module: remove redundant into_popup parameters (commit by @JakeStanger)
  • ca524f1 - fix some strict clippy warnings (commit by @JakeStanger)
  • 3e55d87 - overhaul .desktop and image resolver systems (commit by @JakeStanger)
  • 9d18ce5 - recv_glib dependency arrays (commit by @JakeStanger)
  • 3c4b6a0 - remove unnecessary Clone constraint from recv_glib methods (commit by @JakeStanger)
  • b62d0d5 - fix clippy warnings (commit by @JakeStanger)
  • d05c16f - music: move IconPrefixedLabel to central module (commit by @JakeStanger)
  • 630f88e - ironvar: make NamespaceTrait public (commit by @JakeStanger)
  • ae4239c - upower: tidy module code (commit by @JakeStanger)
  • cce6adc - music: remove regex dependency (commit by @JakeStanger)
  • c507c16 - fix lots of pedantic clippy warnings (commit by @JakeStanger)

:memo: Documentation Changes

  • 7bff8c0 - launcher: note middle click functionality (commit by @BowDown097)
  • 63a9a42 - add keys page to sidebar (commit by @JakeStanger)
  • 814fbc2 - keyboard: add missing show_layout option (commit by @JakeStanger)
  • 9c7a562 - tray: correct to direction instead of orientation (commit by @JakeStanger)
  • 3e5fcdc - add info on gtk 4 port (commit by @JakeStanger)
  • 41d29d8 - gtk4: update notifications to ported (commit by @JakeStanger)
  • caa2886 - gtk4: add text format status (commit by @JakeStanger)
  • f4f5910 - gtk4: update clipboard, custom, keyboard, script, sysinfo to be ported (commit by @JakeStanger)
  • 0c84c0c - gtk4: update workspaces to be ported (commit by @JakeStanger)
  • 304fa03 - gtk4: update music to ported, popup state (commit by @JakeStanger)
  • e19af2b - gtk4: update launcher as partially ported, update popups/ipc (commit by @JakeStanger)
  • da5164c - gtk4: fix launcher icon (commit by @JakeStanger)
  • beab26a - add missing menu sidebar link (commit by @JakeStanger)
  • 34da5ed - sysinfo: add info on querying values (commit by @JakeStanger)