Commit Graph
16 Commits
Author SHA1 Message Date
vicrodh a912ced3d0 build: bump Node 20 to Node 24 across CI workflows and Flatpak manifest
Cherry-picked from PR #377 (thanks @Mar0xy) — Node-only portion, no
Discord IPC additions:

- 4 workflows (release-{linux,linux-aarch64,macos,flatpak}.yml) now
  install Node 24
- packaging/flatpak/com.blitzfc.qbz.yml: SDK extension node20 → node24,
  build append-path and npm_config_nodedir aligned

Forcing function: @icons-pack/svelte-simple-icons@7.x already in use
declares engines.node >=24, so Node 20 produces an EBADENGINE warning
in CI. Node 20 also reached EOL on 2026-04-30. Node 24 has been LTS
since October 2025 (~7 months of maturity).

Discord IPC permissions and qbz-wrapper script from #377 were
intentionally NOT cherry-picked — there's no Discord RPC feature in
QBZ today (#336 is still planned but not implemented), so adding the
sandbox permission and the launch wrapper now would expand the
attack surface for nothing. They'll land together with the actual
feature when it ships.

cc
2026-05-05 12:10:07 -06:00
vicrodh 2f5a6aaddf ci(updater): sign artifacts and consolidate updater manifest
Adds TAURI_SIGNING_PRIVATE_KEY(_PASSWORD) env to release-linux,
release-linux-aarch64, and release-macos build steps, collects the
resulting .sig files into the release artifacts, and adds a new
release-updater-manifest workflow that waits for all platform sig
files to land on the release and assembles latest.json for the
updater endpoint.

Cherry-picked from #305 by @afonsojramos.

cc
2026-04-13 14:53:52 -06:00
vicrodh d9d3054921 ci: trigger APT repo update on release publish 2026-03-07 23:03:42 -06:00
vicrodh afe086e6fd fix(ci): stabilize rc releases and version flatpak artifact
cx
2026-03-01 19:34:24 -06:00
vicrodh 2b15a0828c chore(packaging): unify .desktop files across all formats
- Add flac; keyword to all .desktop files (was only in deb template)
- Add StartupNotify=true to flatpak .desktop files (was missing)
- Add Keywords line to snap .desktop (was missing entirely)
- Unify shortDescription to match other .desktop Comment fields

cc
2026-02-24 09:32:37 -06:00
vicrodh 3d497a33b0 fix(desktop): add %u to Exec and complete tarball .desktop for URI handling
The Tauri .desktop template was missing %u in the Exec line, preventing
the desktop environment from passing qobuzapp:// URIs as arguments when
launched from the browser. The tarball .desktop was also missing MimeType,
StartupWMClass, and StartupNotify fields.

Closes #44

cc
2026-02-19 16:17:25 -06:00
vicrodh a6cfa36a8d fix(packaging): compile binary as qbz instead of qbz-nix
Add [[bin]] section to Cargo.toml so cargo produces target/release/qbz
directly. Update all packaging references (workflows, PKGBUILD, Flatpak
manifest, AUR desktop file) to use the new binary name. This fixes DEB
and RPM packages installing the binary as /usr/bin/qbz-nix instead of
/usr/bin/qbz.
2026-02-18 16:45:10 -06:00
vicrodh ddf4142188 fix(appimage): pin WebKitGTK to 2.44.0-2 to prevent EGL crash
The AppImage EGL_BAD_PARAMETER crash is caused by how Tauri's
linuxdeploy bundles newer WebKitGTK versions (tauri-apps/tauri#11994).

Fix: pin WebKitGTK to 2.44.0-2 on ubuntu-24.04, matching the proven
fix from other Tauri apps (audioling#40, OmniKee).

Also revert runtime env var workarounds (LIBGL_ALWAYS_SOFTWARE,
default-off hardware accel) since the fix is at the build level.
Keep only the NVIDIA DMA-BUF workaround which is still needed.
2026-02-09 01:28:11 -06:00
vicrodh 43ed44daf7 chore: Improve desktop integration and AppImage metadata for release
- Add Comment field to all .desktop files for app launcher descriptions
- Change category from Music to AudioVideo for better categorization
- Add Keywords for improved searchability (audiophile, hifi, streaming)
- Enhance metainfo.xml with detailed feature list and links
- Configure AppImage bundle settings in tauri.conf.json
- Update workflows to generate improved .desktop files

AppImage now includes embedded icon via Tauri icon configuration.
App will now appear in Multimedia category with proper description in all Linux app launchers.
2026-01-20 21:03:07 -06:00
vicrodh b182d2d6d5 Remove API key injection from GitHub workflows
All API credentials are now managed server-side through the Cloudflare
Workers proxy. Build workflows no longer need to inject secrets into
the binary.

Removed:
- SPOTIFY_API_CLIENT_ID/SECRET from release-linux.yml
- TIDAL_API_CLIENT_ID/SECRET from release-linux.yml
- DISCOGS_API_CLIENT_KEY/SECRET from release-linux.yml
- LAST_FM_API_KEY/SHARED_SECRET from release-linux.yml
- Complete 'Inject API secrets' step from release-flatpak.yml

This completes the API keys refactor for Flathub compliance.
2026-01-17 16:52:34 -06:00
vicrodh 5dee9f3bbe fix(ci): pass API secrets to build steps for embedding 2026-01-14 04:33:52 -06:00
vicrodh 031f1382cb fix(ci): correct tarball structure for AUR PKGBUILD 2026-01-14 04:17:19 -06:00
vicrodh 3ae0aed20a fix(ci): add tarball generation for AUR workflow 2026-01-14 03:51:22 -06:00
vicrodh cc244a51b8 fix(ci): add libasound2-dev dependency for ALSA audio support 2026-01-14 03:21:37 -06:00
vicrodh 1ed09acda3 chore(release): sync version from tag 2026-01-12 10:16:06 -06:00
vicrodh 13af89753d chore(packaging): add linux workflows and manifests 2026-01-12 10:09:39 -06:00