90 lines
2.6 KiB
TOML
90 lines
2.6 KiB
TOML
[workspace]
|
|
resolver = "2"
|
|
members = [
|
|
"apps/desktop",
|
|
"crates/application",
|
|
"crates/backend",
|
|
"crates/backend-api",
|
|
"crates/domain",
|
|
"crates/platform-desktop",
|
|
"crates/ui",
|
|
]
|
|
|
|
[workspace.package]
|
|
version = "0.1.2"
|
|
edition = "2024"
|
|
rust-version = "1.97"
|
|
license = "WTFPL"
|
|
authors = ["Furumi contributors"]
|
|
description = "A native desktop player for personal music libraries and the Furumi federated network"
|
|
readme = "README.md"
|
|
|
|
[workspace.dependencies]
|
|
anyhow = "1.0.102"
|
|
blake3 = "1"
|
|
futures-util = "0.3.32"
|
|
slint = { version = "=1.17.1", default-features = false, features = [
|
|
"backend-winit",
|
|
"renderer-femtovg",
|
|
"renderer-software",
|
|
"compat-1-2",
|
|
] }
|
|
slint-build = "=1.17.1"
|
|
tokio = { version = "=1.52.3", features = ["rt-multi-thread", "sync", "time", "macros", "io-util", "fs"] }
|
|
tokio-util = { version = "=0.7.18", features = ["rt"] }
|
|
directories = "6.0.0"
|
|
image = { version = "0.25.10", default-features = false, features = ["webp"] }
|
|
music-dht = "0.4.0"
|
|
serde_json = "1.0.150"
|
|
serde = { version = "1.0", features = ["derive"] }
|
|
rusqlite = { version = "0.32.1", features = ["bundled"] }
|
|
rfd = { version = "0.15.4", default-features = false, features = ["xdg-portal", "tokio"] }
|
|
rodio = { version = "0.22.2", default-features = false, features = [
|
|
"playback",
|
|
"mp3",
|
|
"flac",
|
|
"vorbis",
|
|
"wav",
|
|
"symphonia-aac",
|
|
"symphonia-isomp4",
|
|
"symphonia-alac",
|
|
] }
|
|
reqwest = { version = "0.12.28", default-features = false, features = ["rustls-tls", "stream"] }
|
|
rustfft = "6.4.1"
|
|
sha2 = "0.10.9"
|
|
tract-onnx = "0.23.4"
|
|
souvlaki = { version = "0.8.3", default-features = false, features = ["use_zbus"] }
|
|
core-foundation = "0.10.1"
|
|
objc2 = "0.6.4"
|
|
objc2-app-kit = { version = "0.3.2", default-features = false, features = [
|
|
"NSApplication",
|
|
"NSImage",
|
|
"NSResponder",
|
|
] }
|
|
objc2-foundation = { version = "0.3.2", default-features = false, features = ["NSData"] }
|
|
windows-sys = { version = "0.61.2", features = ["Win32_System_LibraryLoader", "Win32_UI_WindowsAndMessaging"] }
|
|
|
|
furumi-application = { path = "crates/application" }
|
|
furumi-backend = { path = "crates/backend" }
|
|
furumi-backend-api = { path = "crates/backend-api" }
|
|
furumi-domain = { path = "crates/domain" }
|
|
furumi-library = "0.1.0"
|
|
furumi-platform-desktop = { path = "crates/platform-desktop" }
|
|
furumi-ui = { path = "crates/ui" }
|
|
|
|
[workspace.lints.rust]
|
|
unsafe_code = "deny"
|
|
|
|
[workspace.lints.clippy]
|
|
all = "warn"
|
|
pedantic = "warn"
|
|
|
|
[profile.release]
|
|
lto = "thin"
|
|
codegen-units = 1
|
|
strip = "symbols"
|
|
|
|
[patch.crates-io]
|
|
# souvlaki 0.8.3 still uses an uninhabited Objective-C FFI marker.
|
|
block = { path = "vendor/block" }
|