sloptop
sloptop is a Rust TUI resource monitor for Linux.
oneliner:
git clone https://gitlab.randomdevelopment.biz/dakota/sloptop.git && cargo build --release && cp target/release/sloptop /usr/local/bin/
sudo wget "https://gitlab.randomdevelopment.biz/dakota/sloptop/-/raw/main/bin/sloptop" -O /bin/sloptop && sudo chmod +x /bin/sloptop
Features
- htop-style process table by default with selection and scrolling
- Sortable process columns (PID/CPU/MEM) with direction indicators
- Toggleable process details pane (right on wide terminals, bottom on narrow)
- CPU total bar + per-core mini-bars
- GPU widget (NVIDIA via
nvidia-smi, AMD via Linux sysfs when available) - Memory/swap bars and disk usage bars (top-N by usage)
- Disk pseudo-filesystem filtering toggle (
tmpfs/devtmpfs/overlay) - Compact network rates + totals + interface label
- Adjustable refresh interval, pause/resume, responsive layout
Build
Prerequisites:
- Rust toolchain (
rustc+cargo)
Build optimized binary:
cargo build --release
Binary path:
./target/release/sloptop
Run
Default refresh interval is 1000 ms:
cargo run -- --interval-ms 1000
Accepted interval range: 200..=5000 ms.
Keybindings
q/Esc: quitp/Space: pause/resume sampling (when summary is focused)+/=: increase refresh interval by 200 ms-: decrease refresh interval by 200 msTab: switch focus between summary and process table↑/↓,PgUp/PgDn,j/k: move process selectionc/m/p: sort by CPU / MEM / PID (psorts PID when process table focused)r: reverse sort directiond: toggle process details panef: toggle pseudo-filesystem disk filtering
Notes
- Target platform is Linux.
- Network throughput is computed as a delta between consecutive samples.
- Disk and network metrics are system-wide aggregates.
- GPU metrics are best-effort: NVIDIA requires
nvidia-smi; AMD uses available/sys/class/drmfields.
Next steps
- Add top-process table with sorting/filtering
- Add historical sparklines and alert thresholds
- Extend platform-specific support and testing for macOS/Windows
Description
Languages
Rust
100%