An experimental terminal client for CoolerControl.
:warning: Requires the CoolerControl service daemon to be running either locally or remotely, see Configuration.
[[TOC]]
Building
Clone the git repo and build with cargo. Requires a working Rust installation.
Installing/Upgrading
There are no packages for distributions yet but you can download and install the latest binary artifact built from master or build from source yourself.
Latest release
From source
Install with cargo. Requires a working Rust installation.
From crates.io
cctv is also published to crates.io. Note that the version there may be slightly outdated.
Make sure $HOME/.cargo/bin is in your path:
# Bash users
# zsh users
Usage
CLI
While primarily a TUI application, cctv also has a command line interface for some common operations.
Usage: cctv [OPTIONS]
TUI client for CoolerControl
Options:
--list-modes, -l Lists all available modes.
--activate-mode <mode-name>, -a <mode-name> Activates the specified mode.
--delay-by <seconds> When used in conjunction with --activate-mode, sets
the delay in seconds before the mode switch.
--help, -h Shows this help message.
If no options are passed, the application will launch into the TUI.
TUI
Keybindings:
Down, e, j: Select next item
Up, i, k: Select previous item
Right, o, l: Go to the next page
Left, n, h: Go to the previous page
R: Refresh app data
s: Toggle legend visibility on charts.
Ctrl+q: Quit
Devices Page
Additional keybindings:
a: Toggle between the default and the alternative chart.
Modes Page
Additional keybindings:
Enter: Activate the currently highlighted mode.
Configuration
Configuration is optional. cctv will attempt to construct configurations from
below locations, in order of preference:
- Environment variables listed below.
coolercontroldconfiguration file- CoolerControl defaults
This means that if you're overriding CoolerControl's defaults, cctv will
automatically pick some of them up. But you can still override them specifically for
cctv with the environment variables e.g. to have cctv connect to a remote
CoolerControl instance instead of your local daemon.
Note that there's currently no SSL or IPv6 support.
Environment variables
CCTV_DAEMON_PORT- The port CoolerControl is listening on. CoolerControl default: 11987CCTV_DAEMON_ADDRESS- The address CoolerControl is listening on. CoolerControl default: 127.0.0.1CCTV_DAEMON_CONFIG_FILE_PATH- The path to CoolerControl's config file. CoolerControl default: /etc/coolercontrol/config.tomlCCTV_TIME_RANGE- Time range in seconds to look back to for device charts. cctv default: 60CCTV_USERNAME- CoolerControl username if you've set one. Otherwise the internal default is used.CCTV_PASSWORD- CoolerControl password if you've set one. Otherwise the internal default is used.CCTV_NO_SPLASH- Skips the splash screen when set to true. cctv default: false