GUI x TUI x CLI

2025-11-14 | aprates.dev

[1] Leia este post em português

A practical guide to common Linux applications and their alternatives

Many people start out in Linux using mainly graphical interfaces, but after a while they discover that the command line is not just an alternative - it is a powerful tool. In my case, my day to day life goes through the terminal: code compilation, version control, folder navigation, file inspection, automation with scripts, process management, quick text editing, disk cleaning, API testing with, database tools, as well as container management.

Using the command line takes practice - at first it is more difficult than navigating graphical interfaces with the mouse and requires study. But over time, many things become absurdly faster to do in the terminal. And there's another huge advantage: when you need to set up a remote server, access a Raspberry Pi via SSH, or work within a minimal image like Alpine, CLI tools are practically universal. Mastering this environment makes you much more prepared.

What are GUI, TUI and CLI?

Applications guide

This guide provides a curated list of popular GUI applications combined with their closest equivalents in TUI or CLI format to help anyone looking to increase terminal fluency and take advantage of tools that are often lighter, more flexible, faster, and more productive.

Whether you're transitioning to a more terminal-focused workflow or simply want lightweight alternatives, this list covers the essentials:

Function               | GUI                       | TUI                 
---------------------- | ------------------------- | --------------------
Disk Usage Analysis    | Baobab                    | ncdu, gdu           
Text reading/editing   | Gedit, Mousepad, Kate     | vim, nano, less     
Package Management     | Pamac, GNOME Software     | -                   
Network Management     | Network Manager GUI       | nmtui               
File management        | Nautilus, Thunar, Dolphin | ranger, nnn, lf     
System Monitor         | System Monitor, KSysGuard | htop, btop, atop    
Partitioning and disks | GParted, GNOME Disks      | -                   
Media Player           | VLC, Rhythmbox, Audacious | cmus                
Archiving              | File-Roller, Engrampa     | -                   
Web Browsing           | Firefox, Chrome, Postman  | w3m, lynx           
Email client           | Thunderbird, Evolution    | mutt, alpine        
Version control        | GitKraken, GitHub Desktop | lazygit, tig        
Containers             | Docker Desktop, Podman    | -                   
IDE for code           | VS Code, IntelliJ         | neovim, emacs, helix
Audio editing          | Audacity, Ocenaudio       | -                   
BD Customers           | DBeaver, MySQL            | pgcli               
Torrent                | Transmission              | rtorrent            
PDF reader/editor      | Evince, Document Viewer   | -                   
Weather/forecast       | Miscellaneous widgets     | wego                
Settings               | GNOME/KDE/XFCE Panels     | -                   
Clipboard              | Clipman                   | -                   
Chat / communication   | Slack, Discord            | weechat, irssi      
System Information     | Hardinfo                  | -                   
Function               | CLI                                 
---------------------- | ------------------------------------
Disk Usage Analysis    | dust                                
Text reading/editing   | cat, head, tail, grep, sed, awk     
Package Management     | pamac, pacman, apt, dnf             
Network Management     | nmcli                               
File management        | ls, cp, mv, rm, find, tree          
System Monitor         | top, ps, free                       
Partitioning and disks | fdisk, parted, lsblk, blkid, mkfs.\*
Media Player           | mpv, mplayer, ffplay                
Archiving              | tar, zip, unzip, 7z, xz, zstd       
Web Browsing           | curl, wget                          
Email client           | msmtp, sendmail                     
Version control        | git, diff                           
Containers             | docker, podman                      
IDE for code           | vim (CLI mode), compilers, make     
Audio editing          | sox, ffmpeg                         
BD Customers           | mysql, psql, sqlite3, cqlsh etc.    
Torrent                | transmission-cli, aria2c            
PDF reader/editor      | pdftotext, pdftoppm, pdftk          
Weather/forecast       | curl wttr.in                        
Settings               | systemctl, timedatectl, hostnamectl 
Clipboard              | xclip, xsel, wl-copy, wl-paste      
Chat / communication   | matrix-cli, telegram-cli            
System Information     | neofetch, fastfetch, inxi, lshw     
The command line doesn't completely replace graphical interfaces - and it doesn't need to. Web browsers can hardly be entirely replaced, modern IDEs like VS Code and IntelliJ remain unbeatable for programming; graphic editors like GIMP don't make much sense in a terminal; and configuring something visually can be more comfortable depending on the task.

