[package] name = "drop-app" version = "0.4.0" description = "The client application for the open-source, self-hosted game distribution platform Drop" authors = ["Drop OSS"] edition = "2024" [workspace] resolver = "3" members = [ "client", "cloud_saves", "database", "download_manager", "games", "process", "remote", "utils", ] [lib] crate-type = ["cdylib", "rlib", "staticlib"] # The `_lib` suffix may seem redundant but it is necessary # to make the lib name unique and wouldn't conflict with the bin name. # This seems to be only an issue on Windows, see https://github.com/rust-lang/cargo/issues/8519 name = "drop_app_lib" rustflags = ["-C", "target-feature=+aes,+sse2"] # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] anyhow = "1.0.101" async-trait = "0.1.89" atomic-instant-full = "0.1.0" bitcode = "0.6.6" bytes = "1.10.1" cacache = "13.1.0" chrono = "0.4.38" client = { path = "./client", version = "0.1.0" } # client database = { path = "./database" } # database deranged = "=0.4.0" dirs = "6.0.0" download_manager = { path = "./download_manager", version = "0.1.0" } # download manager filetime = "0.2.25" futures-core = "0.3.31" futures-lite = "2.6.0" games = { path = "./games", version = "0.1.0" } # games gethostname = "1.0.1" hex = "0.4.3" http = "1.1.0" http-serde = "2.1.1" humansize = "2.1.3" known-folders = "1.2.0" log = "0.4.22" md5 = "0.7.0" native_model = { path = "../../libraries/native_model", features = [ "rmp_serde_1_3", ] } page_size = "0.6.0" parking_lot = "0.12.3" process = { path = "./process" } # process rand = "0.9.1" rayon = "1.10.0" regex = "1.11.1" remote = { path = "./remote", version = "0.1.0" } # remote reqwest = { version = "0.12.28", default-features = false, features = [ "blocking", "http2", "json", "native-tls-alpn", "rustls-tls", "rustls-tls-native-roots", "stream", ] } reqwest-middleware = "0.4.0" reqwest-middleware-cache = "0.1.1" reqwest-websocket = "0.5.0" schemars = "0.8.22" serde_json = "1" serde_with = "3.12.0" sha1 = "0.10.6" shared_child = "1.0.1" slice-deque = "0.3.0" sysinfo = "0.36.1" tar = "0.4.46" tauri-plugin-autostart = "*" tauri-plugin-deep-link = "*" tauri-plugin-dialog = "*" tauri-plugin-opener = "*" tauri-plugin-os = "*" tauri-plugin-shell = "*" tempfile = "3.19.1" throttle_my_fn = "0.2.6" tokio-util = { version = "0.7.16", features = ["io"] } umu-wrapper-lib = "0.1.0" url = "2.5.2" urlencoding = "2.1.3" utils = { path = "./utils" } # utils walkdir = "2.5.0" webbrowser = "1.0.2" whoami = "1.6.0" wry = { version = "*", features = [] } zstd = "0.13.3" [dependencies.log4rs] version = "1.3.0" features = ["console_appender", "file_appender"] [dependencies.rustbreak] version = "2" features = ["other_errors"] # You can also use "yaml_enc" or "bin_enc" [dependencies.rustix] version = "0.38.37" features = ["fs"] [dependencies.serde] version = "1" features = ["derive", "rc"] [dependencies.tauri] version = "2.9.5" features = ["protocol-asset", "tray-icon", "unstable"] [dependencies.tokio] version = "1.40.0" features = ["rt", "signal", "tokio-macros"] [dependencies.uuid] version = "1.10.0" features = ["fast-rng", "macro-diagnostics", "v4"] [build-dependencies] tauri-build = { version = "*", features = [] } [target."cfg(any(target_os = \"macos\", windows, target_os = \"linux\"))".dependencies] tauri-plugin-single-instance = { version = "2.0.0", features = ["deep-link"] } [target."cfg(target_os = \"linux\")".dependencies] libloading = "0.7" [profile.release] lto = true panic = "abort" codegen-units = 1 [profile.dev.package."*"] # Set the default for dependencies in Development mode. opt-level = 3 [profile.dev] # Turn on a small amount of optimisation in Development mode. opt-level = 1