GTK4 control panel for BOS (Bread Operating System)
  • Rust 54.3%
  • Svelte 35.6%
  • TypeScript 6.5%
  • JavaScript 2.7%
  • CSS 0.8%
Find a file
Breadway fe03b45709
Some checks are pending
check / check (push) Waiting to run
dev release / build (push) Waiting to run
Merge pull request 'style(power): rustfmt the lock command tests' (#89) from fix/bset-fmt-power-settings into main
2026-10-20 15:53:54 +08:00
.forgejo/workflows ci: stop dev-release/check temp-dir cleanup from racing concurrent jobs 2026-09-28 22:26:24 +08:00
docs feat(displays): draw mirrored outputs as one group and route every change through the guard 2026-10-13 19:35:29 +08:00
frontend Merge pull request 'fix(users): allow a colon in passwords and say why a change failed' (#82) from fix/bset-64-password-colon into main 2026-10-14 13:56:01 +08:00
packaging Drop pacman packaging, bakery-only; fix broken Tauri build path in CI 2026-07-23 10:43:23 +08:00
scripts Complete Settings v2 controls and proposal gap fixes 2026-10-03 16:14:37 +08:00
src style(power): rustfmt the lock command tests 2026-10-20 15:36:20 +08:00
.git-blame-ignore-revs ci: gate cargo fmt --check in check.yml 2026-09-11 17:50:32 +08:00
.gitignore ci: build dev track and PR checks against dependency main 2026-09-28 13:21:47 +08:00
AGENTS.md docs: remove em dashes from code and docs 2026-09-07 09:56:09 +08:00
bakery.toml Use Arch package name webkit2gtk-4.1; track AGENTS.md 2026-08-15 22:03:30 +08:00
CONTRIBUTING.md ci: build dev track and PR checks against dependency main 2026-09-28 13:21:47 +08:00
LICENSE Extract bos-settings into its own repo; add Appearance/Startup Apps/Display editors 2026-07-04 23:31:18 +08:00
README.md docs: remove em dashes from code and docs 2026-09-07 09:56:09 +08:00

bos-settings

System settings app for BOS (Bread Operating System): Tauri 2 + Svelte 5. Configures every bread* app's config plus core system settings (network, sound, power, users, firewall, snapshots, packages, AUR, firmware, Hyprland display/appearance/autostart) non-destructively.

Distributed via bakery. There is one long-lived branch, main; see CONTRIBUTING.md for the single-trunk / RC-tag release model shared across the bread ecosystem.

Building

The Svelte frontend lives in frontend/, the Rust backend in src/ (this repo's crate is not named src-tauri). cargo tauri build runs the frontend build hook; a plain cargo build does not.

cd frontend && npm ci && npm run build
cd ../src && cargo build --release

Dev (Vite + cargo tauri dev):

cd src && cargo tauri dev

Packaging / releasing

Bump src/Cargo.toml (and frontend/package.json) version, then follow CONTRIBUTING.md: work lands on main via feature/ / fix/ branches (every push to main publishes a bakery dev build). Tag vX.Y.Z-rc.N for beta, vX.Y.Z for the signed stable release. Do not push to a dev branch; there isn't one.