[workspace] members = ["gpui-client"] resolver = "2" [package] name = "vps-switch" version = "0.1.0" edition = "2021" description = "Lightweight VPS manager and MCP server" authors = ["weidu12123"] [dependencies] tokio = { version = "1.40", features = ["full"] } axum = { version = "0.7", features = ["ws", "macros"] } tower-http = { version = "0.6", features = ["fs", "cors"] } rusqlite = { version = "0.32", features = ["bundled"] } russh = { version = "0.63.0", default-features = false, features = ["flate2", "ring", "rsa", "legacy-ed25519-pkcs8-parser"] } russh-sftp = "3.0.1" alacritty_terminal = "0.26.0" portable-pty = "0.9.0" tokio-util = { version = "0.7", features = ["io"] } bytes = "1" rust-embed = { version = "8.13.0", features = ["debug-embed", "mime-guess"] } mime_guess = "2.0" serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" sha2 = "0.10" hex = "0.4" aes-gcm = "0.10" scrypt = { version = "0.11", default-features = false, features = ["std"] } rand = "0.8" base64 = "0.22" uuid = { version = "1.10", features = ["v4"] } chrono = { version = "0.4", features = ["serde"] } anyhow = "1.0" tracing = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter"] } futures = "0.3" async-trait = "0.1" [target.'cfg(windows)'.dependencies] wry = "0.57.0" tao = "0.37.1" tray-icon = "0.26.1" # 托盘驻留时把 WebView2 降到低内存档(ICoreWebView2_19::SetMemoryUsageTargetLevel)。 # 只用 wry 暴露的 controller() 拿原生接口,不碰 wry 内部实现。 webview2-com = "0.39.1" windows-core = "0.62" [target.'cfg(windows)'.build-dependencies] winres = "0.1" [profile.dev.package."*"] opt-level = 2 [profile.dev.package] gpui-pre = { opt-level = 3 } gpui-pre-platform = { opt-level = 3 } gpui-pre-windows = { opt-level = 3 } gpui-base = { opt-level = 3 } gpui-component = { opt-level = 3 } gpui-kit = { opt-level = 3 } gpui-kit-assets = { opt-level = 3 } cosmic-text = { opt-level = 3 } rustybuzz = { opt-level = 3 } swash = { opt-level = 3 } taffy = { opt-level = 3 } ttf-parser = { opt-level = 3 } resvg = { opt-level = 3 } usvg = { opt-level = 3 } alacritty_terminal = { opt-level = 3 } [profile.release] strip = "debuginfo"