List of Linux Tools I put on almost every Linux / Debian host
- Click here to download eget, then type
$ eget schollz/croc - Change "schollz/croc" to any github repo discussed below β¦
- Linux Tools: 2025 Edition
- geany -> GUI editor/ like "notepad++" for Windows
- wireshark -> network packet reviewer
- Visual Studio Code -> (
sudo snap install --classic code) - guake -> GUI terminal client for linux, more options than the built in terminal
- tabby -> Modern, feature-rich terminal emulator with excellent cross-platform support 8
- xplr -> Very graphical, best on large screens (sayanarijit/xplr on Github)
- π nnn -> Efficient and elegant
- lf -> Cross platform (best for Windows, imho) (gokcehan/lf on Github)
- eza -> Modern replacement for ls with more features, colors and Git integration (successor to exa) 8
- π lsd -> Another ls clone, cross-platform (works on Linux, Mac Win) can also show directory sizes (Peltoche/lsd GitHub) - personal favorite
- micro -> For those new to Linux, or aren't into vi or vim (/zyedidia/micro on Github)
- ne -> Terminal editor (like nano / code highlighting, "esc" or F1 for menus)
- π vim -> VI editor with tons of extras - personal favorite
- neovim -> Text editor that can be configured to mirror VS Code, with a lot of plugins and extensibility 8
- vimrc -> config script for vim (from Github amix/vimrc) -> β Try out vim_awesome based on this
- bat -> "cat" clone with syntax highlighting, git integration and other features 8
- sublime text -> Sophisticated text editor for code, markup and prose with slick UI and amazing performance
- glances -> Lots of system info in one "glance", cross-platform (available for Windows) --installs python
- π htop -> Supercharged top clone β personal favorite
- btop -> TUI CLI graphics, fast, less dependencies than Glances 8
- bottom -> A btop inspired process monitor, cross platform
- system informer -> Official successor to Process Hacker - a powerful, multi-purpose tool to monitor system resources and detect malware
- croc -> Seamlessly and securely send files between 2 systems (cross platform runs on PC, MAC, Linux, Debian etc) (schollz/croc on Github)
- network-manager -> installs nmtui Terminal Network Manager app (set IPs, etc)
- hping3 -> check if something is on the network, way more powerful than "ping"
- nmap -> Network scanner -> Check out ncrack for a network authentication tool
- bmon -> TUI network bandwidth monitor
- mtr -> Traceroute and ping in one, great for network troubleshooting
- gping -> Ping with a graph - visual ping tool that shows latency over time
- dog ->
Dig - neoss --
ss - zabbix -> Free monitoring system for networks, servers, and applications that can monitor on-premises resources and cloud services
- systemctl -> Built-in Linux systemd service manager (use
systemctl status,systemctl list-units, etc. for service management) - Note: chkservice (TUI wrapper) is no longer available - ncdu -> Terminal disk and folder space viewer
- dust -> More intuitive version of du with bar chart visualization 8
- duf -> Disk utility TUI with pretty graphs (a better
df) - lynis -> Linux security auditing by CISOFY
- apt-show-versions -> shows package versions / if needing upgrade ("$ apt-show-versions -u")
- nala -> Frontend for apt with a more user-friendly interface and colored output 8
- fd -> Linux find clone with saner default options (PC, MAC, Linux, Debian, etc) (sharkdp/fd on Github)
- fish -> "friendly interactive shell" beats the pants off of bash, (Fishshell.com)
- starship -> Customizable cross-shell prompt with extensive customization options 8
- zoxide -> Smarter cd command that learns your habits and helps you navigate faster 8
- atuin -> Magical shell history - search, sync, and backup your command history across machines
- tig -> TUI client for git (jonas/tig on Github)
- lazygit -> Simple terminal UI for git commands, great for interactive git workflows (jesseduffield/lazygit on Github)
- delta -> Syntax-highlighting pager for git, diff, grep, and blame output - makes git diffs beautiful
- miller -> Does about everything awk and sed does for json/csv/etc files (johnkerl/miller on Github)
- most -> Linux pager, better than "less" or "more"
- tldr -> Simplified man pages that just tell you what you need to know with practical examples 8
- lazydocker -> TUI terminal software for Docker containers (jesseduffield/lazydocker on Github)
- json-tui -> Easy way to review json files, has a cool table view (ArthurSonzogni/json-tui Github)
- jc -> Shows common Linux command output in json format (kellyjonbrazil/jc on Github)
- visidata -> Reading CSV files or other large data sets (visidata.org)
- eg -> TLDR.sh like tool that helps with Linux commands (srsudar/eg on Github)
- procs -> ps replacement
- sd -> sed replacement
- ripgrep -> Extremely fast text search tool that respects gitignore rules 8
- ripgrep-all -> A grep tool with improvements on speed and document formats
- fzf -> A command-line fuzzy finder that enhances search and navigation in the terminal. Ideal for quickly finding files, command history, git, and more (junegunn/fzf on GitHub)
- fastfetch -> Faster, more feature-rich neofetch alternative for system information display 8
- pandoc -> Universal document converter that can convert between various markup formats 8
- hyperfine -> Command-line benchmarking tool - measure and compare command execution times
- just -> Command runner - a better alternative to make, with simpler syntax and no dependencies
- 12/02/25 - Added server/minimal mode (--server) and dry-run flag (--dry-run/-n) to installer; server mode excludes GUI tools for headless servers; dry-run mode previews installations without making changes
- 12/02/25 - Renamed to Lazy-Linux-Tool-Installer.py for clarity; improved user experience with clearer output and friendly messages; refactored with Python 3 best practices (type hints, dataclasses, structured classes); added comprehensive test suite with platform-independent tests; fixed hanging issues and improved error handling
- 12/02/25 - Verified all links and replaced unavailable chkservice; added quality tools: lazygit, delta, atuin, gping, hyperfine, just
- 09/06/25 - README formatting and links improvements; improved ripgrep-all description
- 03/18/25 - Major 2025 update with latest alternatives: eza (exa successor), neovim, tldr, zoxide, starship, dust, nala, fastfetch
- 11/19/23 - Updated Readme for consistency and readability
- 01/29/23 - Huge improvements to the linux installer, added
eget - 11/05/22 - Now the apps at the left are links to where you can get these tools (happy holidays π₯³)!
If you just want to install these tools all at once, I created a Lazy-Linux-Tool-Installer to do it automatically. It checks which tools you already have, installs the missing ones, and organizes everything by category - perfect for lazy users who want everything set up with minimal effort!
curl -O https://raw.githubusercontent.com/StewAlexander-com/Linux-Tools/main/Lazy-Linux-Tool-Installer.py && chmod +x Lazy-Linux-Tool-Installer.py && python3 Lazy-Linux-Tool-Installer.py# Download
curl -O https://raw.githubusercontent.com/StewAlexander-com/Linux-Tools/main/Lazy-Linux-Tool-Installer.py
# Or: wget https://raw.githubusercontent.com/StewAlexander-com/Linux-Tools/main/Lazy-Linux-Tool-Installer.py
# Make executable and run
chmod +x Lazy-Linux-Tool-Installer.py
python3 Lazy-Linux-Tool-Installer.py- Default: Installs all tools (GUI + CLI)
--server: Server mode - only CLI tools (no GUI apps)--dry-runor-n: Preview what would be installed (no changes)--help: Show all options
Examples:
python3 Lazy-Linux-Tool-Installer.py --server # Server install
python3 Lazy-Linux-Tool-Installer.py --dry-run # Preview
python3 Lazy-Linux-Tool-Installer.py --server --dry-run # Preview server installThe script will check your system, show what it will install, ask for confirmation, then install everything automatically. Perfect for lazy users! π
The Lazy-Linux-Tool-Installer.py script includes a comprehensive test suite (test_lazy_linux_tool_installer.py) that ensures code quality and reliability.
To run all tests:
python3 -m unittest test_lazy_linux_tool_installerTo run with verbose output:
python3 -m unittest test_lazy_linux_tool_installer -vTo run a specific test class:
python3 -m unittest test_lazy_linux_tool_installer.TestSystemChecker -vCurrent Status: β All tests passing
Ran 41 tests in 0.011s
OK
The test suite includes:
- SystemChecker Tests - Validates system compatibility checks (Debian-like detection, command availability, root user detection)
- Installer Tests - Tests command execution, timeout handling, file not found errors, and installation methods (apt, pip, eget, snap)
- ToolManager Tests - Verifies tool definitions, category organization, installation status checks, and tool installation logic
- User Consent Tests - Ensures proper handling of user input with retry limits and keyboard interrupt handling
- Main Function Tests - Validates the main execution flow, system check failures, and user consent scenarios
All tests are platform-independent and use extensive mocking to avoid:
- Actual system modifications
- Real package installations
- OS-specific command dependencies
- Network operations
Tests can be run on any platform (Linux, macOS, Windows) without requiring actual tool installations or system changes.
-
Using jc and json-tui together can produce some pretty results, the top of the picture shows the table view output of
sudo jc -p lsof -i |json-tui(the bottom showing the standardlsof -i) image -
Another powerful combination is using ripgrep with fzf for interactive file searching:
rg --files | fzf -
For terminal productivity, combining zoxide with starship creates an efficient navigation experience with informative prompts.