[package] name = "switcheroo-nx" version = "0.7.1" edition = "2021" authors = ["Ethan Budd "] description = "A cross platform CLI and GUI for the Nintendo Switch RCM exploit" keywords = ["CLI", "utilities", "RCM"] categories = ["command-line-utilities"] readme = "README.md" license = "GPL-2.0-or-later" repository = "https://github.com/budde25/switcheroo" homepage = "https://github.com/budde25/switcheroo" [[bin]] name = "switcheroo" path = "src/main.rs" [workspace] members = ["crates/tegra-rcm"] [workspace.dependencies] clap = { version = "4.5.9", features = ["derive"] } log = "0.4.22" # Config for 'cargo dist' [workspace.metadata.dist] # The preferred cargo-dist version to use in CI (Cargo.toml SemVer syntax) cargo-dist-version = "0.19.1" # CI backends to support ci = "github" # Target platforms to build apps for (Rust target-triple syntax) targets = [ "aarch64-apple-darwin", "x86_64-apple-darwin", "x86_64-unknown-linux-gnu", "x86_64-unknown-linux-musl", "x86_64-pc-windows-msvc", ] # The installers to generate for each app installers = ["shell", "powershell", "homebrew", "msi"] # Publish jobs to run in CI pr-run-mode = "plan" # A GitHub repo to push Homebrew formulas to tap = "budde25/homebrew-tap" # Publish jobs to run in CI publish-jobs = ["homebrew"] # Path that installers should place binaries in install-path = "CARGO_HOME" # Whether to install an updater program install-updater = false [dependencies] anyhow = "1.0" camino = "1.1" clap = { workspace = true } clap-verbosity-flag = "2.2" console = "0.15" dirs = "5.0" eframe = { version = "0.28", optional = true } egui-notify = { version = "0.15", optional = true } egui_extras = { version = "0.28", features = ["svg"], optional = true } image = { version = "0.25", optional = true } indicatif = "0.17" log = { workspace = true } once_cell = "1.19" rfd = { version = "0.14", optional = true } tegra-rcm = { version = "0.7", path = "crates/tegra-rcm" } thiserror = "1.0" tracing-subscriber = { version = "0.3", features = ["env-filter"] } trash = { version = "5.0", optional = true } [build-dependencies] clap = { workspace = true } clap-verbosity-flag = "2.2" clap_complete = "4.5" clap_mangen = "0.2" camino = "1.1" [features] gui = [ "dep:egui_extras", "dep:eframe", "dep:rfd", "dep:image", "dep:egui-notify", "dep:trash", ] # Enables the alternative notify hotplug implementation for udev restricted environments (such a flatpak) notify = ["tegra-rcm/notify"] # The profile that 'cargo dist' will build with [profile.dist] inherits = "release" lto = "thin" [package.metadata.wix] upgrade-guid = "944569E4-9258-4FB8-A89F-99F3988DA323" path-guid = "4375E8D1-D41E-43CF-B1CD-91171E8B32F5" license = false eula = false