Here in 2025, could you run your life from a terminal without a graphical user interface?
See Productivity Applications below for the list of terminal applications and the related articles.
This is an evergreen article that will be updated as I explore this topic. As more productivity tools are reviewed, they will be added to my list below.
I learned computing back in the good old DOS days. OK, they weren’t really all that good. Computing has always came with its share of difficulties. It was an exciting time. It was the first time to ever get my hands on a keyboard. Learning new tools and getting the computer to do stuff was fascinating.
If you are interested in TUI (Text User Interface) applications, then Terminal Trove is an excellent resource for exploring additional tools.
Background
There were certain “killer” applications that allowed you to run your life. Some of these applications included Lotus 123 (spreadsheet), dBase III+, (database), and Word Perfect / Wordstar (word processors).
DOS days also saw the advent of programs that used graphics. For me, it was VersaCAD and AutoCAD at work. There were some desktop publishing applications like Aldus Pagemaker, and I think there was also an early version of Adobe Acrobat.
Then there were games that used graphics. DOOM, Wolfenstein, SimCity, Space Quest, X-COM, Civilization, and Wing Commander were some of my favorites.
I think the rise of graphical applications and games showed the real need to have computers that supported more than just terminal text based apps.
When Windows 3 took off, it pretty much killed a lot of the DOS applications; especially applications that had difficulty making the transition to Windows.
Developers, Admins, and the Terminal
Why do developers and system administrators seem to love the terminal? There seems to be two main reasons.
- Tool chains - developing software is basically all text based operations. Writing the code is text. Then there are good command line tools that support compiling, debugging, testing, version control, and deployment. This makes it very compelling to use the command line to automate many, if not all, of these operations.
- Remote access - Developers and admins often need to access remote computers. It is much more difficult to run a full blown graphical user interface via a connection. They will typically use ssh and ftp type tools to access and work with files in remote computers. The command line is great for that.
Having good terminal applications give a tremendous boost to those that need to interact with the computer in these ways.
Why Would I Want to Do This
So, you’re asking yourself, “Why would I want to run terminal apps when the GUI apps are easier to use, have more features, and are better looking?”
- You’re a glutton for punishment and enjoy banging you’re head against proverbial walls.
- You are curious, want to expand your knowledge and get a better feel for how computers really work. You like to tinker, explore, crawl down rabbit holes, and open cans of worms with abandon.
- You have an older computer with limited memory or just like the speed and control that comes with terminal applications.
- You can set this up on a remote computer or a virtual machine where a graphical interface may not be available or practical. One example would be; remotely connect to a home computer from the office to check personal email.
- You fight all the distractions that come with GUI applications and long for a simpler more focused approach.
- Terminal applications are keyboard focused. While some support the mouse, they are best used with just the keyboard. If you suffer from wrist pain, moving to terminal apps and keyboard predominance may make you feel better.
- Generally, terminal console application rely less on the internet than GUI applications. My feeling is using CLI apps will make you less subject to all the tracking algorithms. That is one of the questions I hope to explore with this CLI project.
One guarantee; if you dig into any of these terminal based productivity apps, you will learn a lot of new stuff.
Terminal Productivity Applications
In looking into terminal productivity applications, I found that applications that were useful for developers tended to be the best, most mature, and robust tools.
The list below is by no means comprehensive. These are just the ones that I’ve looked at.
Productivity Applications:
Clicking the link in the Program Type column takes you to my review of that program type.
Many of these applications are available through the Linux distribution’s package manager. But, I kid you not, some terminal applications can be a pain to install and configure.
I am running Linux Mint as my computer. But many of the applications are available on Mac and Windows. Since, installation methods will vary between Linux distributions and operating systems; I make no attempt to tell you how to solve installation issues. I do provide links to the applications homepage or source code.
Note: Many of these applications are a labor of love by very small groups of developers. Anything I say about things lacking from an application is not a criticism of the application but more an evaluation of the current state of the app. Some apps are personal projects that developers have decided to share with others. I salute them and their amazing efforts.
Conclusion
Could you run your life completely from the terminal? The answer is yes.
If you like to control your data, optimize your workflow processes, eliminate distractions, and gain speed. Implementing terminal productivity applications is for you.
If your hardware is extremely limited, this could be worthwhile. There are several Linux distros that are come without a GUI by default. Examples include Tiny Core Linux, Puppy Linux, Ubuntu server, and alpine to name a few.
If you remote into another machine via SSH and want to install everything on the remote machine. That’s an interesting concept. Should someone get access to your laptop, there would be very little there to find, since the laptop is just a thin client to your actual data.
There are good, lightweight interfaces (XFCE is a top choice) that allow you to install and run GUI apps on older hardware. Web browsing, Office applications, and videos are reasons to go that route.
It will be interesting to see how far this goes.
References: