CLI Recommendations

Published 2018-05-11 20:51:09

Lately I have been using a lot CLI (Command Line Interface) applications for everything, mainly because they enhance the just keyboard user expirence along with a great functionallity with a low resource footprint. Yes, it may be harder to use them and harder to configure, but I think the outcome is satisfiying.

I will introduce a bit the applications and where to start without much detail, because there’s a lot of documentation already available :).

MPD/Mopidy

MPD stands for Music Player Daemon. And it’s just that. Imagine that your music player, ideally winamp or something like it, is in fact two applications, a controller (the interface) and the audio player. So… that’s how MPD works.

You have MPD as a regular linux system daemon and you connect to it using an application. In my case I use ncmpcpp, which is a CLI interface for MPD. Yes, the name has meaning.

I remember using it years ago claiming “WTF is this” and then downloaded a GUI client for MPD. Oh boy was I wrong. This application provides everything you need for listening to music, like browsing, searching for lyrics and so on.

There are a lot of interfaces for this daemon, even Android and web interfaces, so if you plan to mount a jukebox, I think this service is appropiate for that.

A final note: Mopidy is an MPD-inspired MPD. It’s written in python and it has a lot of addons and great community. I have it so I can listen to spotify stuff on my ncmpcpp.

Khal + vdirsyncer

The other day I was wondering… Is there any lightweight application that I can use for checking my calendar (synchronized using CalDav) without opening Thunderbird everytime? California depends on gnome, Kalendar on KDE… what a mess. But then I found about Khal and vdirsyncer.

Khal is a simple CLI calendar application with few configuration parameters that works just as I need. It opens fast and with the help of the other application is able to deal with CalDav.

Vdirsyncer is an application that synchronizes two CalDav/CardDav directories in general (client-server or server-server). It downloads and uploads changes whenever you execute it. The configuration is not so difficult but mind that if you want to use a keyring for security issues you may need to do additional steps (all covered by the official configuration document).

With these two applications we have an online synchronized CLI cool calendar.

Mutt/Neomutt

These two are email client applications for console. The configuration is not trivial, that’s why I haven’t still used them, but I recommend checking on them given the recommendations I have received :). If I feel like it, I will have a post on this too.

I hope this post have given you a couple of pointers of cool stuff to check. I think you won’t regret trying these applications. If you would like more detail on any of them, please tell me.