DevToolbox Cheats is an Argos extension script that creates a dynamic panel menu with your personal Markdown cheatsheets.
It allows you to:
- 📚 Browse cheats by categories (groups)
- 🔎 Search cheats interactively
- 📥 Export all cheats into a single Markdown (and PDF if
pandoc
is installed) - ⚡ Copy cheats instantly to clipboard
- 🖥️ View cheats in a resizable popup window
- Categories (Groups): Cheatsheets are organized by front-matter metadata
- Clipboard Integration: Copies cheat body automatically (supports Wayland and X11)
- Export: Generate one big “mega cheatsheet” in Markdown, optionally PDF
- Smart Cache: Re-indexes only when cheatsheets change
- Compact Mode: Quick menu with just search/browse/export
- Linux with GNOME/Argos extension
bash
,coreutils
,grep
,sed
,awk
,find
,stat
zenity
(for dialogs)xclip
orwl-clipboard
(for clipboard copy)pandoc
(optional, for PDF export)
mkdir -p ~/.config/argos ~/.config/argos/cheats.d
# Download the script
curl -fsSL -o ~/.config/argos/devtoolbox-cheats.30s.sh \
https://raw.githubusercontent.com/<your-user>/devtoolbox-cheats/main/devtoolbox-cheats.30s.sh
chmod +x ~/.config/argos/devtoolbox-cheats.30s.sh
Reload GNOME shell (Alt+F2 → r → Enter
) or restart Argos — you should see 🗒️ Cheatsheet in your panel.
- Panel Menu
- 🔎 Search cheats
- 📚 Browse cheats by group
- 📥 Export all cheats
- Compact menu (for small screens) → one dialog with all three actions
- Shortcuts in menu: Open cheats folder, LAB folder, edit script in VS Code
Each cheatsheet is a simple Markdown file (.md
) with optional front-matter keys in the first 80 lines.
Title: rsync basics
Group: Basics
Icon: 🔄
Order: 10
rsync -avh /src/ /dst/
Copies files in archive mode with human-readable sizes.
rsync -avz -e "ssh -p 2222" user@host:/data/ /backup/
Transfer over SSH with compression and custom port.
- Title → Displayed name in menu
- Group → Category (must match one of the defined groups; defaults to
Misc
) - Icon → Optional emoji shown before the title
- Order → Sorting within group (lowest first)
Categories are defined in the script with an associated emoji.
To add one, edit devtoolbox-cheats.30s.sh
:
declare -A GROUP_ICON=(
["Basics"]="📚"
["Network"]="📡"
["Databases"]="🗃️"
["Security"]="🔐"
["Misc"]="🧩"
["My Custom Group"]="✨" # ← Add your custom category here
)
Then in your Markdown file front-matter:
Title: Docker CLI
Group: My Custom Group
Icon: 🐳
Order: 5
docker ps -a
List all containers including stopped ones.
Click 📥 Export all (MD/PDF) in the menu, and it will generate:
~/DevToolbox-Cheatsheet_<timestamp>.md
~/DevToolbox-Cheatsheet_<timestamp>.pdf
(ifpandoc
is available)
You can override defaults via environment variables:
CHEATS_DIR
→ path to.md
cheats (default~/.config/argos/cheats.d
)CHEATS_CACHE
→ index file (default~/.cache/devtoolbox-cheats.idx
)CHEATS_REBUILD=1
→ force rebuild cache on every runEXPORT_MODE=1
→ makeshowCheat
print Markdown to stdout instead of showing popup
- ✅ Initial release with categories, search, export
- 🔄 Optional fallback to
yad
ifzenity
missing - 🔄 HTML/EPUB export with
pandoc
- 🔄 Automatic installer script
The repository already ships with a structured set of categories (groups):
- 📚 Basics
- 📡 Network
- 💿 Storage & FS
- 🗄️ Backups & S3
- 📦 Files & Archives
- 📝 Text & Parsing
- ☸️ Kubernetes & Containers
- 🛠 System & Logs
- 🌐 Web Servers
- 🗃️ Databases
- 📦 Package Managers
- 🔐 Security & Crypto
- 🧬 Dev & Tools
- 🧩 Misc
This repository already includes ready-to-use cheatsheets for popular tools:
- 🍃 MongoDB — Cheatsheet
- 🗃️ MySQL/MariaDB
- 🔎 OpenSearch — Cheatsheet
- 🗃️ PostgreSQL — psql/pg_dump
- 🗃️ SQLite
- 🛠️ Build — Make/CMake
- 🧬 Git — Advanced
- 🧬 Git — Basics
- 🟢 Node — nvm/npm/yarn
- 🐍 Python — venv/pip/pipx
- 🧷 tmux — Commands
- 🐳 Docker — Commands
- ⛏ Helm — Commands
- ⛏ Helm — template/lint
- 🎛 k9s — Hotkeys
- ☸️ KUBECTL — Commands
- ☸️ KUBECTL — JSONPath
- ☸️ Kustomize — kustomization.yaml
- 🫙 Podman / nerdctl — Commands
- 🔁 autossh — Resilient tunnels
- 🌐 CURL — Commands
- 🧭 DNS — dig/nslookup
- 🚓 Fail2Ban — Commands
- 🔥 firewalld — Commands
- 🌐 ip — Commands
- 🔥 iptables — Commands
- 🔁 iptables → nftables — Mapping
- 🔌 nc / nmap — Commands
- 🛰️ Network diag — mtr/traceroute/iperf3
- 🕸 nftables — Commands
- 🚚 RSYNC — Commands
- 🔐 SCP — Commands
- 🔑 SSH — Commands 0 Config
- 📡 SS — Socket Stats
- 🧱 UFW — Commands
- 🔐 WireGuard — Quickstart
- CrowdSec Cheatsheet
- 🔐 gpg / age
- 🔐 OpenSSL — Commands
- 🔐 OpenSSL — CSR with SAN
- 🔐 pass — Password Store
- ⏰ cron / at — Commands
- 📅 date / TZ — Commands
- 💽 du/df/lsof/ps — Commands
- 📜 journalctl — Basics
- 📜 journalctl — Commands
- 🌀 logrotate — Basics
- 🛡️ SELinux / AppArmor — Basic diag
- 🛠 systemctl — Commands
- 🕰️ systemd timers — Basics
- 🧩 systemd unit — template
- 🦾 AWK — Commands
- 🌀 Bash — Loops
- 🔪 cut/sort/uniq — Commands
- 🗃 FIND — Commands
- ⚡ fzf — Fuzzy Finder
- 🔎 GREP — Commands
- 🧩 JQ — Commands
- ⚡ ripgrep / fd / bat
- ✂️ SED — Commands
- Tree — Cheatsheet
- 🔤 tr/head/tail/watch — Commands
- ✍️ vim
- 🧪 yq — YAML processor
Each cheat lives as a Markdown file under
cheats.d/
with front-matter (Title
,Group
,Icon
,Order
).
MIT License — feel free to fork, adapt, and share. Contributions welcome!