Complete the remaining BOS Settings v2 controls and integrations #45

Closed
opened 2026-10-02 18:03:07 +08:00 by Breadway · 3 comments
Owner

Follow-up to the implemented navigation, dashboard, guarded forms, Storage, Sharing and combined update flow on feature/bos-settings-v2. Parent: BSET-43. The full approved mockup is not complete.

Remaining work:

  • Notification preferences: DND scheduling, per-app policy, sounds and lock-screen previews. Depends on BAR-56.
  • Persisted pointer/touchpad speed, tap-to-click, click method and extra scrolling options in cooperation with the BOS loader.
  • Power profiles, idle dim/lock/sleep, lid and power-button choices.
  • Unified Flathub/repository/AUR app discovery, votes, installed markers and ranking.
  • Language/region choices and clock-format presets.
  • Accessibility cursor/text sizing and reduce motion, retaining existing Orca/kmag controls. The live zoom slider is now implemented.
  • Shortcuts: human action names, grouping, list filtering and raw-command disclosure (BSET-32); layout-aware capture and conflicts are already implemented.
  • Appearance/Desktop previews, presets and friendly labels; broaden Undo beyond Home quick controls.
  • Mirroring controls and verification of transform/VRR support in the BOS login loader.
  • Backup destination picker, scheduling and timeline. BSET-22 system snapshot restore has landed on main and is included in the v2 branch.
  • Unused-package review and reliable system/files/snapshot disk usage breakdown.
  • About health checks and an OS version only when BOS publishes one.

The current implementation explicitly identifies unavailable features instead of providing switches backed only by unused settings files. See docs/capability-inventory.md and docs/v2-progress.md in the branch for preserved controls, manual checks and capability changes requiring the user's decision. UI testing is reserved for the user; do not launch the app or manipulate the desktop.

Follow-up to the implemented navigation, dashboard, guarded forms, Storage, Sharing and combined update flow on feature/bos-settings-v2. Parent: BSET-43. The full approved mockup is not complete. Remaining work: - Notification preferences: DND scheduling, per-app policy, sounds and lock-screen previews. Depends on BAR-56. - Persisted pointer/touchpad speed, tap-to-click, click method and extra scrolling options in cooperation with the BOS loader. - Power profiles, idle dim/lock/sleep, lid and power-button choices. - Unified Flathub/repository/AUR app discovery, votes, installed markers and ranking. - Language/region choices and clock-format presets. - Accessibility cursor/text sizing and reduce motion, retaining existing Orca/kmag controls. The live zoom slider is now implemented. - Shortcuts: human action names, grouping, list filtering and raw-command disclosure (BSET-32); layout-aware capture and conflicts are already implemented. - Appearance/Desktop previews, presets and friendly labels; broaden Undo beyond Home quick controls. - Mirroring controls and verification of transform/VRR support in the BOS login loader. - Backup destination picker, scheduling and timeline. BSET-22 system snapshot restore has landed on main and is included in the v2 branch. - Unused-package review and reliable system/files/snapshot disk usage breakdown. - About health checks and an OS version only when BOS publishes one. The current implementation explicitly identifies unavailable features instead of providing switches backed only by unused settings files. See docs/capability-inventory.md and docs/v2-progress.md in the branch for preserved controls, manual checks and capability changes requiring the user's decision. UI testing is reserved for the user; do not launch the app or manipulate the desktop.
Author
Owner

Implementation is prepared for review in Settings PR #46, with notification integration in breadbar PR #57.

Added the missing six Home controls and summaries; power modes/automatic switching/history/idle/lid/power-menu settings; notification preferences; persisted mouse/accessibility/font controls; unified app search and source filters; locale/clock choices; previews and Undo; mirroring and login overrides; snapshot timeline/manual snapshots and headless backup schedules; unused-dependency review and measured directory totals; health checks and conditional OS version.

Also fixed saving one stacked form clearing another form's dirty state, asynchronous backup/clock baselines, locale aliases, custom idle-action preservation, stale Undo overwrites, Bluetooth power error reporting and advanced bar text precedence.

Verification: frontend check has zero errors and warnings, tests and production build pass, Rust fmt/clippy pass with warnings denied, and 134 headless Settings tests pass. Companion bar has 24 notification tests and green CI. The final release binary embeds the built frontend, with a repeatable byte verification script. No GUI launch or live configuration writes were used. See docs/v2-progress.md and docs/v2-proposal-verification.md.

