Commit graph

38 commits

Author SHA1 Message Date
Breadway
673b5c52cf chore: update Cargo.lock for v0.2.0 2026-06-24 06:54:36 +08:00
Breadway
3ae3eff59e Release 0.2.0: media widget, wifi popover, control panel 2026-06-24 06:43:52 +08:00
Breadway
570d4224a0 CI: use /tmp for ecosystem clone, avoid permissions conflict
All checks were successful
Mirror to GitHub / mirror (push) Successful in 51s
2026-06-19 08:38:38 +08:00
Breadway
aa34aa1319 Bump bread-theme to v0.2.8 (live-reload fix)
Some checks failed
Build and publish package / package (push) Failing after 3m57s
Mirror to GitHub / mirror (push) Successful in 56s
2026-06-17 12:55:47 +08:00
Breadway
0893724e5f Fix illegible text on light pywal palettes + hot-reload
Use bread-theme 0.2.7's luminance-picked ink (@on-*) for text on coloured
backgrounds: the active workspace pill and notification cards previously kept the
pywal foreground, which vanished when those slots came out light. Drop the
blanket label colour rule (it overrode the per-surface ink on child labels).

Switch to bread_theme::gtk::apply_app_css so the bar recolours live on
`bread-theme reload` instead of only at startup.
2026-06-17 12:40:52 +08:00
Breadway
37b9a342e1 Release 0.1.7: shared bread-theme stylesheet
Some checks failed
Mirror to GitHub / mirror (push) Successful in 27s
Build and publish package / package (push) Failing after 4m7s
Pin bread-theme v0.2.6 and load the shared ecosystem stylesheet.
2026-06-16 18:31:18 +08:00
Breadway
0cb27ec1c4 theme: load the shared bread-theme stylesheet
Call bread_theme::gtk::apply_shared() before breadbar's own rules so fonts,
palette, and generic widgets come from the one ecosystem stylesheet (and
recolour live). Keep only breadbar-specific CSS (bar window, workspace
buttons, stats, notifications, OSD). Bump bread-theme dep to v0.2.6.
2026-06-16 16:56:52 +08:00
Breadway
1959a86157 Default workspace-button rounding to 0
Some checks failed
Mirror to GitHub / mirror (push) Successful in 31s
Build and publish package / package (push) Failing after 3m55s
2026-06-15 18:51:42 +08:00
Breadway
b098178058 Embed SVG assets and rasterise with resvg
Some checks failed
Mirror to GitHub / mirror (push) Successful in 33s
Build and publish package / package (push) Failing after 3m10s
The packaged binary panicked on startup ("svg load: Unrecognized image file
format"): asset SVGs were referenced by their build-time CARGO_MANIFEST_DIR
path (absent on an installed system, so read_to_string returned empty bytes),
and gdk::Texture::from_bytes can no longer decode SVG since librsvg dropped its
gdk-pixbuf loader.

- include_str! the SVGs into the binary (no runtime asset files)
- rasterise via resvg/tiny-skia into a gdk::MemoryTexture (no system loader)
2026-06-14 19:36:38 +08:00
Breadway
ec24ed6371 Disable debug package so the main package publishes correctly
Some checks failed
Mirror to GitHub / mirror (push) Successful in 46s
Build and publish package / package (push) Failing after 3m11s
makepkg's debug split produced a -debug pkg; the upload's head -1 could
grab it instead of the main package. !debug yields a single package.
2026-06-13 23:00:49 +08:00
Breadway
ea441a2de3 Use REGISTRY_TOKEN (scoped write:package) for registry publish
Some checks failed
Mirror to GitHub / mirror (push) Successful in 36s
Build and publish package / package (push) Failing after 3m21s
2026-06-13 22:55:40 +08:00
Breadway
289fc1c827 Disable LTO in PKGBUILD (vendored ring/mlua static libs vs makepkg -flto) 2026-06-13 17:06:54 +08:00
Breadway
4b4d222784 Clone from public URL, not GITHUB_SERVER_URL (resolves to localhost in runner)
The Forgejo runner injects GITHUB_SERVER_URL as http://localhost:3002, which
is unreachable from inside the job container. Use the public URL instead.
2026-06-13 16:14:13 +08:00
Breadway
7c23265eab Rename mirror secret to MIRROR_TOKEN (GITHUB_ prefix is reserved)
Forgejo/gitea rejects user secret names starting with GITHUB_.
2026-06-13 16:10:49 +08:00
Breadway
00dbb1df5f Fix Forgejo workflows for the actual server capabilities
- package.yml: correct Arch registry upload (octet-stream + binary body),
  drop --privileged, manual shell clone (archlinux image has no Node),
  built-in Actions token, --nocheck
- mirror.yml: clone --mirror + explicit refs push with --prune
2026-06-13 16:02:07 +08:00
Breadway
50bb249b3a Add packaging/arch PKGBUILD and Forgejo Actions workflows
- packaging/arch/PKGBUILD: builds and publishes breadbar to [breadway] repo
- .forgejo/workflows/mirror.yml: mirrors every push/tag to GitHub
- .forgejo/workflows/package.yml: builds on tag, publishes to Forgejo registry

Requires FORGEJO_TOKEN and GITHUB_MIRROR_TOKEN secrets in Forgejo.
2026-06-13 12:12:41 +08:00
Breadway
44a8d95887 feat: add system tray (StatusNotifierWatcher / SNI)
Some checks failed
release / build (push) Failing after 3s
Implements org.kde.StatusNotifierWatcher as a D-Bus service so apps
like Nextcloud can register their tray icons. Icons are rendered from
SNI ARGB pixmaps (falling back to icon-name theme lookup), click calls
Activate(0,0), and NameOwnerChanged cleans up ghost icons when an app
exits. Styling follows the Bread Design System (4px tertiary radius,
xs/sm spacing, opacity transitions).

Also fixes a latent infinite-loop risk in osd.rs (.flatten → .map_while)
and syncs the notifications server version string to CARGO_PKG_VERSION.
2026-06-11 22:31:25 +08:00
Breadway
a036737823 chore: update Cargo.lock for v0.1.1
Some checks failed
release / build (push) Failing after 3s
2026-06-11 14:27:58 +08:00
Breadway
432c2da18c chore: bump version to 0.1.1 2026-06-11 14:21:28 +08:00
Breadway
9d2a4c9b54 fix: add missing libpulse dep, add optional_system_deps
libpulse (pactl) was missing — breadbar shells pactl 3x for volume.
Optional: hyprland (workspace display, not a linked dep).
2026-06-11 13:37:40 +08:00
Breadway
2b47f796d2 fix: use relative symlink for latest to work inside Docker containers 2026-06-07 09:02:38 +08:00
Breadway
0632d83c01 fix: add contents: write permission for GitHub Release creation
Some checks failed
release / build (push) Failing after 12s
2026-06-07 00:00:47 +08:00
Breadway
4c28b6cc0e fix: create GitHub Release before uploading artifacts 2026-06-06 23:52:39 +08:00
Breadway
2db421d8eb fix: switch bread-theme to git dep (v0.1.0) for CI 2026-06-06 23:26:20 +08:00
Breadway
b3b3b86a76 fix: add missing build deps for hestia (Ubuntu) runner 2026-06-06 23:19:53 +08:00
Breadway
5c649a301e fix: use apt-get on hestia runner (Ubuntu, not Arch) 2026-06-06 22:47:41 +08:00
Breadway
4b66efa87c Refactor theme onto bread-theme; add bakery.toml and release workflow
- Cargo.toml: depend on bread-theme (path dep for local dev, git dep for
  production) with gtk feature; remove local theme dependencies
- src/theme.rs: replace local pywal/Catppuccin impl with bread_theme::gtk
  helpers; local bar-specific CSS is preserved
- bakery.toml: describes breadbar for bakery install
- release.yml: builds on hestia self-hosted runner, publishes binary to
  dl.breadway.dev and GitHub Releases on v* tags
2026-06-06 22:31:10 +08:00
Breadway
4a3604f78a Fixes 2026-05-19 12:31:26 +08:00
Breadway
b8a3424834 Prepare repo for public GitHub release
Add README, MIT LICENSE, expanded .gitignore, and updated SVG icon set
to make the repository presentable for open-source publication.
2026-05-19 12:30:12 +08:00
Breadway
e233750b24 General Dev 2026-05-18 23:01:52 +08:00
Breadway
255be18ca2 nvm actual init commit 2026-05-17 13:17:31 +08:00
Breadway
633467b6f2 Initial commit 2026-05-17 13:13:37 +08:00
Breadway
3100ee0591 step 8-10: notification daemon (zbus), popup window, SIGHUP theme reload 2026-05-17 08:50:08 +08:00
Breadway
f1b471652b step 6+7: live clock, CPU/MEM/power/battery/WiFi stats poller 2026-05-17 08:40:35 +08:00
Breadway
241e3bc2cb step 5: live Hyprland workspace buttons via EventStream 2026-05-17 08:34:31 +08:00
Breadway
542cbae939 step 3+4: pywal theme loader, three-section CenterBox layout 2026-05-17 01:00:32 +08:00
Breadway
ccf5f67fde add .gitignore, remove target/ from tracking 2026-05-17 00:38:51 +08:00
Breadway
1bbe9a2929 scaffold: Cargo.toml, module stubs, layer-shell window (step 1+2) 2026-05-17 00:38:19 +08:00