bottom/Cargo.toml
2023-01-20 18:55:31 -05:00

183 lines
4.6 KiB
TOML

[package]
name = "bottom"
version = "0.8.0"
authors = ["Clement Tsang <cjhtsang@uwaterloo.ca>"]
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/",
"scripts/",
"docs/",
"sample_configs/",
".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.release]
# debug = true # Might be nice to have a custom profile for flamegraphs.
# strip = false
debug = 0
strip = "symbols"
lto = true
opt-level = 3
codegen-units = 1
[features]
battery = ["starship-battery"]
gpu = ["nvidia"]
nvidia = ["nvml-wrapper"]
zfs = ["sysctl"]
# The features we use by default.
default = ["fern", "log", "battery", "gpu", "zfs"]
# The features we use on deploy. Logging is not included as that is primarily (for now) just for debugging locally.
deploy = ["battery", "gpu", "zfs"]
[dependencies]
anyhow = "1.0.57"
backtrace = "0.3.67"
cfg-if = "1.0.0"
clap = { version = "3.1.12", features = ["default", "cargo", "wrap_help"] }
const_format = "0.2.30"
concat-string = "1.0.1"
crossterm = "0.25.0"
ctrlc = { version = "3.2.4", features = ["termination"] }
dirs = "4.0.0"
fern = { version = "0.6.1", optional = true }
futures = "0.3.25"
futures-timer = "3.0.2"
fxhash = "0.2.1"
humantime = "2.1.0"
humantime-serde = "1.1.1"
indexmap = "1.9.2"
itertools = "0.10.5"
kstring = { version = "2.0.0", features = ["arc"] }
log = { version = "0.4.17", optional = true }
nvml-wrapper = { version = "0.8.0", optional = true }
once_cell = "1.5.2"
regex = "1.7.1"
serde = { version = "1.0.152", features = ["derive"] }
starship-battery = { version = "0.7.9", optional = true }
sysinfo = "0.26.7"
thiserror = "1.0.38"
time = { version = "0.3.9", features = ["formatting", "macros"] }
toml = "0.5.10"
tui = "0.19.0"
typed-builder = "0.10.0"
unicode-segmentation = "1.10.0"
unicode-width = "0.1.10"
[target.'cfg(unix)'.dependencies]
libc = "0.2.124"
[target.'cfg(target_os = "linux")'.dependencies]
heim = { version = "0.1.0-rc.1", features = ["cpu", "disk", "memory", "net", "sensors"] }
procfs = { version = "0.14.2", default-features = false }
smol = "1.2.5"
[target.'cfg(target_os = "macos")'.dependencies]
heim = { version = "0.1.0-rc.1", features = ["cpu", "disk", "memory", "net"] }
mach2 = "0.4.1"
[target.'cfg(target_os = "windows")'.dependencies]
heim = { version = "0.1.0-rc.1", features = ["cpu", "disk", "memory"] }
windows = { version = "0.44.0", features = ["Win32_System_Threading", "Win32_Foundation"] }
winapi = "0.3.9"
[target.'cfg(target_os = "freebsd")'.dependencies]
serde_json = { version = "1.0.82" }
sysctl = { version = "0.5.2", optional = true }
filedescriptor = "0.8.2"
[dev-dependencies]
assert_cmd = "2.0.4"
predicates = "2.1.1"
[build-dependencies]
clap = { version = "3.1.12", features = ["default", "cargo", "wrap_help"] }
clap_complete = "3.1.2"
clap_mangen = "0.1.6"
[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"
[dev-dependencies.cargo-husky]
version = "1"
default-features = false
features = ["user-hooks"]