cmus: The Ultimate Music Player For Linux Terminal Lovers

Listening to music in Linux terminal? Why not? Nothing is impossible when it comes to Linux terminal.
Warp Terminal

There is no shortage of music players on Linux. Almost all of them offer a GUI (Graphical User Interface). Some of them look really nice and some not so much.

Considering that all of them are GUI-based applications. What about, us, terminal lovers? Do we not deserve a treat?

Well, today I am going to introduce cmus. If you are a music enthusiast with a collection of music and love the terminal too, you will have to look no further!

cmus: A Terminal-Based Music Player

cmus is a small, fast and powerful console music player for Linux and UNIX-like systems.

It is written in C programming language. So the performance is good enough and it’s not resource-hungry at all. It is also extensible via external scripts.

cmus User Interface

The project exists and works but isn’t actively developed anymore. In other words, you may get minor fixes/patches. But, you should not expect any future releases with significant changes.

Considering that, let’s take a look at the features.

cmus Features

Every essential feature a music player needs is present in cmus. Some of the basic ones are:

  • Supported Formats: Almost every audio formats are supported on cmus, including the most popular ones – mp3, flac, wav, aac etc.
  • Music Library: cmus is capable of presenting your music collection in a well-organized library. And it is totally intuitive and easy to navigate through. You can search and filter through the tracks seamlessly. It supports Playlists and Play Queue. There is also an integrated file browser if you want to play tracks from outside your library. 
  • Gapless Playback: Keep on listening without any break. It can cycle through the whole music library.
  • Keybindings: cmus comes with sensible keyboard shortcuts for performing various actions. And the great thing is — all of those are completely customizable.
  • Themes & Customizability: You can select from pre-defined themes that come with cmus. Or you can create your own! Every little details are customizable in cmus.
  • Speed: Even you have thousands of tracks in your library, it doesn’t affect the startup-time of cmus.

In short, if you love to use the terminal, there’s no way that you will be disappointed by cmus. That’s how cool cmus is.

Installation on Ubuntu

cmus is available via the official Ubuntu repository. So, installing is as easy as typing a single command:

sudo apt install cmus

However, if you want to compile it from source you can take a look at the README file.

Getting started with cmus

Being a console application, it takes a little while to get used to cmus. But once you do, it’s totally worth it. The first thing you will want to do after installation is run this command:

cmus

This will start the music player. And, it should look something like this:

Cmus Launch Page

Of course, you haven’t added any music yet. To do that, you need to navigate to the folder you have the collection by pressing 5, it should let you select a directory and then browse through:

Cmus Music Library

Now, to add files or folders to your library/playlist, you need to press ‘A‘ and it will move you down the line so that you can add multiple files in a row, if that’s how you have it organized.

Next, you can go back to the main screen by pressing 1 or you can also press 2 to get a simple library view which may not look as good as the main library view.

Whenever you’re navigating for a music or file, simply press ENTER to play it.

For basic navigation, you can press C to pause/unpause and use the arrow button to seek by 10 seconds.

And, simply press : q to quit. If you just close the terminal, you will still find it running and have to manually end the processing using Stacer or any other system monitoring tool.

If you want to explore more about its usage — how to manage the queue, add a playlist, and customizations, you just have to type in:

man cmus-tutorial
Cmus Manual

This will show you a basic tutorial for using cmus. For further details, try:

man cmus

You will also find some plugins to extend the functionalities. You can check for those by typing:

cmus --plugins

In either case, simply head on to its GitHub wiki page or the official website to learn more about it.

cmus

Additional tip: Music scrobbling with cmus

If you are used to scrobbling musics, it’s totally possible in cmus. As I’ve said before, cmus is extensible. There are multiple scripts for this purpose. You will find some of them listed here in cmus Wiki. I’ve tried many of them. And I will suggest you to use cmusfm without any doubt. It supports scrobbing to both Last.fm and Libre.fm.

If you don’t know what scrobbling is — it is a way of logging the musics you play, so that you can visit your history later.

Did you know about cmus or using it already? What do you think about it?

About the author
Abhishek Prakash

Abhishek Prakash

Created It's FOSS 11 years ago to share my Linux adventures. Have a Master's degree in Engineering and years of IT industry experience. Huge fan of Agatha Christie detective mysteries 🕵️‍♂️

Become a Better Linux User

With the FOSS Weekly Newsletter, you learn useful Linux tips, discover applications, explore new distros and stay updated with the latest from Linux world

itsfoss happy penguin

Great! You’ve successfully signed up.

Welcome back! You've successfully signed in.

You've successfully subscribed to It's FOSS.

Success! Check your email for magic link to sign-in.

Success! Your billing info has been updated.

Your billing was not updated.