How to Install Termusic on Ubuntu: A Terminal Music Player in Rust

Termusic is a feature-rich terminal music player written in Rust. It presents a complete text-based user interface for browsing your library, assembling playlists and driving playback, all inside the terminal and without a desktop audio app in sight. If your day is spent in a terminal, Termusic lets a spare pane double as a capable music player.

Rather than a minimal play-and-quit tool, Termusic indexes your local music into a searchable library, offers gapless playback and reorderable playlists, and reads the formats you actually have: MP3, FLAC, OGG, M4A and WAV among them. It uses a client/server design in which a background termusic-server process runs the audio pipeline while the termusic TUI talks to it, so your music keeps playing while you move around the interface.

Ubuntu does not ship Termusic in its official archives, and compiling it means installing Rust plus a set of audio libraries. The unofficial deb.griffo.io repository is the shortcut: a prebuilt Termusic package that installs cleanly with apt.

Install the Latest Termusic on Ubuntu: The Short Version

If you only came for the commands, this adds the repository and installs the latest Termusic .deb package on Ubuntu:

sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
sudo apt update
sudo apt install termusic

The rest of this guide explains what each command does, how to verify the install, how to keep Termusic up to date, and what to check when something goes wrong.

What Makes Termusic Special?

  • ๐ŸŽต Full-featured TUI - Library browsing, queueing and playback control from the keyboard
  • ๐Ÿฆ€ Written in Rust - Snappy and light on CPU and memory
  • ๐Ÿ—‚๏ธ Music library indexing - Builds a fast, searchable database of your collection
  • ๐Ÿ”€ Playlist management - Create, reorder and save playlists with gapless queueing
  • ๐ŸŽš๏ธ Multiple audio backends - Pure-Rust (Symphonia), GStreamer or MPV
  • ๐ŸŽง Broad format support - MP3, FLAC, OGG, M4A, WAV and beyond
  • ๐Ÿ–ฅ๏ธ Client/server architecture - A background server keeps playback alive as you navigate
  • ๐ŸŽ™๏ธ Podcast support - Follow and play podcast feeds next to your music

Why Use the deb.griffo.io Repository?

On Ubuntu, installing Termusic from deb.griffo.io gives you:

  • Easy installation and updates through the APT package manager
  • Automatic dependency management handled by the packaging
  • Always tracks upstream releases so you stay current
  • No compiling from source and no Rust toolchain to install
  • Works across supported Ubuntu releases with the codename detected automatically

Prerequisites

Before you begin, make sure you have:

  • An Ubuntu system (Jammy 22.04 LTS, Noble 24.04 LTS, or newer)
  • sudo privileges
  • curl installed (install with sudo apt install curl if needed)
  • A working audio stack (PipeWire or PulseAudio) and some music files

Step 1: Add the deb.griffo.io Repository

Add the repository key and source to your system:

# Create the keyrings directory
sudo install -d -m 0755 /etc/apt/keyrings

# Download and install the repository GPG key
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg

# Add the repository (auto-detects your distro codename)
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null

# Update the package list
sudo apt update

A quick breakdown of the commands:

  1. Keyrings directory: Creates /etc/apt/keyrings with the correct permissions.
  2. GPG key: Downloads and de-armours the signing key so APT can verify packages.
  3. Repository: Adds the source line, letting lsb_release -sc fill in your Ubuntu codename such as noble.
  4. Update: Loads the new metadata so the packages become visible.

Step 2: Update the Package List

If you did not run the last command above, do so now:

sudo apt update

Step 3: Install Termusic

Install the package:

sudo apt install termusic

APT fetches the latest packaged Termusic, its server component and any dependencies.

Step 4: Verify the Installation

Confirm the version:

termusic --version

Expected output:

termusic 0.11.0

Getting Started with Termusic

Termusic combines a TUI client with a background playback server. The following sections cover launching it, adding your music, learning the controls and picking an audio backend.

Launch and Point It at Your Music

Run Termusic with no arguments to open the interface:

termusic

For a fast first load, you can open it directly on a music directory:

termusic ~/Music

From within the interface, add your music folder to the library. Termusic scans it and builds an indexed database, so later browsing and searching are immediate.

Everyday Controls

Termusic is entirely keyboard-driven. The common default bindings are:

Tab / Shift+Tab   move between the library, playlist and lyrics panes
Enter             add the selected track to the playlist / play it
Space             pause or resume
n                 next track
N                 previous track
+ / -             volume up / down
q                 quit

