[package]
name = "cultivation"
version = "1.2.0"
description = "A custom launcher for anime game."
authors = ["KingRainbow44", "SpikeHD"]
license = ""
repository = "https://github.com/Grasscutters/Cultivation.git"
default-run = "cultivation"
edition = "2021"
rust-version = "1.57"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[build-dependencies]
tauri-build = { version = "1.0.0-rc.8", features = [] }
cc = "1.0"

[target.'cfg(windows)'.dependencies]
is_elevated = "0.1.2"
registry = "1.2.1"

[target.'cfg(unix)'.dependencies]
sudo = "0.6.0"

[target.'cfg(target_os = "linux")'.dependencies]
anyhow = "1.0.58"
os_type = "2.6"
term-detect = "0.1.7"
which = "4.4"

[dependencies]
serde = { version = "1.0", features = ["derive"] }
tauri = { version = "1.0.9", features = ["api-all"] }

# Arg parsing
args = "2.0"
getopts = "0.2"

# Access system process info.
sysinfo = "0.28.4"

# ZIP-archive library.
zip-extract = "0.1.1"
unrar = "0.4.4"
zip = "0.6.2"
sevenz-rust = "0.2.9"

# For creating a "global" downloads list.
once_cell = "1.13.0"

# Program opener.
open = "3.0.2"

# Services
windows-service = "0.6.0"

# Serialization.
serde_json = "1"

# Dependencies for the HTTP(S) proxy.
http = "0.2"
hudsucker = "0.19.2"
tracing = "0.1.21"
tokio-rustls = "0.23.0"
tokio-tungstenite = "0.17.0"
tokio = { version = "1.20.4", features = ["signal"] }
rustls-pemfile = "1.0.0"
reqwest = { version = "0.11.3", features = ["stream"] }
futures-util = "0.3.14"
rcgen = { version = "0.9", features = ["x509-parser"] }

# metadata stuff
regex = "1"

# other
file_diff = "1.0.0"
rust-ini = "0.18.0"
ctrlc = "3.2.3"

[target.'cfg(target_os = "linux")'.dependencies.anime-launcher-sdk]
git = "https://github.com/an-anime-team/anime-launcher-sdk.git"
tag = "1.11.1"
default-features = false
features = ["all", "genshin"]

[features]
# by default Tauri runs in production mode
# when `tauri dev` runs it is executed with `cargo run --no-default-features` if `devPath` is an URL
default = [ "custom-protocol" ]
# this feature is used used for production builds where `devPath` points to the filesystem
# DO NOT remove this
custom-protocol = [ "tauri/custom-protocol" ]