But the truth is that mastering CLI/TUI increases your autonomy, your speed and your understanding of the system. Many of Linux's most powerful and essential tools simply don't have a graphical equivalent with the same flexibility. And when you need to automate a process, manipulate files in bulk or operate a remote server, the command line stops being an "alternative mode" and becomes the best tool available.

The mouse takes you where you can point; the terminal takes you wherever you want to go.

The more you practice, the more you realize that using the terminal isn't about being "hardcore": it's about being efficient. And once you get the hang of it, it's hard to go back.

⣶⡆⢰⣶⠀⠀⢰⡆⠀⣶⠀⠀⠀⠀⣶⠀⢰⡆⠀⠀⣶⡆⢰⣶
⠻⣷⡾⠋⠀⠀⠘⢿⣾⠟⠀⠀⠀⠀⠻⣷⡿⠃⠀⠀⠙⢷⣾⠟
⠀⢸⡇⠀⣶⠀⠀⢸⣿⠀⠀⠀⠀⠀⠀⣿⡇⠀⠀⣶⠀⢸⡇⠀
⠀⢸⡇⠀⣿⠀⣀⣼⣿⣶⣾⣿⣿⣷⣶⣿⣧⣀⠀⣿⠀⢸⡇⠀
⠀⢸⡇⢀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡀⢸⡇⠀
⠀⢸⣷⣿⣿⣿⣿⣧⣤⣿⣿⣿⣿⣿⣿⣤⣼⣿⣿⣿⣿⣾⡇⠀
⠀⣸⣿⣿⣿⣿⣉⣏⣉⣿⣿⠀⠀⣿⣿⣉⣹⣏⣉⣿⣿⣿⣇⠀
⠀⣿⣿⣿⣿⣿⣿⣿⣿⠛⣿⣿⣿⣿⠛⣿⣿⣿⣿⣿⣿⣿⣿⠀
⠀⠛⠛⠛⠛⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠛⠛⠛⠛⠀
⠀⢸⡇⠀⣿⠀⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠀⣿⠀⢸⡇⠀
⠀⢸⣇⠀⣿⣄⣀⣸⡿⠀⣿⡇⢸⣿⠀⢿⣇⣀⣠⣿⠀⣸⡇⠀
⠀⠈⢿⣆⠈⠛⠛⠋⢀⣼⠟⠀⠀⠻⣧⡀⠙⠛⠛⠁⣰⡿⠁⠀
⠀⠀⠀⠙⠛⠿⠿⠿⠛⠉⠀⠀⠀⠀⠉⠛⠿⠿⠿⠛⠋⠀⠀⠀

See also

[2] Capsule Archives
[3] Capsule Home

Want more?

Comment on one of my posts, talk to me, say: hello@aprates.dev

[4] Subscribe to the Capsule's Feed
[5] Checkout my projects on GitLab
[6] Checkout my projects on GitHub
[7] Checkout my projects on SourceHut

Join Geminispace

Gemini is a new Internet protocol introduced in 2019, as an alternative to http(s) or gopher, for lightweight text contents and better privacy.

Not sure how, but want to be part of the club? See:
[8] Gemini quick start guide

Already have a Gemini client?
[9] Navigate this capsule via Gemini


© aprates.dev, 2021-2025 - content on this site is licensed under
[10] Creative Commons BY-NC-SA 4.0 License
[11] Proudly built with GemPress
[12] Privacy Policy