Skip to content

StewAlexander-com/Linux-Tools

Repository files navigation

Linux Tools: 2026 Edition

List of Linux tools I put on almost every Linux / Debian host.

How to read this list: Most entries below are also installed by Lazy-Linux-Tool-Installer.py. A few are reference-only (configs, Windows-only, or too heavy) and are marked not in the Lazy installer. Debian/Ubuntu often renames some commands after apt install β€” those PATH names are noted inline.

Use Eget to download apps from GitHub

  • Download eget, then run $ eget schollz/croc
  • Change schollz/croc to any other GitHub repo discussed below (owner/name form)

Note: The Lazy installer no longer bootstraps eget/croc with curl | sh. It downloads GitHub release artifacts and validates them. Eget remains useful for one-off installs.

Table of Contents

What I (typically) Install

Desktop GUI Apps

  • geany -> GUI editor like "notepad++" for Windows
  • wireshark -> network packet analyzer
  • Visual Studio Code -> via snap: sudo snap install --classic code (Lazy installer uses the same)
  • guake -> dropdown GUI terminal for Linux
  • tabby -> Modern cross-platform terminal (desktop app; GitHub releases are AppImage/.deb/tarballs, not a tiny static CLI) (source thread)

Terminal File Explorers

  • xplr -> Very graphical TUI file explorer, best on large screens (sayanarijit/xplr on GitHub)
  • 🌟 nnn -> Efficient and elegant
  • lf -> Cross-platform TUI file explorer (gokcehan/lf on GitHub)

LS-like Directory Viewers

  • eza -> Modern ls replacement with colors and Git integration (successor to exa) (source thread)
  • 🌟 lsd -> Another ls clone, cross-platform (Linux/macOS/Windows); can show directory sizes (lsd-rs/lsd) - personal favorite

Text Editors and Viewers

  • micro -> Friendly terminal editor if you are not into vi/vim (micro-editor/micro)
  • ne -> Terminal editor (nano-like menus; Esc or F1)
  • 🌟 vim -> Vi Improved - personal favorite
  • neovim -> Modern Vim-compatible editor (apt package neovim; command nvim) (source thread)
  • vimrc -> Shared vim config (amix/vimrc) -> ⭐ vim_awesome based on this β€” configs only; not installed by the Lazy installer
  • bat -> cat clone with syntax highlighting / git integration (source thread) β€” on Debian/Ubuntu apt the command is often batcat
  • sublime text -> GUI editor β€” manual install; not in the Lazy installer

Process Explorers

  • glances -> Lots of system info in one glance; cross-platform β€” Lazy installer uses pip3 install --user glances (requires Python/pip already present)
  • 🌟 htop -> Supercharged top clone β€” personal favorite
  • btop -> Fast TUI process/resource monitor (source thread)
  • bottom -> Cross-platform process monitor inspired by btop β€” command is btm
  • system informer -> Windows-only successor to Process Hacker β€” listed for cross-platform awareness; not in the Lazy installer

Network-Related Apps

  • croc -> Securely send files between machines (cross-platform; schollz/croc)
  • network-manager -> apt package that provides nmtui (terminal NetworkManager UI)
  • hping3 -> Advanced ping/packet crafting β€” install via apt as hping3 (upstream repo is antirez/hping)
  • nmap -> Network scanner β†’ related: ncrack β€” ncrack is not auto-installed
  • bmon -> TUI network bandwidth monitor
  • mtr -> Traceroute + ping (apt package is often mtr-tiny; command mtr)
  • gping -> Ping with a live latency graph
  • doggo -> Modern dig alternative (DoH/DoT/DoQ); actively maintained successor to ogham/dog
  • neoss -> User-friendly ss alternative with a TUI
  • zabbix -> Full monitoring stack β€” not in the Lazy installer (much heavier than a CLI utility)

Misc CLI Terminal Apps

  • systemctl -> Built-in systemd service manager (systemctl status, systemctl list-units, …) β€” not installed by the script (already on systemd hosts); former wrapper chkservice is effectively unmaintained
  • ncdu -> Terminal disk/folder space viewer
  • dust -> Friendlier du with bar charts (source thread)
  • duf -> Friendlier df with graphs
  • lynis -> Linux security auditing by CISOfy (GitHub)
  • apt-show-versions -> Show package versions / upgrades (apt-show-versions -u)
  • nala -> Friendlier apt frontend (source thread)
  • fd -> Friendlier find (sharkdp/fd); Debian/Ubuntu apt package fd-find, command often fdfind
  • fish -> Friendly interactive shell
  • starship -> Cross-shell customizable prompt (source thread)
  • zoxide -> Smarter cd that learns your habits (source thread)
  • atuin -> Shell history search/sync across machines
  • tig -> TUI git client
  • lazygit -> Simple TUI for git
  • delta -> Syntax-highlighting pager for git diffs
  • miller -> awk/sed-like tool for CSV/JSON/etc. β€” command is mlr
  • most -> Pager with more features than less/more
  • tldr -> Simplified practical man pages (source thread) β€” Lazy installer uses pip3 install --user tldr
  • lazydocker -> TUI for Docker
  • json-tui -> Terminal JSON viewer with table view
  • jc -> Convert common command output to JSON
  • visidata -> Interactive viewer for CSV and other tabular data β€” Lazy installer uses pip3 install --user visidata
  • eg -> Useful command examples at the CLI (similar niche to tldr)
  • procs -> Modern ps replacement
  • sd -> Simpler sed-like find/replace
  • ripgrep -> Fast recursive search β€” command is rg (source thread)
  • ripgrep-all -> ripgrep across PDFs, office docs, and other rich formats β€” command is rga
  • fzf -> Fuzzy finder for files, history, and pipelines
  • fastfetch -> Fast system-info display (neofetch-style) (source thread)
  • pandoc -> Universal document converter (source thread)
  • hyperfine -> Command-line benchmarking
  • just -> Command runner / lightweight make alternative

