bottom/Cargo.toml
Wesley Moore 577fda96fc
Implement support for FreeBSD (#766)
* WIP FreeBSD support

* Implement get_cpu_data_list for FreeBSD

* Implement disks for FreeBSD

It doesn't work though as sysinfo doesn't make the device name available.

* Use libxo to read process cpu info on FreeBSD

* Populate get_io_usage with libxo too

Actual I/O stats still aren't populated though as there's not an
easy source for them.

* Share more processes code between macos and freebsd

* Extract function for deserializing libxo output on FreeBSD

* Implement filtering of disks in FreeBSD

* Clean up memory data collection

* Update module docs
2022-07-23 20:44:29 -04:00

147 lines
4 KiB
TOML

[package]
name = "bottom"
version = "0.6.8"
authors = ["Clement Tsang <cjhtsang@uwaterloo.ca>"]
edition = "2018"
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 = [
".all-contributorsrc",
".github/",
".markdownlint.json",
"assets/",
"codecov.yml",
"deployment/",
"docs/",
"sample_configs/"
]
[[bin]]
name = "btm"
path = "src/bin/main.rs"
doc = false
[lib]
test = true
doctest = true
doc = true
[profile.release]
debug = 0
strip = "symbols"
lto = true
opt-level = 3
codegen-units = 1
[features]
default = ["fern", "log", "battery", "gpu"]
battery = ["starship-battery"]
deploy = ["battery", "gpu"]
gpu = ["nvidia"]
nvidia = ["nvml-wrapper"]
[dependencies]
anyhow = "1.0.57"
backtrace = "0.3.65"
cfg-if = "1.0.0"
crossterm = "0.18.2"
ctrlc = { version = "3.1.9", features = ["termination"] }
clap = { version = "3.1.12", features = ["default", "cargo", "wrap_help"] }
concat-string = "1.0.1"
# const_format = "0.2.23"
dirs = "4.0.0"
futures = "0.3.21"
futures-timer = "3.0.2"
fxhash = "0.2.1"
indexmap = "1.8.1"
itertools = "0.10.3"
once_cell = "1.5.2"
regex = "1.5.5"
serde = { version = "1.0.136", features = ["derive"] }
sysinfo = "0.23.10"
thiserror = "1.0.30"
time = { version = "0.3.9", features = ["formatting", "macros"] }
toml = "0.5.9"
tui = { version = "0.14.0", features = ["crossterm"], default-features = false }
typed-builder = "0.10.0"
unicode-segmentation = "1.9.0"
unicode-width = "0.1.9"
fern = { version = "0.6.1", optional = true }
log = { version = "0.4.16", optional = true }
starship-battery = { version = "0.7.9", optional = true }
nvml-wrapper = { version = "0.7.0", optional = true }
[target.'cfg(unix)'.dependencies]
libc = "0.2.124"
[target.'cfg(target_os = "linux")'.dependencies]
heim = { version = "0.1.0-rc.1", features = ["cpu", "disk", "net", "sensors"] }
procfs = { version = "0.12.0", 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"] }
[target.'cfg(target_os = "windows")'.dependencies]
heim = { version = "0.1.0-rc.1", features = ["cpu", "disk", "memory"] }
winapi = "0.3.9"
[target.'cfg(target_os = "freebsd")'.dependencies]
serde_json = { version = "1.0.82" }
[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 = """\
A customizable cross-platform graphical process/system monitor for the terminal. Supports Linux, macOS, and Windows.
By default, bottom will look for a config file in ~/.config/bottom/bottom.toml.
If one is not specified it will fall back to defaults. If a config file does not
exist at the specified or default location, a blank one will be created for the user.
"""
[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"]