User acceptance remains on BSET-43. Hardware/service availability, secure lock surfaces and overlapping Btrfs directory usage are documented; no mockup sample data or trust badges are presented as real readings.

Implementation is prepared for review in Settings PR #46, with notification integration in breadbar PR #57. Added the missing six Home controls and summaries; power modes/automatic switching/history/idle/lid/power-menu settings; notification preferences; persisted mouse/accessibility/font controls; unified app search and source filters; locale/clock choices; previews and Undo; mirroring and login overrides; snapshot timeline/manual snapshots and headless backup schedules; unused-dependency review and measured directory totals; health checks and conditional OS version. Also fixed saving one stacked form clearing another form's dirty state, asynchronous backup/clock baselines, locale aliases, custom idle-action preservation, stale Undo overwrites, Bluetooth power error reporting and advanced bar text precedence. Verification: frontend check has zero errors and warnings, tests and production build pass, Rust fmt/clippy pass with warnings denied, and 134 headless Settings tests pass. Companion bar has 24 notification tests and green CI. The final release binary embeds the built frontend, with a repeatable byte verification script. No GUI launch or live configuration writes were used. See docs/v2-progress.md and docs/v2-proposal-verification.md. User acceptance remains on BSET-43. Hardware/service availability, secure lock surfaces and overlapping Btrfs directory usage are documented; no mockup sample data or trust badges are presented as real readings.
Author
Owner

Final CI follow-up at d16ae25 simplifies the package-query success expressions for the runner's Rust 1.96 Clippy. Local clippy and all 134 tests pass again. Release binary rebuilt after the fix; all 23 embedded frontend/font/license assets still match.

Final Settings binary SHA256: 755ec42689cc8e070a0f93f950733abdfd779f338a87f1b14f1f40031e1e7ef8
Test path: /home/breadway/Projects/bos-settings/src/target/release/bos-settings
Companion bar: /tmp/bos-settings-v2-test/breadbar
The CI rerun is pending. Build details are in docs/v2-build-report.md.

Final CI follow-up at d16ae25 simplifies the package-query success expressions for the runner's Rust 1.96 Clippy. Local clippy and all 134 tests pass again. Release binary rebuilt after the fix; all 23 embedded frontend/font/license assets still match. Final Settings binary SHA256: 755ec42689cc8e070a0f93f950733abdfd779f338a87f1b14f1f40031e1e7ef8 Test path: /home/breadway/Projects/bos-settings/src/target/release/bos-settings Companion bar: /tmp/bos-settings-v2-test/breadbar The CI rerun is pending. Build details are in docs/v2-build-report.md.
Author
Owner

Final verification is green at fc199b2aab (Forgejo Settings run #125). Formatting, clippy with warnings denied and all 134 tests passed. The generated Lua test now uses a vendored test-only interpreter instead of requiring a system Lua executable. Companion breadbar PR #57 also has green CI.

Final Settings test binary: /home/breadway/Projects/bos-settings/src/target/release/bos-settings
SHA256: 5236ba7ee921cad25471b4cb161d129a04bdeb2809fc0d0552211c5225559eba
All 23 built frontend/font/license assets match the executable after Brotli decompression.
Companion bar test binary: /tmp/bos-settings-v2-test/breadbar

BSET-44, BSET-32 and BAR-56 are in Review. BSET-43 remains Doing for the user's rendered UI acceptance. No GUI launch or live configuration writes were performed; exact pixel parity is not claimed. Updated paths/checksums are in docs/v2-build-report.md.

Final verification is green at fc199b2aabc12214ed5f6dc319fdaf74387948c5 (Forgejo Settings run #125). Formatting, clippy with warnings denied and all 134 tests passed. The generated Lua test now uses a vendored test-only interpreter instead of requiring a system Lua executable. Companion breadbar PR #57 also has green CI. Final Settings test binary: /home/breadway/Projects/bos-settings/src/target/release/bos-settings SHA256: 5236ba7ee921cad25471b4cb161d129a04bdeb2809fc0d0552211c5225559eba All 23 built frontend/font/license assets match the executable after Brotli decompression. Companion bar test binary: /tmp/bos-settings-v2-test/breadbar BSET-44, BSET-32 and BAR-56 are in Review. BSET-43 remains Doing for the user's rendered UI acceptance. No GUI launch or live configuration writes were performed; exact pixel parity is not claimed. Updated paths/checksums are in docs/v2-build-report.md.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Breadway/bos-settings#45
No description provided.