[package] name = "bottom" version = "0.9.2" authors = ["Clement Tsang "] edition = "2021" repository = "https://github.com/ClementTsang/bottom" keywords = ["cross-platform", "monitoring", "cli", "top", "tui"] license = "MIT" categories = ["command-line-utilities", "visualization"] description = "A customizable cross-platform graphical process/system monitor for the terminal. Supports Linux, macOS, and Windows." documentation = "https://clementtsang.github.io/bottom/stable" readme = "README.md" default-run = "btm" build = "build.rs" exclude = [ ".cargo-husky/", ".github/", "assets/", "docs/", "sample_configs/", "scripts/", ".all-contributorsrc", ".cirrus.yml", ".markdownlint.json", "CHANGELOG.md", "clippy.toml", "codecov.yml", "CONTRIBUTING.md", "Cross.toml", "rustfmt.toml", ] [[bin]] name = "btm" path = "src/bin/main.rs" doc = false [lib] test = true doctest = true doc = true [profile.dev.package."*"] opt-level = 3 # Compile dependencies with optimizations on even in debug mode. [profile.no-opt] inherits = "dev" opt-level = 0 [profile.release] debug = 0 strip = "symbols" lto = true opt-level = 3 codegen-units = 1 [profile.profiling] inherits = "release" debug = true strip = false [features] battery = ["starship-battery"] gpu = ["nvidia"] nvidia = ["nvml-wrapper"] zfs = [] # The features we use by default. default = ["deploy"] # The features we use on deploy. Logging is not included as that is primarily (for now) just for debugging locally. deploy = ["battery", "gpu", "zfs"] # Including logging for debugging purposes. logging = ["fern", "log"] [dependencies] anyhow = "1.0.71" backtrace = "0.3.67" cfg-if = "1.0.0" clap = { version = "4.3.1", features = ["default", "cargo", "wrap_help"] } concat-string = "1.0.1" crossterm = "0.26.1" ctrlc = { version = "3.4.0", features = ["termination"] } # dhat = "0.3.2" dirs = "5.0.1" fern = { version = "0.6.2", optional = true } hashbrown = "0.13.2" humantime = "2.1.0" humantime-serde = "1.1.1" indexmap = "1.9.3" itertools = "0.10.5" kstring = { version = "2.0.0", features = ["arc"] } log = { version = "0.4.18", optional = true } nvml-wrapper = { version = "0.9.0", optional = true } once_cell = "1.17.2" regex = "1.8.3" serde = { version = "1.0.163", features = ["derive"] } starship-battery = { version = "0.8.0", optional = true } sysinfo = "=0.29.0" thiserror = "1.0.40" time = { version = "0.3.21", features = ["formatting", "macros"] } toml_edit = { version = "0.19.10", features = ["serde"] } tui = { version = "0.21.0", package = "ratatui" } unicode-segmentation = "1.10.1" unicode-width = "0.1.10" [target.'cfg(unix)'.dependencies] libc = "0.2.144" [target.'cfg(target_os = "linux")'.dependencies] rustix = { version = "0.37.19", features = ["fs", "param", "process"] } [target.'cfg(target_os = "macos")'.dependencies] core-foundation = "0.9.3" mach2 = "0.4.1" [target.'cfg(target_os = "windows")'.dependencies] windows = { version = "0.48.0", features = [ "Win32_Foundation", "Win32_Security", "Win32_Storage_FileSystem", "Win32_System_IO", "Win32_System_Ioctl", "Win32_System_ProcessStatus", "Win32_System_Threading", ] } [target.'cfg(target_os = "freebsd")'.dependencies] serde_json = { version = "1.0.96" } sysctl = { version = "0.5.4" } filedescriptor = "0.8.2" [dev-dependencies] assert_cmd = "2.0.11" cargo-husky = { version = "1.5.0", default-features = false, features = [ "user-hooks", ] } predicates = "3.0.3" [build-dependencies] clap = { version = "4.3.1", features = ["default", "cargo", "wrap_help"] } clap_complete = "4.3.1" clap_mangen = "0.2.12" [package.metadata.deb] section = "utility" assets = [ [ "target/release/btm", "usr/bin/", "755", ], [ "LICENSE", "usr/share/doc/btm/", "644", ], [ "manpage/btm.1.gz", "usr/share/man/man1/btm.1.gz", "644", ], [ "completion/btm.bash", "usr/share/bash-completion/completions/btm", "644", ], [ "completion/btm.fish", "usr/share/fish/vendor_completions.d/btm.fish", "644", ], [ "completion/_btm", "usr/share/zsh/vendor-completions/", "644", ], ] extended-description = """ By default, bottom will look for a config file in ~/.config/bottom/bottom.toml. A config file can be specified \ using `-C`. If a config file does not exist at the specified or default location, a default one will be created \ for the user there. """ [package.metadata.deb.variants.arm64] depends = "libc6:arm64 (>= 2.28)" [package.metadata.deb.variants.armhf] depends = "libc6:armhf (>= 2.28)" [package.metadata.wix] output = "bottom_x86_64_installer.msi"