spotify for linux
Into Tux Rock?

If you’re a Spotify Premium subscriber — get you, fancy pants — did you know you easily stream music from the command line?

Like, music from the actual Spotify library?

Well, you can! And it’s all thanks to an ncurses Spotify written in Rust called (obviously) ncspot.

Now I know what you’re thinking: there is an official, sanctified, and (somewhat regularly) updated Spotify for Linux client for the desktop. It’s even available as a Snap.

Command line? Pah! Who needs it. We should use what Spotify gives us, for free, and say thanks, right?

And you’re right.

Well, half right.

Well, maybe not even half right because the official Spotify desktop app is aab outright, absolute, never ending garbage fire.

It works (sometimes) but it runs poorly. And while it might integrate with Linux DEs to the point I can smush a keyboard media key to skip a track, that’s only really useful if the thing plays some music to skip in the first place!

Maybe I’m being mean. But it has just taken me nigh on 6 minutes to go from launching the Spotify for Linux apps to it actually loading, let alone doing what I want (which is play New Found Glory’s cover of Eye of the Tiger in honour of the new Ubuntu 20.04 wallpaper) so whatever 💁🏻‍♂️.

ncspot is a CLI Spotify Player

ncspot is a spotify cli client

Back to ncspot, source code for which you’ll find up on Github.

Keep in mind that as this is a geekishly (new word, learn it) cool tool and superbly designed (for a terminal app) it isn’t what a man more patronising than me would describe as ‘grandpa-friendly’.

tl;dr: this is not the “easiest” way to listen to Spotify on Linux.

But it works well, which is all I really care about as I like to listen to music, not stare at it.

Helpfully the app even boasts support for MPRIS, i.e. media player controls:

And it can be configured with keybindings too — neat!

Oh, I haven’t even mentioned that it’s super resource efficient yet, either!

AppPrivate MemoryShared MemoryTotal
ncspot22.1 MiB24.1 MiB46.2 MiB
Spotify407.3 MiB592.7 MiB1000.0 MiB

That’s what I call a table.

But best of all ncspot is very easy to install on virtually any Linux distro out there because it’s available as a Snap app on the Snapcraft store.

To install ncspot on Ubuntu run:

sudo snap install ncspot

Boom — done!

The first time you run ncspot in a new terminal window you’ll be prompted to login with your Spotify Premium account. This is all “on screen” and easy to do. The app even saves your credentials after login so that you don’t have to login each time you use it.

And that’s pretty much all there is to it!

Be sure to take a few minutes out to glance over the litany of keyboard shortcuts needed to navigate the UI, manage tracks, queues and playlists, and so on.

Bad news: there are a lot of shortcuts to learn.

Good news: they are very logical and easy to remember.

Better yet, if you forget which key does what just press the ? key with the CLI tool in focus to call up a handy cheat sheet.

In summary, if you’re not put off by the idea of streaming music from a command line app and you happen to be a Spotify Premium subscriber there’s no better client out there than ncspot.

P.S., in case you missed the memo in the copy above, this client does not work with free Spotify accounts. I checked. So, for something similar, try Tizonia instead.

Try it out and let me know what you think of it in the comments — and if you fancy hand crafting a Yaru-themed colour scheme for it, do share it below!

Found a cool CLI app for a task? Let me know about it via the tip form

H/t Popey

Apps command line spotify Spotify Apps terminal apps