Press ? at any time to display the full list of bindings for your version.

Configuration

Termusic stores its configuration in ~/.config/termusic/:

~/.config/termusic/server.toml    # playback settings and music directories
~/.config/termusic/tui.toml       # interface and key binding settings
~/.config/termusic/themes/        # custom colour themes

Use server.toml to define your default music directories and backend, and tui.toml to tweak the appearance and key bindings. The library database sits beside these files.

Choosing an Audio Backend

Termusic can play through several backends. The default pure-Rust backend (Symphonia) needs no extra system libraries, while GStreamer and MPV expand codec coverage. Set your choice in server.toml:

# ~/.config/termusic/server.toml
[player]
backend = "rusty"   # options: rusty, gstreamer, mpv

Restart Termusic after changing the backend so the server reloads with the new setting.

Keeping Termusic Updated

Because Termusic is installed from the repository, it updates with the rest of Ubuntu:

sudo apt update && sudo apt upgrade

Other Tools from deb.griffo.io

The deb.griffo.io repository packages many other terminal tools that go well with Termusic:

  • lowfi - A tiny, cozy terminal lofi music player
  • viu - A terminal image viewer for album art and previews
  • Yazi - A blazing fast terminal file manager written in Rust
  • Fastfetch - A fast, highly customizable system information tool

Troubleshooting

GPG or Key Issues

If APT reports the repository signature cannot be verified, re-import the key:

sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
sudo apt update

Package Not Found

If APT cannot locate the termusic package:

  1. Re-run sudo apt update after adding the repository.
  2. Confirm your Ubuntu release is supported (Jammy, Noble or newer).
  3. Inspect the source line: cat /etc/apt/sources.list.d/deb.griffo.io.list.

No Sound During Playback

If Termusic runs but produces no audio, the audio stack is the usual suspect:

  1. Verify sound works generally: speaker-test -c2 -t wav should be audible.
  2. Check that PipeWire or PulseAudio is active for your session with systemctl --user status pipewire (or pulseaudio).
  3. Switch backends in ~/.config/termusic/server.toml; if rusty cannot decode a particular file, gstreamer or mpv often will.

Uninstalling

To remove Termusic:

sudo apt remove termusic

To also remove the repository configuration:

sudo rm /etc/apt/sources.list.d/deb.griffo.io.list
sudo rm /etc/apt/keyrings/deb.griffo.io.gpg
sudo apt update

Your configuration and library database under ~/.config/termusic remain; remove that directory for a completely clean uninstall.

Conclusion

Termusic shows that a terminal music player can be a pleasure to use day to day. Between its indexed library, editable playlists, gapless playback and a client/server design that keeps the music going while you browse, it stands in comfortably for a graphical player when you would rather stay on the keyboard. On Ubuntu, the deb.griffo.io repository makes installation a single apt install, with updates arriving through your usual upgrades.

Aim it at your music folder, memorise a few key bindings, and Termusic becomes the backing track to your terminal work. Pair it with a terminal image viewer for cover art and a file manager for organising files, and your entire listening setup can live in the shell.

Frequently Asked Questions

How do I install the latest Termusic on Ubuntu?

Add the deb.griffo.io APT repository and its signing key, then run sudo apt install termusic. The repository tracks upstream Termusic releases, so you get the latest packaged version rather than a build frozen when your distribution was released.

Is there a .deb package for Termusic?

Yes. deb.griffo.io publishes Termusic as a signed .deb for Ubuntu. You could download that .deb and install it by hand, but adding the repository is the better option: APT then resolves dependencies and picks up new versions on its own.

How do I update Termusic to the latest version?

Run sudo apt update && sudo apt upgrade. Once Termusic is installed from APT there is no separate updater to remember, since new releases arrive with the rest of your system updates.

How do I install Termusic on Debian?

Exactly the same way; lsb_release -sc simply resolves to a different codename. There is a companion guide with the Debian specifics: How to install Termusic on Debian.

Which Ubuntu releases are supported?

Jammy 22.04 LTS, Noble 24.04 LTS and newer. Because the repository line is built from lsb_release -sc, the matching suite is selected for you.

Resources


Disclaimer: The deb.griffo.io repository is an unofficial community project and is not affiliated with the official Debian or Ubuntu projects, or with the upstream Termusic project.