I ditched desktop apps for these 5 Linux terminal apps, and I’m not going again


Terminal apps have a status for being too minimal, complicated, and helpful just for technical workflows. And whereas which may have been true a couple of years in the past, modern terminal apps are a lot more intuitive and functional, protecting loads of on a regular basis computing use circumstances. This makes them glorious light-weight options to typical desktop apps. In reality, listed here are 5 TUI (terminal consumer interface) apps which have fully changed GUI (graphical consumer interface) apps in my workflow.

Btop++ (or btop)

The solely system useful resource monitor you want

I’ve at all times discovered it type of humorous that useful resource displays eat system sources themselves. For instance, apps like GNOME System Monitor or KDE System Monitor want to attract the app window, utilization graphs, and the remainder of the interface — all of which eat into your obtainable system sources.

As such, I’ve at all times gravitated towards lighter terminal-based options, and btop++ simply tops (no pun supposed) the checklist of obtainable choices. It’s a TUI useful resource monitor written in C++ that provides a really intuitive interface, displaying all operating processes alongside general CPU, RAM, GPU, disk, and community utilization. It attracts correct graphs that can assist you observe utilization over time and presents the whole lot in a superbly color-coded, readable structure. There’s additionally correct mouse help, permitting you to click on your manner across the interface with out having to memorize keybindings.

It’s additionally probably the most customizable TUI apps on the market. Pressing Esc opens an app menu from the place you’ll be able to change the theme and regulate what every panel exhibits, together with fully hiding panels you don’t care about. In reality, I’d say btop++ is actually more powerful and feature-rich than your common graphical displays.

Btop++ is accessible within the official repositories of most distros. On Ubuntu, you’ll be able to simply set up it with the next command:

sudo apt set up btop

While the app is named btop++, its corresponding terminal command is solely btop.

superfile

Like having a graphical file supervisor inside your terminal

Is a terminal-based file supervisor objectively higher than a graphical one? Probably not. Both have their very own distinctive strengths and weaknesses, however I choose terminal file managers for 2 predominant causes.

First, I routinely SSH into my Linux machines, and an SSH session provides you entry to a shell, not a desktop. This means I don’t have entry to graphical apps and have to work together with the Linux system utilizing terminal instructions. This is the place terminal file managers are available in — they work similar to some other terminal command whereas giving me entry to a correct interface for file administration.

And the second cause I really like TUI file managers is that I hate utilizing CLI (command-line interface) tools like cd and ls to navigate my directories. It’s advantageous once I know exactly what I’m searching for, however more often than not, I don’t. I simply need to casually flick thru the recordsdata on my system. Having to kind ls and cd time and again simply to discover my file system is irritating.

Now, I’ve tried several terminal file managers through the years and in the end settled on superfile, primarily as a result of it seems to be and works lots like a GUI file supervisor. You get a left-hand sidebar with pinned folders, the principle file browser within the center, and a preview pane on the correct. There are small widgets that present file metadata, the standing of any file operations you’ve began, and what’s at the moment in your clipboard. The keybindings are additionally intuitive and simple to memorize.

All of this offers superfile a a lot gentler studying curve than different terminal file managers like Yazi, Ranger, or Midnight Commander, which use totally different navigation conventions and, in some circumstances, extra minimal interfaces that may take some time to get used to.

To set up superfile, run the next command:

bash -c "$(curl -sLo- )"

Once put in, you’ll be able to kind spf within the terminal to launch it.

lazydocker

Managing your Docker containers doesn’t want a heavy app

I’ve a small homelab operating on a low-spec system that hosts a couple of light-weight companies like Pi-hole, Glance, Vaultwarden, and others. With little room to spare, I would like most of its system sources devoted to these containers — not the instruments managing them.

This instantly dominated out Docker Desktop, which is unnecessarily bloated for my wants. And whereas Portainer is a well-liked, light-weight various, it constantly runs within the background as a Docker container of its personal, consuming system sources that my different containers might in any other case use. So it additionally will get a no from me.

