LMS TUI is an application with a text-based user interface to remotely control LMS.
- Basic player controls
- Access to the standard LMS menu
- Implemented as a stand-alone cross-platform application
- beta quality
- only tested on Linux
- not tested with any streaming service
- support for the LMS menu is spotty
- cover image quality is low. There is experimental support for chafa (which you can try by installing chafa and setting
imagemode = chafain the config file), but this causes major redrawing issues.
- A capable terminal (unicode, 256 colour etc.) (tested with kitty and rxvt-unicode). Kitty is recommended.
- One of the nerd fonts for the icons. The terminal needs to use this font (generally, or for at least the relevant unicode ranges (the
symbol_mapoption in kitty, see below))
- (optional, experimental) chafa for better image quality
LMS TUI is implemented in Python and requires
These packages may be available from your OS package management (
dev-python/asciimatics in e.g. Gentoo).
Or if you prefer, you can use
pip with a virtual environment (see here for an overview). Example:
python3 -m venv --system-site-packages ~/python-venv source ~/python-venv/bin/activate pip install requests pip install asciimatics
In this case, remember to execute
source ~/python-venv/bin/activate once per session before running lmstui.py (or run it like this:
Download source distribution
The latest version is available here: LMStui-0.0.1.tar.gz. Download and extract anywhere. It should run without installing it (or you could try installing it with the included
setup.py (read this first if you are unfamiliar with setuptools)).
Example (adjust for version):
wget "https://www.nexus0.net/pub/sw/lmstui/dist/LMStui-0.0.1.tar.gz" tar xf LMSmusly-0.0.1.tar.gz cd LMSmusly-0.0.1/src/ ./lmsmusly.py -h
./lmstui.py -hto get a list of options
- LMS TUI reads it's configuration from a file (default
~/.config/lmstui.conf), see the included sample in
config/lmstui.conf.distfor format and options
- As a minimum, the LMS server needs to be specified
F1in the application to see the key bindings
Kitty configuration hint
If you do not want to generally use a nerd font in the terminal, you can map specific unicode ranges:
symbol_map U+23FB-U+23FE,U+2B58,U+E200-U+E2A9,U+E0A0-U+E0A3,U+E0B0-U+E0BF,U+E0C0-U+E0C8,U+E0CC-U+E0CF,U+E0D0-U+E0D2,U+E0D4,U+E700-U+E7C5,U+F000-U+F2E0,U+2665,U+26A1,U+F400-U+F4A8,U+F500-U+FD46,U+F67C,U+E000-U+E00A,U+F300-U+F313,U+E5FA-U+E62B,U+2460-U+2462 Hack Nerd Font Mono