Updates

  • 07/14/26 - Tagged v5.0.1: forensic README accuracy pass; --server only skips real GUI apps (xplr is TUI again)
  • 07/14/26 - Forensic README accuracy pass: fix misleading install claims, jc example, Debian command aliases, glances/tabby/systemctl notes; exclude only real GUI apps from --server
  • 07/14/26 - Tagged v5.0.0: secure eget/croc installs; README 2026 freshness; dog β†’ doggo
  • 07/14/26 - Security: removed curl|sh/bash for eget/croc; GitHub release downloads with ELF checks, croc SHA-256 verification, post-install probes, longer timeouts
  • 07/14/26 - README freshness: 2026 edition; fixed moved/dead links; clarified README-only tools; synced repos (lsd-rs/lsd, micro-editor/micro)
  • 12/02/25 - Added server/minimal mode (--server) and dry-run (--dry-run/-n)
  • 12/02/25 - Renamed to Lazy-Linux-Tool-Installer.py; dataclasses/type hints; platform-independent test suite
  • 12/02/25 - Replaced unavailable chkservice; added lazygit, delta, atuin, gping, hyperfine, just
  • 09/06/25 - README formatting/link improvements; ripgrep-all description
  • 03/18/25 - 2025 alternatives update: eza, neovim, tldr, zoxide, starship, dust, nala, fastfetch
  • 11/19/23 - Readme consistency/readability
  • 01/29/23 - Major installer improvements; added eget
  • 11/05/22 - Tool names became links

Installation

Lazy-Linux-Tool-Installer.py installs the tool definitions in that script (currently ~60 entries): checks PATH, installs missing tools via apt/pip/snap/eget (and a verified GitHub install for croc), and skips anything already present.

It does not install README reference-only items (vimrc configs, Sublime Text, System Informer, Zabbix, ncrack).

Requires: Debian-family OS (apt-get), sudo, curl, and network access. You will be prompted once for consent, then for sudo as needed.

Quick Install (tracks main)

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

Pin to release v5.0.1

curl -O https://raw.githubusercontent.com/StewAlexander-com/Linux-Tools/v5.0.1/Lazy-Linux-Tool-Installer.py && chmod +x Lazy-Linux-Tool-Installer.py && python3 Lazy-Linux-Tool-Installer.py

Download and Run

# Latest main
curl -O https://raw.githubusercontent.com/StewAlexander-com/Linux-Tools/main/Lazy-Linux-Tool-Installer.py
# Or pin: curl -O https://raw.githubusercontent.com/StewAlexander-com/Linux-Tools/v5.0.1/Lazy-Linux-Tool-Installer.py

chmod +x Lazy-Linux-Tool-Installer.py
python3 Lazy-Linux-Tool-Installer.py

Options

  • Default: Install CLI + desktop GUI tools defined in the script
  • --server: Skip desktop GUI apps only (geany, wireshark, code/VS Code, guake, tabby). TUI tools such as xplr/htop/nnn still install
  • --dry-run / -n: Preview actions; make no changes
  • --help: Show all options

Examples:

python3 Lazy-Linux-Tool-Installer.py --server           # headless-friendly set
python3 Lazy-Linux-Tool-Installer.py --dry-run          # preview
python3 Lazy-Linux-Tool-Installer.py --server --dry-run # preview server set

Security note: The installer does not use curl | sh or curl | bash for eget or croc. It downloads GitHub release artifacts, applies binary sanity checks, verifies croc’s published SHA-256 checksums, and runs simple post-install probes for those binaries.


Testing

test_lazy_linux_tool_installer.py is a mocked unit-test suite for Lazy-Linux-Tool-Installer.py (no real package installs).

Running Tests

From the Linux-Tools directory:

python3 -m unittest test_lazy_linux_tool_installer
python3 -m unittest test_lazy_linux_tool_installer -v
python3 -m unittest test_lazy_linux_tool_installer.TestSystemChecker -v

Test Results

Current Status: βœ… All tests passing

Ran 46 tests in 0.008s
OK

Test Coverage

  • SystemChecker β€” Debian-like detection, command availability, root check, curl/sudo requirements
  • Installer β€” command runner/timeouts, apt/pip/eget/snap paths, curl|sh regression guard
  • ToolManager β€” tool definitions, categories, install routing
  • User consent β€” retries and KeyboardInterrupt handling
  • Main β€” system-check failure and consent decline paths (argv-safe under unittest)

Platform Independence

Tests mock subprocess/filesystem side effects so they can run on Linux, macOS, or Windows without installing packages. They are not end-to-end install tests on a live Debian host.


Sometimes using two apps together can be helpful

  • jc + json-tui (pretty JSON table view):
sudo lsof -i | jc --lsof -p | json-tui
  • Interactive file picking with ripgrep + fzf:
rg --files | fzf
  • Faster navigation + richer prompts: zoxide with starship (each needs its own shell init hook; see their docs).

Sources

  1. Linux CLI Tool Upgrades/Alternatives β€” r/selfhosted
  2. eget
  3. doggo
  4. NetworkManager
  5. micro editor
  6. jc docs β€” lsof parser

About

List of Linux Tools I put on almost every linux / Debian host, with a lazy installer for those who just want all the tools at once

Topics

Resources

Stars

32 stars

Watchers

5 watching

Forks

Packages

 
 
 

Contributors

Languages