chore: remove qbzd headless daemon and its client integration
qbzd was a premature daemon experiment that never shipped (gated off behind QBZD_ENABLED, no user access). Its ratatui 0.29 dependency pinned unicode-width =0.2.0, which conflicts with slint's annotate-snippets in a shared workspace. Remove it entirely; it will be reimplemented from scratch later on the clean, UI-agnostic shell. - Delete crates/qbzd daemon crate + workspace member (drops ratatui, crossterm and the other qbzd-only deps from the lock). - Delete src-tauri qbzd_discovery (mDNS) + its commands/state wiring in lib.rs; drop the direct mdns-sd dep (Chromecast keeps its own via qbz-cast). - Delete remoteApi/remoteEvents/playbackTargetStore; neutralize commandRouter to local-only dispatch (isRemote/skipIfRemote are now always-false no-ops so the ~100 guard call-sites keep compiling). - Strip qbzd branches from playbackService and the remote banner from NowPlayingBar; excise qbzd from CastPicker (Chromecast/DLNA kept). - Remove qbzd i18n keys (5 locales), README daemon node, gitignore note. cargo check (crates + src-tauri) and svelte-check all green. cc
This commit is contained in:
54 files changed
+90
-6225
No files matched your search
@@ -1,77 +0,0 @@
|
||||
[package]
|
||||
name = "qbzd"
|
||||
version = "0.1.9"
|
||||
edition.workspace = true
|
||||
license.workspace = true
|
||||
description = "QBZ headless music daemon for SBCs and servers"
|
||||
|
||||
[[bin]]
|
||||
name = "qbzd"
|
||||
path = "src/main.rs"
|
||||
|
||||
[dependencies]
|
||||
# Core crates (all Tauri-free)
|
||||
qbz-models = { path = "../qbz-models" }
|
||||
qbz-core = { path = "../qbz-core" }
|
||||
qbz-player = { path = "../qbz-player" }
|
||||
qbz-audio = { path = "../qbz-audio" }
|
||||
qbz-qobuz = { path = "../qbz-qobuz" }
|
||||
qbz-library = { path = "../qbz-library" }
|
||||
qbz-cache = { path = "../qbz-cache" }
|
||||
qbz-integrations = { path = "../qbz-integrations" }
|
||||
qconnect-app = { path = "../qconnect-app" }
|
||||
qconnect-transport-ws = { path = "../qconnect-transport-ws" }
|
||||
|
||||
# HTTP server
|
||||
axum = { version = "0.8", features = ["ws"] }
|
||||
tower-http = { version = "0.6", features = ["cors"] }
|
||||
|
||||
# Async
|
||||
tokio = { workspace = true }
|
||||
tokio-stream = { workspace = true }
|
||||
async-trait = { workspace = true }
|
||||
futures-util = { workspace = true }
|
||||
|
||||
# Serialization
|
||||
serde = { workspace = true }
|
||||
serde_json = { workspace = true }
|
||||
|
||||
# HTTP client (for status check + OAuth)
|
||||
reqwest = { workspace = true }
|
||||
|
||||
# Config
|
||||
toml = "0.8"
|
||||
clap = { version = "4", features = ["derive"] }
|
||||
|
||||
# Browser open + URL encoding (for OAuth login)
|
||||
open = "5"
|
||||
urlencoding = "2"
|
||||
|
||||
# System
|
||||
dirs = "6"
|
||||
log = { workspace = true }
|
||||
env_logger = "0.11"
|
||||
sysinfo = "0.34"
|
||||
|
||||
# mDNS discovery
|
||||
mdns-sd = "0.11"
|
||||
hostname = "0.4"
|
||||
|
||||
# Database
|
||||
rusqlite = { version = "0.31", features = ["bundled"] }
|
||||
|
||||
# Credentials (shared keyring with desktop app)
|
||||
keyring = { version = "3", features = ["async-secret-service", "crypto-rust"] }
|
||||
|
||||
# UUID (for QConnect renderer reports)
|
||||
uuid = { version = "1", features = ["v4"] }
|
||||
|
||||
# QConnect core types
|
||||
qconnect-core = { path = "../qconnect-core" }
|
||||
|
||||
# MPRIS media controls (Linux D-Bus, headless)
|
||||
souvlaki = "0.8"
|
||||
|
||||
# TUI wizard
|
||||
ratatui = "0.29"
|
||||
crossterm = "0.28"
|
||||
Reference in new issue
Block a user