Changelog

Release notes for Noctalia v5 and later.

v5.0.0-beta.3

Pre-release July 16, 2026

✨ New Features

Bar & Widgets

  • Smart auto-hide for the bar (show on empty workspace, hide when windows are open)
  • Per-widget interactive toggle in widget settings
  • Workspace widget focus-hint style; workspace appear/disappear animations
  • Taskbar: minimal style option for workspace labels
  • Network widget: optional VPN name label when a VPN is connected
  • Clock widgets (bar and desktop): timezone setting
  • Custom images on bar widgets expand ~ / user paths

Dock

  • Smart auto-hide option (same empty-workspace behavior as the bar)
  • Drag-to-reorder pinned icons
  • Border color and width settings (same model as the bar)
  • Focus newly launched apps from the dock more reliably

Launcher

  • Configurable per-provider prefixes and global-search opt-in
  • Provider presence/status validation; prefix controls in Settings
  • Freeform dmenu query arguments; plugin setQuery is prefix-relative

Plugins

  • Plugin store: 24 plugins are now available
  • Persistent per-plugin storage via noctalia.pluginDataDir()
  • Lifecycle onExit; scroll forwarded to Luau as onScroll
  • Color picker dialog API; noctalia.appIconPath icon resolution
  • Bar widgets expose barWidget.outputName
  • Plugin store: clearer update UI, source badge colors, header links to noctalia.dev / GitHub
  • Setting labels use label_key only (breaking for plugins still using plain label)
  • Declarative UI: button tooltips and a controlSize height tier

Theming & Appearance

  • Global button border toggle
  • Pure black dark mode for OLED panels
  • Custom theme colors: color_dark / color_light
  • Day/night schedule: custom times for theme switching
  • Mango: group_bar_decorate color tokens

Settings & Sessions

  • Accessibility section: ui_scale and high_contrast moved under [accessibility]
  • Session panel: grid layout option; power settings consolidated
  • Settings migration helper; stricter config validation before save / on reload
  • Lockscreen login box: center password text toggle
  • Wallpaper: option to disable all transition effects
  • Setup wizard sets a default wallpaper

Notifications / OSD

  • Border toggles for notification toasts and OSD popups (on by default)

System & Compositor

  • Sysmon: Support for GPU usage and VRAM on Intel i915/xe
  • Explicit backlight device override
  • Nix package: git on the runtime path

🐛 Notable Fixes

  • Dock: active icon scale updates under magnification when opacities match; magnified instance-count badges no longer clipped; tooltip dismiss during pinned drag; launcher focus / activation binding
  • Taskbar: grouped capsule sizing, workspace badges, clipping/overlap, title alignment, mute/minimal badge colors, strip padding
  • Context menus: scroll long menus and navigate with keybinds
  • Polkit: panel height follows authentication message content
  • Bluetooth: hide battery % when disconnected; avoid full list rebuild on RSSI updates
  • Network: refresh Wi‑Fi signal in place; rfkill applies to all matching devices
  • Audio/PipeWire: show all input devices; treat displayed zero volume as muted
  • Lockscreen: blur backgrounds at output resolution; redraw after resume
  • Theme: Catppuccin Latte light terminal palette; single-mode custom colors / blend source; colors_changed hooks wait for templates
  • Night light: smoother temperature ramps
  • Notifications: top-aligned toast icons; grace timer when a toast finishes; error accent on persistent critical toasts
  • Calendar: skip unselected Google calendars
  • Launcher: don’t record usage when sort-by-usage is off
  • Control center: home clock/weather card height; card borders no longer cut off
  • Settings: plugin source editor teardown; linked settings in page reset; search focus UAF; floating panel alignment; capsule radius visibility; custom schedule times before activation
  • Config: path expansion restored; plugin settings exported; default plugin sources seeded; accessibility / hot_corners / widget enabled validation; drop undocumented [notifications] alias
  • Plugins: stale store thumbnails; click anchor for attached panels; description for label vs label_key warnings
  • Input: password field info-leak hardening; touchpad scroll quantized to wheel steps; hover resync after dialogs
  • Clipboard hover jitter; media title marquee stops while hidden
  • Render: recover EGL share group after GPU reset; skip unchanged animation frames; cache redundant GLES state
  • Workspaces: delayed empty-workspace color transition; Mango overview active workspace; Niri switcher prefers compositor focus
  • Bar: show_on_workspace_switch initial reveal; tray hover respects capsule settings
  • Session: primary keyboard selection in the session panel
  • Hot corners: only create surfaces for configured corners
  • App: defer surface redraws on resume/unlock; toast fallback render to break compositor stalls
View on GitHub →

v5.0.0-beta2

Pre-release July 9, 2026

Noctalia v5.0.0-beta2

✨ New Features

Bar & Widgets

  • Hover highlight (foreground-tinted state layer) for bar widgets, capsule groups, taskbar, tray, and workspace widget with per-widget opt-out
  • Concave/inverted corners for bar and dock, toggled via setting (replaces negative-radius hack)
  • Eye toggle to hide/show individual bar widgets and capsule groups
  • Custom images on glyph widgets
  • Media widget: option to hide artist name
  • Tray: drawer_item_size configuration

Plugins

  • Any plugin can now load custom fonts
  • Declarative bar-widget UI via barWidget.render, inheriting bar font/scale
  • onConfigChanged service callback for in-place settings reload
  • Input focus support, multiline input, panel "fill" sizing, and new script bindings
  • Role color alpha suffix support (role/alpha); redesigned plugin store home/detail pages; collapsed store categories by default

Network & Connectivity

  • IWD support for WiFi
  • WAN/WAN-IP display (opt-in for privacy)
  • Bluetooth: actively reconnect trusted devices on power-on and startup

Settings & Sessions

  • Regex content filtering for notifications + filter duration override
  • Detach power and custom session commands
  • Launcher settings extracted into their own section; OnlyShowIn/NotShowIn desktop-entry support
  • Screen-sharing filter regex (privacy)

Other

  • IPC: wallpaper next/previous, bar-reserve-toggle, notification-show payloads with two-arg CLI body
  • Screenshot: expose generated path to pipe commands
  • Calendar: toggle the events panel
  • Runtime log-level control

🐛 Notable Fixes

  • Calendar: client-side CalDAV recurrence expansion
  • Wallpaper: per-display KDE/Plasma sync, crash-loop prevention on invalid paths, precise IPC outcomes
  • Lockscreen: hide idle grace overlay on unlock, dim overlay through lock handoff, hideable login boxes
  • Workspaces: jitter fixes, Hyprland persistent-workspace restore on reload, Mango tag mapping
  • Audio/PipeWire: bar volume/OSD mute sync, simplified relative volume steps
  • Brightness: sysfs fallback when logind D-Bus is unavailable
  • Panel/tooltip focus, scaling, and placement fixes; desktop cross-monitor widget drag; hot-corners reload guard

🔧 Build

  • Require system md4c/json/toml++/stb
  • Nix devshell updates for new dependencies
View on GitHub →

v5.0.0-beta1

Pre-release July 2, 2026