Ultimately, I settled on lazydocker, a contemporary, light-weight terminal-based app for managing Docker containers. It comes with an intuitive interface for monitoring logs and stats, in addition to performing all the same old actions, equivalent to stopping, restarting, or eradicating containers. You additionally get mouse help, permitting you to work together with the obtainable choices with out having to recollect advanced keybindings.

You can set up lazydocker on Linux utilizing the next command:

curl  | bash

Fresh

A correct terminal-based IDE

I’m not a developer, however due to AI coding instruments, I’ve been spending extra time working with code than ever earlier than. From creating Bash scripts to constructing full-fledged HTML dashboards, I’m having the time of my life. Now, my typical workflow entails telling Claude Code what I would like and letting it handle everything for me. That stated, from time to time, I wish to open a file and tweak one thing myself, particularly when making focused edits.

Initially, I used the default textual content editor for these edits, however I rapidly discovered it extremely tough to work with recordsdata containing a whole bunch of traces of code. It’s arduous to scan all that code and discover the precise line or variable I have to edit. A correct IDE like VSCodium, with syntax highlighting, typically solves this downside, however putting in a full-fledged IDE felt like a waste of storage and system sources for one thing I exploit so hardly ever.

So I saved looking for the correct device and in the end settled on Fresh — a contemporary, quick, and light-weight terminal-based IDE written in Rust. It combines the acquainted structure of in style graphical editors like VS Code and Sublime Text with customary keybindings and full mouse help. Despite being a terminal app, it even has a correct menu bar on the high, with customary choices like File, Edit, View, and extra. And like every respectable IDE, it provides syntax highlighting and language server help, enabling options like error highlighting and code completion.

The set up directions for Fresh range by distro, so try its official GitHub repository to search out the suitable directions to your system.

ncspot

Stream Spotify out of your terminal

You can say what you want about Spotify, however you must admit that its builders have executed a commendable job of creating the app obtainable on virtually each platform on the market. For instance, do you know that the Spotify for Linux app is not formally supported by the corporate? It was truly constructed by Spotify engineers of their spare time, without spending a dime, as a facet venture.

And whereas that is positively cool and the app works completely — very similar to you’d expect from the official Windows or macOS client — it isn’t probably the most environment friendly implementation. Under the hood, it makes use of the Chromium Embedded Framework (CEF), which mainly means it’s carrying its personal copy of some Chromium-based browser components. That’s quite a lot of overhead for an app I preserve continually operating within the background.

Thankfully, Spotify also offers a robust API permitting for straightforward integration with totally different third-party purchasers. ncspot is one such light-weight, terminal-based Spotify shopper. You can use it to flick thru your playlists, albums, seek for music, and handle your queue, all via a easy interface. Granted, it is not notably stunning, however it’s useful and provides all of the options I would like. And like a lot of the different TUI apps on this checklist, it additionally helps mouse enter, which is at all times good to have.

ncspot is accessible on Linux via Flatpak, in addition to via some distro repositories and different bundle managers.

ncspot requires a Spotify Premium subscription.

Turn these terminal apps into correct desktop apps

The predominant subject with terminal apps is that you simply usually have to open a terminal and sort a command to launch them. However, there’s a easy workaround that permits you to entry them straight out of your app launcher, similar to your common desktop apps.

First, use the which command to search out the trail to the TUI app’s executable. Then, create a brand new .desktop file on the following location:

~/.native/share/functions/*app_name*.desktop

Next, open the file in a textual content editor, enter the next code, and reserve it:

[Desktop Entry]
Name=*app_name*
Comment=Launch a terminal app
Exec= *path_to_the_TUI_app*
Terminal=true
Type=Application
Icon=utilities-terminal
Categories=System;

Replace app_name within the Name area with the app’s show identify, and change the Exec worth with the precise path to its executable.

Once you are executed, the TUI app ought to seem in your system’s app launcher alongside your different desktop apps.



Source link