# ytop ![Minimum rustc version](https://img.shields.io/badge/rustc-1.39+-green.svg) ![Matrix](https://img.shields.io/matrix/ytop:matrix.org)
*Another* TUI based resource monitor, this time in Rust! Currently a WIP.
## Missing features - Only works on Linux - Process filtering isn't implemented - Mouse usage isn't implemented - `rate` and `interfaces` cli args aren't implemented ## Installation Currently only working on Linux with support planned for all major platforms. ### Prebuilt binaries: Run the following to run [this](https://github.com/japaric/trust/blob/gh-pages/install.sh) script to download the correct binary for your system from the releases tab into `~/.cargo/bin`, courtesy of [japaric/trust](https://github.com/japaric/trust): ```bash bash <(curl -LSfs https://japaric.github.io/trust/install.sh) \ -f --git cjbassi/ytop ``` Specify `--to` to change the download location. ### From source: Latest release: ```bash cargo install -f --git https://github.com/cjbassi/ytop --tag 0.1.0 ``` Latest commit: ```bash cargo install -f --git https://github.com/cjbassi/ytop ``` ### Arch Linux Install `ytop`, `ytop-bin`, or `ytop-git` from the AUR. ## Usage ### Keybinds - Quit: `q` or `` - Pause: `` - Process navigation: - `k` and ``: up - `j` and ``: down - ``: half page up - ``: half page down - ``: full page up - ``: full page down - `gg` and ``: jump to top - `G` and ``: jump to bottom - Process actions: - ``: toggle process grouping - `dd`: kill selected process or process group - Process sorting: - p: PID/Count - n: Command - c: CPU - m: Mem - Process filtering: - `/`: start editing filter - (while editing): - ``: accept filter - `` and ``: clear filter - CPU and Mem graph scaling: - `h`: scale in - `l`: scale out - `?`: toggles keybind help menu ### Mouse - click to select process - mouse wheel to scroll through processes ### Colorschemes ytop ships with a few colorschemes which can be set with the `-c` flag followed by the name of one. You can find all the colorschemes in the [colorschemes folder](./colorschemes). To make a custom colorscheme, copy one of the default ones to `~/.config/ytop/.json` and load it with `ytop -c `. Colorscheme PRs are welcome! ### CLI Options ``` USAGE: ytop [FLAGS] [OPTIONS] FLAGS: -a, --average-cpu Show average CPU in the CPU widget. -b, --battery Show Battery widget (overridden by 'minimal' flag). -f, --fahrenheit Show temperatures in fahrenheit. -h, --help Prints help information -m, --minimal Only show the CPU, Mem, and Process widgets. -p, --per-cpu Show each CPU in the CPU widget. -s, --statusbar Show a statusbar with the time. -V, --version Prints version information OPTIONS: -c, --colorscheme Set a colorscheme. [default: default] -i, --interfaces Comma separated list of network interfaces to show. Prepend an interface with '!' to hide it. 'all' shows all interfaces. [default: !tun0] -r, --rate Number of times per second to update the CPU and Mem widgets. [default: 1] ```