mirror of
https://github.com/ClementTsang/bottom.git
synced 2024-09-19 07:29:01 +03:00
e4a6e751ec
* Add gpu util, power and procs. Consolidated gpu calls into `data_harvester`. Changed config flag from `enable_gpu_memory` to `enable_gpu`. Added GPU utilization to the cpu widget. Added GPU process memory usage and utilization percentage to the proc widget. Added key binds for gpu process toggling. Added GPU power usage to the battery widget. Added bounds check to battery widget header. Show battery widget header when `gpu_enable`. Added feature flag `legacy-functions` to `nvml-wrapper`. updated config file(s). updated help text. updated docs. * Code Review: Remove GPU util from cpu widget Remove GPU power from battery widget Use reference for gpu widgets_to_harvest Extract match arm to function for feature gate * Code Review: add gmem% toggle * Do not poll gpu temp when filtered * Code Review Two Changes: adjust doc wordings remove extra references remove extra widget harvest checks init proc gpu values use convert_temp_unit for gpu temp
214 lines
5.6 KiB
TOML
214 lines
5.6 KiB
TOML
[package]
|
|
name = "bottom"
|
|
version = "0.9.6"
|
|
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/",
|
|
"desktop/",
|
|
"docs/",
|
|
"sample_configs/",
|
|
"scripts/",
|
|
".all-contributorsrc",
|
|
".cirrus.yml",
|
|
".gitignore",
|
|
".markdownlint.json",
|
|
"CHANGELOG.md",
|
|
"clippy.toml",
|
|
"codecov.yml",
|
|
"CONTRIBUTING.md",
|
|
"Cross.toml",
|
|
"rustfmt.toml",
|
|
]
|
|
rust-version = "1.70.0"
|
|
|
|
[[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 = []
|
|
|
|
# Including logging for debugging purposes.
|
|
logging = ["fern", "log"]
|
|
|
|
# The features we use on deploy. Logging is not included as that is primarily (for now) just for debugging locally.
|
|
deploy = ["battery", "gpu", "zfs"]
|
|
|
|
default = ["deploy"]
|
|
|
|
[dependencies]
|
|
anyhow = "1.0.75"
|
|
backtrace = "0.3.69"
|
|
cfg-if = "1.0.0"
|
|
clap = { version = "4.4.2", features = ["default", "cargo", "wrap_help"] }
|
|
concat-string = "1.0.1"
|
|
crossterm = "0.27.0"
|
|
ctrlc = { version = "3.4.0", features = ["termination"] }
|
|
# dhat = "0.3.2"
|
|
dirs = "5.0.1"
|
|
fern = { version = "0.6.2", optional = true }
|
|
hashbrown = "0.14.0"
|
|
humantime = "2.1.0"
|
|
indexmap = "2.0.0"
|
|
itertools = "0.11.0"
|
|
kstring = { version = "2.0.0", features = ["arc"] }
|
|
log = { version = "0.4.20", optional = true }
|
|
nvml-wrapper = { version = "0.9.0", optional = true, features = ["legacy-functions"] }
|
|
once_cell = "1.18.0"
|
|
regex = "1.9.4"
|
|
serde = { version = "=1.0.188 ", features = ["derive"] }
|
|
starship-battery = { version = "0.8.2", optional = true }
|
|
sysinfo = "=0.29.10"
|
|
thiserror = "1.0.47"
|
|
time = { version = "0.3.26", features = ["formatting", "macros"] }
|
|
toml_edit = { version = "0.21.0", features = ["serde"] }
|
|
tui = { version = "0.22.0", package = "ratatui" }
|
|
unicode-segmentation = "1.10.1"
|
|
unicode-width = "0.1.10"
|
|
|
|
[target.'cfg(unix)'.dependencies]
|
|
libc = "0.2.147"
|
|
|
|
[target.'cfg(target_os = "linux")'.dependencies]
|
|
rustix = { version = "0.38.9", 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.51.1", 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.105" }
|
|
sysctl = { version = "0.5.4" }
|
|
filedescriptor = "0.8.2"
|
|
|
|
[dev-dependencies]
|
|
assert_cmd = "2.0.12"
|
|
cargo-husky = { version = "1.5.0", default-features = false, features = [
|
|
"user-hooks",
|
|
] }
|
|
predicates = "3.0.3"
|
|
|
|
[build-dependencies]
|
|
clap = { version = "4.4.2", features = ["default", "cargo", "wrap_help"] }
|
|
clap_complete = "4.4.1"
|
|
clap_complete_fig = "4.4.0"
|
|
clap_complete_nushell = "4.4.0"
|
|
clap_mangen = "0.2.13"
|
|
|
|
[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",
|
|
],
|
|
[
|
|
"desktop/bottom.desktop",
|
|
"usr/share/applications/bottom.desktop",
|
|
"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"
|
|
|
|
[package.metadata.generate-rpm]
|
|
assets = [
|
|
{ source = "target/release/btm", dest = "/usr/bin/", mode = "755" },
|
|
{ source = "LICENSE", dest = "/usr/share/doc/btm/", mode = "644" },
|
|
{ source = "manpage/btm.1.gz", dest = "/usr/share/man/man1/btm.1.gz", mode = "644", doc = true },
|
|
{ source = "completion/btm.bash", dest = "/usr/share/bash-completion/completions/btm", mode = "644" },
|
|
{ source = "completion/btm.fish", dest = "/usr/share/fish/vendor_completions.d/btm.fish", mode = "644" },
|
|
{ source = "completion/_btm", dest = "/usr/share/zsh/vendor-completions/", mode = "644" },
|
|
{ source = "desktop/bottom.desktop", dest = "/usr/share/applications/bottom.desktop", mode = "644" },
|
|
]
|