Repository navigation
Releases
Releases · caelestia-kde/caelestia
Caelestia v2.7.0
What's New in v2.7.0
Features
- nexus: redesign the settings shell around three panels (3ee1dbf)
- windowtiling: no logout required upon config change, update Krohnkite setup script, tests, and configuration integration (3515f38)
- animations: add presets and management service for shell customization (1458e76)
- nexus: enhance search result item animations (38e7172)
- nexus: add hold-to-confirm and hold-to-cancel mechanics for Enter and Escape in KeyCaptureDialog (455aa4f)
- nexus: add keyboard navigation for shortcut management items (11a33df)
- nexus: set keybind Meta+U to open nexus (7bdf20c)
- nexus: add keyboard navigation to pages (3efab31)
- add Cheaper Inference as an assistant provider (811a4c1)
- nexus: add keyboard navigation and global shortcuts for nexus navigation pane (fcba93a)
- nexus: dismiss search focus on outside taps, escape key, and backspace (77a9805)
- nexus: add shortcut "/" to focus search bar (78a7bf7)
- utilities: add timer pinning support (24bdcfe)
- menu: add automatic vertical flipping for Menu and integrate with SplitButton (486745b)
- utilities: convert keep awake card into a quicktoggle (08f41c8)
- utilities: keep cards collapsed by default (bb21451)
- nexus: add Related row in nexus to open related settings (a8a0179)
- desktop: add a widget edit mode (02f4e58)
- nexus: give printing, the on-screen keyboard and system accessibility a front door (120d1a5)
- overview: open the overview limited to one application (3b3e745)
- notifs: carry do-not-disturb in the lock screen snapshot and honour the game's request (f90b7d2)
- installer: install the KDE peers that search, printing and touch typing need (cfaab63)
- toasts: let the stack live in any corner, and say which radius owns which surface (41ebc0d)
- timers: countdown timers that survive a restart, with a card and an IPC (827a2dc)
- notifs: turn an application off from its notification and search the list (3fa8cde)
- dock: offer an application's recent files in its context menu (39f2943)
- network: detect a captive portal and edit the KDE proxy from Nexus (4cd9644)
- storage: list, mount, unmount and eject filesystems from Nexus (dd503b0)
- bar: add a privacy indicator for the microphone and video capture (dbef359)
- emoji: rank search results by relevance, favorites, and frequency (859de85)
- nexus: add vibrancy slider for icons (5b7e4ee)
- nexus: manage the programs that start at log-in (11ebb2c)
- focus: let a running calendar event start a session (232c96c)
- nexus: manage displays from the shell (f3481d4)
- calendar: keep a Google calendar in sync with conditional fetches (2194820)
- bar: open the calendar on hover and lead the empty agenda to settings (764fbb6)
- shell: add a calendar agenda, focus sessions and accessibility controls (4bf75b9)
- nexus: choose the web search engine from settings (96e191a)
- notifs: let notifications be answered from the sidebar (3111b0b)
- launcher: search the whole system through KRunner (d3ad976)
- sddm: show the session picker by default (1cfabdd)
- nexus: add mouse back button support for nexus navigation (aa8034f)
- nexus: add configurable back navigation for sub-pages (b3eb174)
- visualizer: add Single wave profile (a708740)
- tray: let each tray icon be renamed (810cc4e)
- bar: per-icon tray visibility and ordering (5b90835)
- dock: add an optional launcher tile (0a1ac7d)
- skwd-wall and plasma-audio-visualizer integration (#1066) (8eb0c72)
- nexus: polish the submenu order dialog (e3d9829)
- nexus: reorder a submenu from the right click menu page (87efbaf)
- desktop: unfold the widget entries in a submenu (8e6097a)
Performance
- nexus: optimize page searching and search results list rendering in nexus module (60ece48)
- dashboard: add component binding pragmas and improve dashboard media initialization animations (f25bc28)
- emoji: optimize search using partial sorting and precomputed scores (53616c3)
Bug Fixes
- desktop: correctly handle locked widget collision avoidance during desktop item drags (6fe422b)
- desktop: respect locked desktop widgets during movement and layout planning (6b3b789)
- desktop: include obstacles in desktop icon packing return value to prevent spurious saves (7f0b5c5)
- desktop: respect widget positions during desktop icon auto-arrangements and refactor object iteration (9d3250f)
- test: update test assertions to match recent dictionary and subpage format changes (4a5ec91)
- nexus: update SearchBar padding and add implicit height for better vertical centering (2c9f935)
- nexus: exit compact mode if searching (c2958de)
- nexus: ensure active subpage visibility and correct navigation state order when searching (03831fc)
- desktop: keep widgets where they were dropped (2284bec)
- nexus: unblock global shortcuts via D-Bus when KeyCaptureDialog is destroyed (e27564b)
- nexus: add retry limit to selectItemByLabel and clean up item toggle method calls (21fa04e)
- nexus: keycapturedialog flickering fixed (894c6eb)
- nexus: emit release signals in SliderRow and improve callback handling in PageBase (fa31177)
- keybinds: filter out unassigned keybinds (e923ded)
- nexus: only load and play media when plugin row is expanded (cc04082)
- build: fetch M3Shapes regardless of the global git config (#1211) (5db5252)
- session: shut down, reboot and log out through Plasma so the session is saved (#1213) (79968cf)
- installer: give every distro the runner and the indexer, and say when they are missing (c5434b2)
- text: make native rendering the process default (fd92bed)
- desktop: resize widgets from every border, not just the corner (ef877a8)
- notifs: collapse the stack to zero height when empty (bcfd322)
- installer: install KRunner headers on Fedora and Debian (5ec0b9c)
- text: stop forcing QtRendering on shell text (df69570)
- update shell components and nexus pages (3b90938)
- remove StyledInputField and update related components (1c5657f)
- controls: stop an input field drawing a second box inside its own (ae492d9)
- drawers: let the utilities drawer be typed in and stop it slicing notifications (c13fd15)
- cli: keep Qt's locale warning out of the IPC reply (ea11eb1)
- appdb: avoid exposing destroyed desktop entries to QML (8ff2a7e)
- network: read the Wi-Fi link's strength from the driver (34823ce)
- timers: keep the running timers as plain values, not a sequence view (48a35fb)
- timers: decide what is due from one clock read, in one place (0407422)
- toasts: keep the corner vocabulary in one place, and hand the stack two sides (6ed18a3)
- timers: start on Enter only, and read the card list from the layout (fb8afd0)
- notifs: count a notification once, and let the search take the keyboard (c4192a0)
- toasts: say what automatic does where the corner is chosen (95ffd49)
- toasts: keep each toast as wide as the stack (263cf06)
- toasts: let the corner own the stack's edges (c6a8e71)
- toasts: pin a chosen corner to the screen edge (4cf1919)
- notifs: import qs.services in the muted apps page (422b228)
- services: settle a script's answer and its failure from either event (1c1e355)
- recents: read a bookmark whose path carries a doubled slash (5bc8451)
- network: give the sign-in row its own card and take the proxy summary from the service (a112c74)
- proxy: replace kioslaverc in one step and report a refused write (9a8a377)
- recents: keep each application's own visit to a file (46ea532)
- kwin: write the shell opacity group first so the file matches the index (dce14b2)
- kwin: index the shell opacity exemption before the catch-all rule (0e46529)
- kwin: keep the shell's own windows opaque so the launcher cannot tint them (032e09a)
- storage: report sizes and every mountpoint, and never offer to unmount the system (9111a01)
- keepawake: keep keep-awake across shell restarts (cba1b2c)
- font: gaurd user configured scale if not following system size (dcd6d94)
- nexus: detect HDR from the EDID and keep the panel brightness (2f4b297)
- shell: label the session rail and nest panel corners inside the frame (d7ea655)
- calendar: list the selected day instead of a separate upcoming feed (3a49c63)
- launcher: resolve KRunner icons so results stop showing the placeholder (2ec903b)
- notifs: show the reply field without expanding the notification (bd2c984)
- sddm: read the saved session straight from SDDM's session model (289df87)
- mpris: report the real playback state in the status payload (b866e12)
- notifs: apply the streaming do-not-disturb silently (bfcc937)
- pipewire: stop screen captures from reading as an active screen share (3f6cc68)
- notifs: fix lockscreen notification sync (89faea9)
- lockscreen: restore the mpris status IPC endpoint (746c078)
- shortcuts: close the dockActivate9 shortcut block (476bd9d)
- shortcuts: keep krohnkite keybinds working after a language change (4d7091a)
- nexus: resolve wallpaper reset config reference check (8eb9317)
- nexus: restore Quickshell wallpaper settings without skwd-wall (89dc040)
- update: ensure the wallpaper engine on update, not only on install (db7eb5c)
- kwin: leave the workspace tracker off when its plugin is not installed (8665797)
- color: say why a posthook failed, and stop it blocking on sudo (77ae19a)
- mangohud: stop crashing by registering DISABLE_MANGOHUD=1 (0b44843)
- font: use system-provided Google Sans Flex if available (23e31f6)
- background: stop the shell from drawing the wallpaper when the Quickshell desktop is disabled (aaeb479)
- network: correct network popout behavior (64a1bed)
- color: make the KDE selection text readable and both scheme names current (41af049)
- launcher: align the tile icons from the top (bdd3f31)
- desktop: address the review of the widget submenu (fbb3ea8)
- lyrics: recover lookups and handle delayed browser metadata (b5b6d31)
- nexus: slide page switches as far as sub-page transitions (07b1fb4)
- shortcuts: keep the default ...
Caelestia v2.6.3
What's New in v2.6.3
Features
- desktop: add per-widget lock and widget outlines (#1146) (e59b6b3)
- nexus: reorganize DesktopAddonsPage with per-widget auto-hide (#1141) (d7d9c12)
- redesign logo with gradients, drop shadows, and KDE Plasma badge (d70d958)
- desktop: add multi-monitor support and screen-aware positioning (#1135) (b03835d)
- add custom caelestia icon and update desktop entry configuration (854bf60)
- add shimeji catwhatsnew entry and fix plugin settings popup layout and bindings (f33fd84)
- add support for background widgets in plugins and update badapple to instantiate similarly (9508f92)
- plugins: render toggle, text and number settings (ea5f666)
Bug Fixes
- desktop: place quickshell background to WlrLayer.Bottom to unhide desktop (9508f92)
- windowrule: hide black window (xwaylandvideobridge) on fedora desktops (b93cb67)
- lyrics: refresh desktop lyrics when a new track loads (#1147) (7879bdb)
- tests: skip the node schema lookup without node (7f76f37)
- plugins: open the settings popup in the window of the page (598ba89)
- plugins: show the settings button of a plugin that declares settings (32136a0)
Caelestia v2.6.2
What's New in v2.6.2
Features
- plugin API for registering custom bar widgets (#1122) (c72ef2e)
- bar: notes, weather and performance widgets (#1046) (bbdf926)
- shell: add visualiser quick toggle and tidy desktop widgets (8d7ebdc)
- dashboard: AmbientGlow in Music Tab (37532fc)
- shell: let one switch turn every animation off (16b477a)
- notifs: auto do not disturb while streaming (#996) (fe8f09b)
Performance
- offload ticking services to a dedicated background worker thread and use queued connections (2898c50)
Bug Fixes
- kwinbridge: compare screen geometry in logical space to prevent multi-monitor hiding (#733) (8ed637d)
- update sha256sum for service file in AUR PKGBUILD (0e596e7)
- add KWin version tracking and on-demand loading for workspace-tracker effect (33dcbef)
- lockscreen: defer authentication responses and add backend heartbeat timer to AuthHandler (f4ff3fc)
- bar: drop the unused bar.popouts import from Toggles (#1120) (47814ca)
- shell: hold the updater terminal open and widen slow toasts (6472a0f)
- change background wlrlayer from Bottom to Background (e883ea8)
- screenshot: kill the snapshot when it ignores the timeout signal (15c347e)
- screenshot: move snapshot timeout into TempScreenshotProcess via exec timeout (bfc1f9f)
- shell: name the duration the Anim type supplies (566420f)
- shell: contain the menu's overscroll (a5a9fed)
- shell: bound the tooltip and share the dialog buttons (c34b291)
- shell: outline content photos and use the scrim token (afcfc1d)
- shell: give disabled controls a static cue (32503ff)
- shell: reach the overview motion from the animations switch (ee5cdac)
- wallpaper-switcher: update previewTimer to 500ms (18f6d81)
- qml linting issues (64069cc)
- qml linting issues (0d825fb)
- shell: answer the motion review (f4e4c29)
- screenshot: back out when the snapshot fails or hangs (9750aff)
- launcher: read app names in full on the browse tiles (fd08890)
- shell: slide the calendar month in the scroll direction (c114aa5)
- desktop: open the context menu at its full height (56b4cc4)
- nexus: share the dialog transition and shorten the exit (7f9d022)
- bar: give a connecting Bluetooth device a static cue (19f1cd9)
- shell: make the calendars' month motion reversible (4a3985a)
- shell: suppress colour transitions while a palette lands (2520613)
- test: assert file contents in the streaming dnd suite (1e1d5bc)
- comments: keep qmllint directives (9f78f35)
- drawers: keep the top layer while the shell holds keyboard focus (#1080) (7c394d3)
- wallpapers: end the preview hold when the applied scheme lands (f73bb52)
- ci: scope the release offline proxy to build steps (d42ef08)
- config: honor XDG config path for stolen screen edges (259ff79)
- config: honor XDG config path for keybinds (98ed909)
- config: honor XDG config path for stolen shortcuts (89f7e84)
Caelestia v2.6.1
What's New in v2.6.1
Features
- hide desktop lyrics when music is not playing and remove loading indicator (7a503fb)
- add desktop clock, shapes, and lyrics widgets to desktop icons … (#1084) (5de1fd0)
- nexus: more per-setting reset buttons (#1077) (26b358d)
- launcher: add truncated name display modes (4099b1b)
- launcher: show full app names on hover (c2d2f51)
Performance
- dashboard: release tab panes when the drawer closes (baca5c4)
- dashboard: bound the notes empty-state pulse instead of looping forever (60643f9)
- dashboard: debounce the usage shape so it stops morphing every tick (3c18004)
- dashboard: stop the notes pulse when the drawer is closed (5bb4320)
- lockscreen: fetch mpris state in a single ipc call (a5a7b01)
Bug Fixes
- login: only select the SDDM theme with the greeter that runs it (5d4e169)
- install: give a fresh install five virtual desktops (3f6f149)
- implement emoji dictionary fallback and merging logic with tests (974e7df)
- updater: skip sparse checkout for missing paths (a661010)
- idle: map the inhibitor window so stay awake actually inhibits (8bb1cbd)
- launcher: keep the tile's favourite button out of the flip (c60567c)
Caelestia v2.6.0
What's New in v2.6.0
Features
- nexus: add per-setting reset buttons across pages (#1055) (9e7f43d)
- dashboard: add keepAlive timer to dashboard wrapper to prevent premature unloading (6f7c1f2)
- dashboard: note types with dedicated editors (#1038) (49e5a1b)
- brightness: render the dimming multiplier in the OSD (ee83b36)
- brightness: read and clear the dimming multiplier (a5a7b73)
- bar: Now Playing widget for bar (#1023) (c732356)
- nexus: align reset buttons and cover more settings pages (#1009) (8790752)
- appearance: follow system font option and default (#1020) (40fb1df)
- kde: keep an unanswered transfer request answerable (5b53e81)
- kde: add the Quick Share settings page (e64fca3)
- kde: add the Quick Share quick toggle (fd0d45f)
- kde: add the Quick Share utilities card (30fd89c)
- kde: add the Quick Share shell service (f73c378)
- kde: allow notifications the shell raises itself (72ab428)
- kde: add the Quick Share transfer backend (3a0966f)
- desktop: add widgets and large folders (#938) (0317ac5)
- desktop: rework icons with selection, keyboard, groups and drag and drop (#937) (9680ee8)
- background: toggle desktop icons from the menu or a middle click, unfold the desktop menu sideways (#936) (399be85)
- desktop: fix launcher renaming, launching and label alignment (#935) (c276fa2)
- sidebar: resize the pinned sidebar by dragging its edge (#926) (fd98633)
- nexus: shrink secondary text to 10pt (5b36d43)
- nexus: align per-element scale columns with row resets (9b43a22)
- visualiser: choose the capture source between output and input (a48f294)
- nexus: plugin update badge with in-place update action (#577) (#1003) (9bafc4c)
- utilities: paginated quick toggles with dots and per-page setting (#999) (b42f36a)
- nexus: alignment above offset sliders in desktop lyrics (5156eb0)
- nexus: position above offset sliders in desktop addons (b74af13)
- background: fine position offsets for desktop clock (9ef20f8)
- nexus: export full config to YAML via script (7a117c3)
- nexus: export full config to YAML (b447885)
- nexus: export configuration to YAML (7c7f2a6)
- launcher: add multiple app browser layouts (#931) (8fd2002)
- nexus: per-setting reset buttons on appearance page (#978) (1f6554d)
- utilities: reorder toggles by dragging in drawer (#979) (9916245)
- nexus: shortcut conflict warning and compact capture dialog (#991) (0262689)
- bar: right-click opens settings for os icon, power and show desktop (#988) (cb77754)
- bar: dock now supports shortcuts to open/focus apps (#983) (dcda959)
- plugins: install from git source (47b0cba)
- plugins: notify available plugin updates (318b7f4)
- plugins: notify available plugin updates (70e53f4)
- background: fine position offsets for desktop lyrics (1bbbb82)
- background: visualiser size as unit multiplier (186d22f)
- background: configurable visualiser side width (879399c)
- background: add size multiplier to visualiser margins (fd148d3)
- utilities: add custom order mode for quick toggles (#974) (590d7d1)
- utilities: add screenshot card with quick capture actions (#944) (fa0aeda)
- utilities: add edit shortcut to quick toggles card (#971) (634ebff)
- nexus: add an uninstall action to the About page (e2cb9cd)
- dashboard: Notes tab & hourly weather (#915) (b97a149)
- dock: ungrouped icons option (#897) (0368bfc)
- bar: right context menu for each bar component (#896) (7d80118)
- sidebar: pin it open and reserve its space (#869) (f60d72a)
- sidebar: open on the last used tab, or a configurable one (#870) (5d0c819)
- network: add a Wi-Fi hotspot toggle (9f7a339)
- network: add a Wi-Fi hotspot toggle (ad24290)
Performance
- launcher: pre-warm the drawer instead of building it on open (755c751)
- launcher: load the keybinds, animations and window-switcher pages asynchronously (5475ad9)
- keybinds: push JS filtering and sorting into C++ query() (83f2855)
- appdb: expose alphaApps property for O(1) QML alphabetical lists (1574f4e)
- allapps: replace O(N log N) JS inline sort with C++ cached property (51e1200)
- notifs: replace O(N) list pushes with O(1) batch initialization (57b579c)
- kwinworkspacestate: replace std::sort with counting sort for desktops (dacdde4)
- keybinds: cache defaultKeybinds() and pre-lower search strings (ab9ae87)
- appdb: replace O(N log N) full resort with O(log N) PBDS rank tree (5f936de)
- fs-model: replace repeated lower_bound+insert with std::inplace_merge (62ec1c3)
- emoji: replace O(N*L) scan with trigram inverted index (09e139a)
- optimize window list updates and active state handling in KWinActiveWindowBridge (b79a579)
- add #900 changes + keep overview alive (3ecc5a7)
Bug Fixes
- launcher: clear search text when launcher wrapper finishes closing animation (b7b7ea3)
- launcher: decide the search field on open instead of resetting on close (4eb1e51)
- nexus: correct the bar scroll action halves in the settings text (15c606c)
- i18n: complete the French catalog (#1068) (b5784d9)
- workflows: check for XDG_RUNTIME_DIR before running systemctl user commands in shell build script (1266da4)
- tray: preserve Quickshell image provider URLs (7ae6516)
- correct issues in QuickShare UI and related scripts (9b941f2)
- i18n: complete the spanish catalog (#1053) (d853ea9)
- cli: wait for the old shell before restarting it (922394d)
- kde: skip Quick Share's protobuf headers during moc (32b6493)
- Colors: cargo matugen check once on next shell startup (b6f8a06)
- brightness: step relative changes from the value the screen renders (9fb2165)
- brightness: keep KWin's record in sync for throttled writes (0db7bc8)
- brightness: record queued writes in the cache so the OSD follows the drag (4cfeceb)
- kde: give Quick Share's system access one owner (df04e26)
- overview: scale workspace indicator with screen height (a8f3b75)
- automate manual steps (ffd51d0)
- nexus: make the config export lossless and complete (2fa1dcc)
- launcher: gate the drawer pre-warm on launcher.enabled (494fca9)
- nexus: hide drawer frame on fullscreen wallhaven page (6343ef3)
- include assets/ in update sparse-checkout (5d386f1)
- kde: read the endpoint info record as the bytes protobuf hands over (e767e61)
- kde: keep received file names safe and outgoing sends bounded (33b5987)
- kde: compile and format the Quick Share protocol core (335786d)
- nexus: drop duplicated reset block breaking the shell (#1031) (44f3e81)
- nexus: lossless YAML export with proper failure reporting (96a0086)
- brightness: keep KWin's brightness record in sync with DDC writes (b154c55)
- services: keep parser failures from taking the service down (4b499ce)
- kde: guard the transfer prompt against being dismissed (d3dce08)
- kde: rename the prompt flag off the reserved word transient (7960a41)
- brightness: re-read hardware before honouring a no-op (f835a35)
- ai: restore the pre-refactor tool prompt whitespace (ff6e8c2)
- installer: apply review: one typed menu parse and a real warnings summary (c4e6729)
- scripts: keep the installer diagnostics reachable (d311ddf)
- installer: make the with-warnings summary real and menu.json non-fatal (c6b8c7b)
- installer: pin the source fallback and install the right COPR package (2f2b678)
- ai: make the tool-call tests actually run (d9ca078)
- utilities: record/capture switcher state and wheel switching (#1019) (317ad16)
- nexus: stop pages stacking (1c776ac)
- uninstall: record the install checkout (c349125)
- launcher: size the app icon from the row, keep it synchronous (1eb9741)
- images: do not request an icon before it has a real size (16d05b6)
- kde: stop wl-clip-persist re-offering app-private formats (#942) (36d83ab)
- visualiser: read the capture mode at start instead of mirroring it (0ab2658)
- centralize visualiser input ownership in AudioCollector and drop redundant CavaProvider mirror (524c8fa)
- ui: size icons from existing values, drop the 16px floors (#924) (29ed2b7)
- launcher: floor the AppTile icon size like the other icon fixes (#924) (3b092dc)
- ui: size icons by container, not by load time (#924) (c8406d5)
- nexus: use implicit shift for shifted symbols in key capture (8b34c1d)
- nexus: check x11 scancodes first (4f421f7)
- nexus: normalize shift+digit in key capture (ea63a29)
- nexus: export per-monitor configs (3807757)
- nexus: only fail export on real stderr (103a70e)
- drawers: clear stale panel background when a drawer hides (dd57b90)
- brightness: support the pre-6.7 per-output kde_output_device_v2 protocol (#965) (82397d3)
- nexus: unify clipboard entry limit range (#982) (ea77cc3)
- notifications: plain-text sanitized collapsed preview (4b45b79)
- notifs: strip markup from one-line body previews (919da5b)
- notifs: load absolute image-path hints as files (453e914)
- background: visualiser size pushes bars outward (d8816ce)
- allapps: keep hidden apps reachable in the app list (#969) (d86ece4)
- nexus: drop dead Compact toggle from greeter settings (#973) (58370b0)
- i18n: translate launcher action names and descriptions (#962) (d610ee4)
- i18n: apply placeholder args in uptime and duration formats (#966) (3dfbc8c)
- ai: refetch model list when keyring key arrives (a4ecd4f)
- i18n: wrap hardcoded strings in tr()/qsTr (92bba26)
- font: only emit fontsChanged when the built fonts changed (c5a3dd1)
- sddm: scale welcome greeting to fit narrow screens (a90dff0)
- track ethernet device state changes (57ee1bd)
- i18n: wrap hardcoded UI strings in qsTr (f56f4b6)
- services: format shell dates with the system locale (a335285)
- tests: update the uninstall button test to support colors in uninstalldialog (32afd65)
- uninstaller probe process not starting and warn scene due to missing import (e51aba5)
- nexus: reindent uninstall dialog popup body (1e9d025)
- defer lockscreen sleep request (8384d8f)
- keep lockscreen input focused (af2eeb4)
- clear lockscreen password on hide (...
Caelestia v2.5.1
What's New in v2.5.1
Features
- desktop: per-icon context menu (#883) (063f913)
- whatsnew: open the matching settings page from a feature (#884) (c52f2e4)
- bar: make clock component sizes responsive to bar scale (0055acd)
- add raise function to focus nexus in WindowFactory (f4e43eb)
- add status icons context menu popout (0eada35)
- dock hover window peak 500ms delay to prevent accidental flickers (df5f0a5)
- bar: add calendar popout for the clock (#812) (38ff740)
- network: manage multiple saved profiles for the same SSID (e3fe60b)
- scripts: download the default wallpaper pack during updates (95861de)
- nexus: add a manual light/dark mode selector to the colors page (d0818ca)
- ai: wire the chat history toggle (a750abe)
Performance
- overview: keep the wallpaper layer alive between opens (#900) (91d9f2e)
- gpu: never wake a suspended dGPU to measure it (#824) (6fa4f31)
- update: fetch metadata only, and cap the depth (b97d661)
Bug Fixes
- revert perf(overview): keep the wallpaper layer alive... for now (a287138)
- dashboard: revert smallweather and profile avatar size to original in favour of fonts drop (af4fc59)
- support WPA3 key-mgmt selection (13a349e)
- bar: let the calendar popout displace notifications like the others (#882) (200ea77)
- launcher: stop the app grid from crashing on stale desktop entries (a2af3b4)
- update: stop the tweak path from stomping user settings (55d79ab)
- systemd: install the update-checker units (d636aa7)
- switch to QStringList (bf42ce0)
- installer: add matugen helper library and integrate into distro installation scripts (9639637)
- i18n: clear dummy translations and fully translate Arabic (4e3a1a7)
- remove backticks from caelestia update in build-shell comment causing build errors (13ae4d6)
- bar: status icon dragging not working (67f6dfa)
- dock: re-add import quickshell in dock to fix dock crash (9bc230d)
- color: end a preview on an outcome and state smart from the shell (bcb206d)
- i18n: improve Spanish translations (#856) (8d6fca5)
- launcher: revert image and wallpaper changes, restore windows, keybinds, and animations (e304362)
- put appmenu on a diet (b284256)
- network: act on a saved profile from every network page (e614b35)
- network: act on the selected saved profile, not the SSID (2715f20)
- network: take the network down before a profile switch (d8fa387)
- installer: put the command directory on the session PATH (441674d)
- installer: drop the CLI check the packages step cannot satisfy (9a1042c)
- launch: keep only the bar launch routing changes per review feedback (7e47c9c)
- color: restore the desktop apply's name and the test env (afb892a)
- scripts: do not warn about our own missing checksum (903944b)
- installer: report a failed prebuilt download on stderr (f5a97a2)
- wallpaper: sort by perceptual colour distance as dominant colours load (876d7da)
- installer: stop pip-installing the legacy Python CLI (dc02fd9)
- arpc: point the Discord GitHub button at this repo (20daea5)
- shortcuts: launch the configured terminal instead of hardcoded foot (c01de53)
- keybinds: return the real keybind list from the property (f72f62c)
- nexus: make the global bar position win over per-monitor overrides (eff1c42)
- launch: route the remaining launches through the Launch module (8b1de8a)
- installer: report a failed prebuilt download on stderr (64c90b8)
- color: let a caller state smart mode instead of reading it back (d183816)
- color: make a color switch land at once and keep what the wallpaper picked (922c599)
- nexus: exempt the app info sub-page from the search audit (d2fa163)
- nexus: index the new claude cli setting for search (94c58a8)
- Remove Power management from caelestia and let kde settings manage it. (597e0de)
- aur: refuse to build without a source checksum (375b19b)
- ai: make the claude cli tool bypass opt in (229f292)
- plugins: pass index values to the install script as arguments (b2c361e)
- shell: pass secrets to secret-tool in the environment (c2164f5)
- ai: download the claude installer before running it (7404ea8)
- scripts: verify the todoist appimage download (0073e0b)
- scripts: validate the login screen sudoers rule (a674a37)
- scripts: download the ollama installer before running it (c9ed4b3)
- scripts: refuse unsafe prebuilt shell archives (37ab497)
- scripts: check the cava sdk archive before unpacking it (f103d27)
- installer: quote the shim paths in generated scripts (2bb72cb)
- installer: check the password without a shell or path lookup (282c9b1)
- installer: keep the cache directory and install log private (175b51e)
- installer: remove the shell from the cache cleanup (f3cd534)
- installer: harden privilege, download and uinput handling (7f0dd77)
Caelestia v2.5.0
What's New in v2.5.0
Features
- dock: show app badges on dock icons (7c29aee)
- services: add the launcher entry service (28e7aa6)
- components: port AnimatedRepeater from upstream (f8d21e2)
- config: type the workspace icon rules (f34fb65)
- ambient glow (#803) (ed689fd)
- settings: add QVariant union types (e7e4b15)
- lock: reveal the typed password from the greeter's leading icon (a68ec48)
Bug Fixes
- ensure caelestia env variables when systemd does not start the session (33e4541)
- sddm theme did not install when plasmalogin binary present too (5027841)
- services: read the idle timeout list through the typed list (6257448)
- settings: only convert a list write, not every mismatch (760f7d2)
- settings: accept a convertible type for a multi-type option (0666be5)
- settings: reject global option access from overlay layers (8921fee)
- nexus: open the clock format list upwards (0399552)
- dashboard: wrap long weather conditions (dc3da59)
- bar: stop reserving window icon space when maxWindowIcons is 0 (989cbaf)
- services: only list physical ethernet interfaces (d81ded3)
- bar: collapse a tray submenu that holds only separators (51697a4)
- bar: constrain audio device labels to a fixed popout width (5059c3d)
- filedialog: match filter suffixes case-insensitively (c8f4178)
- lyrics: bind hasLyrics to the signal that fires after it changes (42b7857)
- icons: settle each ask once and retry only a new window (0f28f10)
- installer: stop an unset HOME aborting the TUI (7d73e08)
- scripts: clear the lint failures keeping python-quality red (2e5121f)
- clipboard: settle a wipe once, whatever the signal order (0f1c0bc)
- weather: bound the forecast walk by the shortest array (149ff25)
- notifs: stop a cap of zero evicting the newest notification (1c6fd66)
- github: guard the contribution chain before dereferencing (b572a75)
- screenedges: push restored corners to KWin after a crash (f491a7c)
- icons: stop a failed icon lookup blocking a retry (7a0ff94)
- shortcuts: bind the new keys when gdbus cannot be spawned (985ff90)
Caelestia v2.4.3
What's New in v2.4.3
Features
- color: render a generated palette at a chosen intensity (#791) (7f91352)
- better network selection popup row (b42cfb6)
- i18n: add Spanish translation (d06438c)
- single source of icons for all drawers (a3cad98)
- add advanced color page back (432376c)
- emoji-db now reads emojis from kde directly (9320556)
- app right click menu in launcher and separate dock pinned app list (4b88ee1)
- per workspace apps and window preview on dock (4755c30)
- installer: register the window rules step (b2a8cc2)
- apply window rules for opacity, dialogs and picture-in-picture (949c9fb)
- services: offer temperature and data sizes as unit enums (7e0fc67)
- plugin: render enum values as names and guard saveItem (2a83804)
- lock: toggle password visibility (3d95adb)
- bar: add clock seconds and workspace visibility options (b16aac1)
- cli: say how to start the shell without logging out (39b71c1)
- package: the fonts move from the package to the install (31befaf)
- install: the login screen comes from the package (03beee3)
- package: ship the user's half, and clone the tag for it (9d5230e)
- install: start the shell from one systemd unit (fa7fb99)
- cli: apply the user's half from a packaged install (92b0569)
- install: pass the install kind to the step scripts (2ed8aa5)
- login: configure Plasma Login's greeter as well as SDDM's (5b22820)
- bar: make the status icons an ordered list in the config (c247123)
- utilities: add the game mode quick toggle (f95f7f1)
- nexus: add the featured wallpaper tile (d3ecd4a)
- bar: use upstream's displayType for the workspace indicator (3f0b8c4)
- bar: let bar.workspaces.ignoredTags decide which windows get an icon (0f22f96)
- aur: ship the command, the palette data, the lock screen and the effect (fdc5cbf)
- color: apply the palette to the desktop instead of handing it to a daemon (b9548b8)
- color: generate the palette ourselves with matugen (a6956ec)
- theme: add a matugen template for scheme.json (8607750)
- cli: add the caelestia dispatcher and its tests (f15f860)
- commands toggle in launcher (80185a1)
- consistancy for click & hover effects (54444b7)
- buttons now follow one base animation (2d14934)
- animation consistency in codebase (0b27815)
Performance
- storage: collect disks off the GUI thread (36f4f27)
- gpu: probe usage and name without shell chains (c43f639)
- defer startup work and silence KDE Hyprland fallbacks (70bcc8f
- lower clock precision without breaking recorder (79b9011)
- stop the logo animations while their window is off screen (8ad9894)
- only hold the audio analysis services while the shapes are shown (0335db5)
- stop analysing digital silence in the visualiser (a8e067b)
Bug Fixes
- resolve the sourced-from directory at source time (6b44a65)
- osd: keep the brightness icon on the brightness slider (#744) (194f4e3)
- color: hold the intensity slider until the render lands (36465d4)
- installer: configure the TUI build from a clean directory (caecc0f)
- scripts: choose the package manager by distro, not by PATH (a77d02d)
- scripts: locate the sparse-checkout rules in a worktree (50d53db)
- scripts: require BUNDLE_DIR and read the distro directly (ae6e6fc)
- scripts: stop reading an unanswered install kind as a checkout (5010fcd)
- installer: guard the CAVA SDK fetch and move Darkly to its own module (af3f14e)
- uninstall: source the shared helpers instead of shimming them (8ab9cf9)
- lib: report an unresolvable install directory (6de70c)
- uninstall: remove only installed packages, via the shared helpers (672b50a)
- uninstall: only hand installed packages to the package managers (b1bcda4)
- scripts: keep the update path's package check and submodule abort (d221209)
- scripts: use caelestia_sudo in setup.sh and the KDE deploy step (c50e08d)
- installer: stop repeating Darkly and CAVA work on updates (854ecb1)
- do not remove system level pkgs during uninstallation (64c80ad)
- call packages.sh from build-shell directly to ensure everything is uptodate ([3cb8ed6](3cb8ed67a6d90ff1a97a4edc43e43...
Caelestia v2.4.2
What's New in v2.4.2
Features
- update whatsnew entries (ab3933c)
- install the SDDM theme by default (6e919c7)
- notification multi monitor support and mute when fullscreen (6d2d0e6)
- window switcher addons (#710) (44f97dd)
- audio reactive material shape to desktop addons (41c8ed8)
- add whatsnew shortcut, ipc handler and launcher action (ce81302)
- track whatsnew acknowledgement by revision (34c28e4)
- cava prebuild integration (a693664)
- add per-monitor taskbar position in Nexus settings (f29441d)
- gate GIF recorder behind a config toggle (default off) (44054da)
- add SDDM theme as optional installer module (e4a91ce)
- add GIF recording option and fix drag-reorder bug (1aa315d)
Performance
Bug Fixes
- add missing dependencies (73a48f5)
- remove unlinked submodule (#722) (63d53e4)
- build libcava from AUR for the prebuilt shell asset (#674) (fc16683)
- fix bug in installer UI (ec16651)
- avoid shell interpolation in inhibitor handling (2216312)
- address remaining review findings (007ec20)
- bar unhiding a little when switching workspaces with dodgeFocusedWindows (87e1bda)
- correctly identify arch for libcava installation (1490824)
- rename conflicting whatsnew window methods (31334d4)
- update shell restart method (9ed3d2c)
- report non-fatal SDDM theme problems as WARN, not FAILED (693edd1)
- address second round of review feedback (708b094)
- show GIF recordings in RecordingList (e5b12ea)
- use delegateWrapper dims to avoid reparent rebind in drag fix (5cf6a07)
- address review feedback for SDDM theme integration (4c8c591)
- address review comments (104ee3e)
- prune the deleted submodules from local git (0b8e5ee)
Caelestia v2.4.1
What's New in v2.4.1
Features
- Troubleshooting for update issues (7349b97)
- greeter addons (#682) (e543de2)
- DodgeWindows now works on both monitors + a typeerror fix (1af13e8)
- network popout sections and related warn scene fixes (6768cde)
- Weather.cpp service used by Lockscreen and Weather.qml (dd3db19)
Bug Fixes
- lockscreen Authentication timeout (93f4f07)
- Include missing dependencies for fedora and ubuntu with a autoverifying workflow (7d8a77a)
- include missing dependencies (d3793e1)
- color page now have variants tuning and more options in advanced settings (74ff5b0)
- simpilfy dodgewindow logic to work for multiscreen setups (3ca09ae)
- Clipboard now correctly displays high res img and blank img race condition gone (412dcb1)
- Workspace tracker correctly parse desktop signal and multimonitor swipe isolation (51b92c4)
- hook fingerprint config with shell.json (2430f68)
- remove unreliable clear notification timer and qml lint conventions followed (6955208)
- CAELESTIA_FORCE_BUILD_SHELL = true until correct fix found (44b5be9)
May your desktop always reflect the stars.