| 1 | # Changelog |
| 2 | |
| 3 | ## Unreleased |
| 4 | |
| 5 | - `budctl bass` sets bass boost band by band: `budctl bass low|medium|high <level>`. The buds |
| 6 | ignored the old `budctl bass <level>`: they need to know which band the level is for. |
| 7 | |
| 8 | ## 0.1.4 (2026-11-01) |
| 9 | |
| 10 | budctl comes to Android, and gets an icon. |
| 11 | |
| 12 | - An Android app: the desktop app's pages and look on a phone (Android 12 or newer), with the same |
| 13 | Rust library inside, colors from your wallpaper, and no internet permission. Install `budctl.apk` |
| 14 | from this release. It is signed with budctl's own key; the certificate's SHA-256 fingerprint is |
| 15 | `45:6F:9B:93:AA:40:1D:57:AA:6C:75:0D:FF:13:FA:82:5A:7B:28:B6:3D:D0:40:99:80:6F:A9:7C:14:75:23:12`. |
| 16 | - budctl has an icon: the LED battery ring around a dot-matrix "b". The release archives carry it, |
| 17 | and `install.sh` and the PKGBUILD install it for the launcher entry. |
| 18 | - With `--debug`, `budctl-gui` also shows each command, connect and failure between the frames. |
| 19 | |
| 20 | ## 0.1.3 (2026-11-01) |
| 21 | |
| 22 | The desktop app moves, the Nothing way: short, eased out, fading rather than sliding. |
| 23 | |
| 24 | - Hovers, the chosen segment, the keyboard cursor and the current preset's circle fade instead |
| 25 | of snapping. Switches stretch from the knob into the fill as they turn. |
| 26 | - Pages fade in when opened, and when the buds are first read; dialogs fade in and out, as do the |
| 27 | error above a page and the bands of a custom preset. |
| 28 | - The battery rings light their dots one after the other, like the Glyph lights, when they first |
| 29 | show and when a level changes. |
| 30 | - While the app looks for the buds, a row of dots scans and the sidebar's light blinks; a light |
| 31 | blinks beside Stop while the buds ring. |
| 32 | - Nothing moves once a change has settled, so an idle window uses no CPU. `"gui": {"motion": |
| 33 | false}` in the config turns the animations off. |
| 34 | |
| 35 | ## 0.1.2 (2026-10-29) |
| 36 | |
| 37 | A new look for the desktop app, after Nothing OS in Material You colors, and a window that no |
| 38 | longer lags. |
| 39 | |
| 40 | - `budctl-gui` has a new look, after Nothing OS in Material You colors, like the owner's Aurora |
| 41 | shell: dot-matrix page names and battery figures (Doto), LED battery rings, dotted sliders for |
| 42 | the bass level and the EQ bands (drag, or the mouse wheel), pill switches, tracks and chips, |
| 43 | Space Grotesk and Space Mono text. The fonts are built in (SIL OFL 1.1, `OFL-fonts.txt` in the |
| 44 | release archive). |
| 45 | - The palette file takes Aurora's Material 3 keys (`primary`, `tertiary`, `surfaceLow`, |
| 46 | `outline`…), so `~/.cache/matugen/aurora.json` works as it is. `bg` and `fg` are still read; |
| 47 | `surface` and `secondary` are no longer used. |
| 48 | - `budctl-gui` no longer lags. It repainted most of the window many times over for each hover, |
| 49 | click or scroll step; now it repaints only what changed, and a scroll paints each card once. |
| 50 | On the Overview, a hover went from about 25 ms of drawing to 2, a scroll step from about 50 |
| 51 | to at most 12, and the list of keys from 35 to almost nothing. |
| 52 | - The keys that need Shift work in `budctl-gui`: `?` (the list of keys), `G`, `J`, `K` and `gT`. |
| 53 | The window used to see them without Shift (`/`, `g`, `j`, `k`, `gt`). |
| 54 | - Built from source, debug builds (`cargo run`) optimize the dependencies, so the desktop app |
| 55 | runs smoothly there too. |
| 56 | |
| 57 | ## 0.1.1 (2026-10-28) |
| 58 | |
| 59 | The first release, with builds for x86_64 and aarch64 Linux and an install script. |
| 60 | |
| 61 | Supported buds: realme Buds T310. |
| 62 | |
| 63 | - `budctl`, the command line: `list`, `status`, noise control and its levels, game mode, EQ |
| 64 | presets and custom EQ presets (create, edit, rename, delete), switches (bass boost, 3D sound, |
| 65 | wind, dual connection), bass level, find (ring the buds), touch controls, the hold cycle, and |
| 66 | the devices dual connection keeps. `--json` for scripts and status bars, `--debug` for hex |
| 67 | dumps. |
| 68 | - `budctl-gui`, the desktop app (Wayland): the same features on five pages, mouse first with |
| 69 | vim-like keys on top, colors from a matugen palette. |
| 70 | - `~/.config/budctl/config.json`: a default device, and the desktop app's idle time and start |
| 71 | page. Created with the defaults when missing. |
| 72 | - The desktop app writes its built-in colors to `~/.config/budctl/theme.json` when there is no |
| 73 | such file, and logs errors and session events to `~/.local/state/budctl/gui.log`. |