Skip to content

Overview

▀▀▀▀██▀▀▀▀   ▄▄▀▀▀▀▀▀▄▄   ▄▄▀▀▀▀▀▀▄▄   ██           ▄▄▀▀▀▀▀▀▀▀
    ██       ██      ██   ██      ██   ██             ▀▀▀▀▀▀▄▄
    ██       ▀▀▄▄▄▄▄▄▀▀   ▀▀▄▄▄▄▄▄▀▀   ██▄▄▄▄▄▄▄▄   ▄▄▄▄▄▄▄▄▀▀

Tools: A searchable memory for the Terminal Tools you installed.⚓︎

Tools

  • tools (The command is mytools, with alias tools=mytools in ~/.zshrc ) is a small fzf-based browser for the command-line and TUI programs you chose to install on Arch Linux. It lists them with their descriptions, lets you search by name or by description, and puts four kinds of help one key away.

  • It exists because a year after a clean Arch install you can no longer remember what you added. This set of pages records how it was found, built, wired together and finished, including the mistakes along the way.

Built over four days

22 to 26 October 2026, on Arch Linux with GNOME on Wayland, in Tilix with zsh. Everything is plain bash plus tools that are already on the machine. No daemons, no services, nothing runs in the background.

What it does.⚓︎

What it does

Key Action
type Filter the list. fzf searches the name and the description, so monitor or audio finds tools whose names don't contain those words.
Enter Open the tool in mandible, an interactive TUI reference for any command's flags and subcommands.
Ctrl+T Show the tldr page (short practical examples).
Ctrl+E Show the cheat sheet from cheat (your own sheets live in ~/cheat/personal).
Ctrl+O Show the man page in colour, or the colour --help if the tool has no man page.
Esc Clear the search text. If the search box is already empty, quit.

Packages that install several commands (bind installs 29, none of them called bind) show a small picker so you choose which command you mean.

What is in the list?⚓︎

What is in the list?

  • Every package you installed on purpose (native, chaotic-aur and AUR), after removing group members, libraries, fonts and similar plumbing.
  • Only packages that put a program in /usr/bin and have no desktop launcher, so GUI apps stay out.
  • 33 everyday admin commands (systemctl, journalctl, sed, dig, ip and so on) from an editable text file, marked [admin].

At the end of the project the audit counted 255 entries: 200 single-command tools and 55 multi-command packages. For the 200, 156 have a man page, a tldr page and a cheat sheet. The other 44 are covered by the colour --help fallback for man, plus a handful of obscure tools that were deliberately left alone.

The Pages.⚓︎

Files at a glance⚓︎

Files at a glance

File Purpose
~/.local/bin/mytools The main fzf list and key bindings.
~/.local/bin/mytools-bin Works out which command a package really installs, or asks when there are several.
~/.local/bin/mytools-help Runs mandible, tldr, cheat or man for the chosen entry.
~/.local/bin/mytools-extras Builds the [admin] lines from the text file below.
~/.local/bin/mytools-preview Text for the right-hand preview pane.
~/.local/bin/mytools-audit Read-only report of which tools lack man, tldr or cheat coverage.
~/.config/mytools/extras.txt The editable list of admin commands.
~/cheat/personal/ Your cheat sheets, one file per command.
~/.local/share/mytools/tldr/ Your own tldr-style pages, checked before the official ones.
~/mk-tldr.sh One-off generator that builds tldr pages from the cheat sheets.

Requirements⚓︎

Requirements

pacman, fzf, bat, man-db (for whatis ), column (util-linux), tldr (the Python client), cheat and mandible (installed here as the AUR package mandible-bin ).

Rebuilding from scratch.⚓︎

Rebuilding from scratch

Install the requirements, then create the files in this order. Each page shows the final code for its part.

  1. ~/.local/bin/mytools-bin, mytools-help, mytools-extras, mytools-preview Page 3 and Page 4.
  2. ~/.config/mytools/extras.txt Page 4.
  3. ~/.local/bin/mytools Page 4 shows the final version).
  4. Make them executable with chmod +x ~/.local/bin/mytools*.
  5. Add alias tools=mytools to ~/.zshrc.
  6. Optional: mytools-audit, your cheat sheets and mk-tldr.sh Page 5