Skip to content

Tools & Packages ​

This document provides a comprehensive reference of all tools and packages available through the installation profiles.

Quick Reference ​

Use this guide to:

  • Find specific tools and their installation source
  • Understand what each tool does
  • Determine which profile includes a tool
  • Check if a tool is in lite mode

Command Line Tools ​

Core Utilities ​

Essential system utilities (always installed):

ToolDescriptionSource
curlData transfer tool (HTTP/HTTPS/FTP)homebrew/apt
wgetNon-interactive network downloaderhomebrew/apt
jqJSON processor and query toolhomebrew/apt
sedStream editor for text manipulationhomebrew/apt
gzipData compression utilityhomebrew/apt
tarArchive creation and extractionapt
unzipZIP archive extractionhomebrew/apt
gnupgGPG encryption and signinghomebrew/apt
ca-certificatesSSL/TLS certificate authoritieshomebrew/apt

Enhanced CLI Tools ​

Modern replacements and enhancements (Base profile):

ToolReplacesDescriptionSource
batcatSyntax highlighting, git integrationhomebrew/mise
ezalsColors, icons, git statushomebrew/mise
fdfindSimpler syntax, fasterhomebrew/mise
ripgrep (rg)grepFaster recursive searchhomebrew/mise
fzf-Fuzzy finder for command linehomebrew/mise
yq-YAML processor (jq for YAML)homebrew/mise

Git Tools ​

Git and platform CLIs (Base profile):

ToolDescriptionExtensionsSource
lazygitTerminal UI for git-homebrew/mise
ghGitHub CLIgh-dash, gh-notifyhomebrew/mise
glabGitLab CLI-homebrew/mise

GitHub CLI Extensions:

sh
# Install via gh
gh extension install dlvhdr/gh-dash    # Dashboard TUI
gh extension install meiji163/gh-notify  # Notifications TUI

Container & Orchestration ​

Docker and Kubernetes tools (DevOps profile):

ToolPurposeRelated ToolsSource
dockerContainer runtimelazydockerapt/cask
kubectlKubernetes CLIk9s, kubectx, sternhomebrew/mise
helmKubernetes package managerchart-testing, helm-docshomebrew/mise
kindLocal Kubernetes-homebrew/mise
k9sKubernetes TUI-homebrew/mise

kubectl Plugins (via Krew):

sh
kubectl krew install cert-manager  # cert-manager CLI
kubectl krew install cnpg          # CloudNativePG CLI
kubectl krew install df-pv         # PV disk usage
kubectl krew install ktop          # Kubernetes top
kubectl krew install neat          # Clean YAML output
kubectl krew install stern         # Multi-pod logs
kubectl krew install view-secret   # Decode secrets

Infrastructure as Code ​

IaC and configuration management (DevOps profile):

ToolPurposeConfig FilesSource
terraformInfrastructure as code.tfhomebrew/mise
ansibleConfiguration management.yml playbookshomebrew/uv
ansible-lintAnsible linter-homebrew/uv
kustomizeKubernetes configkustomization.yamlhomebrew/mise

Cloud Platform CLIs ​

Cloud provider tools (DevOps profile):

ToolPlatformSource
scwScalewayhomebrew/mise
ocOpenShift/OKDhomebrew/mise

Security Tools ​

Scanning and secret management (SecOps profile):

ToolPurposeScansSource
trivyVulnerability scannercontainers, IaC, codehomebrew/mise
cosignContainer signingimageshomebrew/mise
sopsSecret encryptionfileshomebrew/mise
vaultSecret management-homebrew/mise
gitleaksSecret detectiongit reposhomebrew/mise
ageFile encryption-homebrew/mise
kubescapeKubernetes securityK8s configshomebrew/mise
kyvernoKubernetes policiesK8s resourceshomebrew/mise
diveImage layer analysisDocker imageshomebrew/mise

Development Languages ​

Runtime and toolchain management:

JavaScript/TypeScript (JS profile) ​

ToolPurposeManaged BySource
nodeJavaScript runtimemisemise
npmPackage managernodenode
pnpmFast package managermisemise
yarnPackage managermisemise
bunFast runtime & toolkitmisemise
@antfu/niPackage manager wrapper-npm

npm is not pinned separately: it ships inside the node release. Globals installed with npm install -g land in the active node install and become callable after mise reshim.

Go (Go profile) ​

ToolPurposeSource
goGo compilermise
cobra-cliCLI frameworkgo install
kubebuilderKubernetes API SDKhomebrew/mise
kustomizeKubernetes YAML overlayhomebrew/mise
operator-sdkKubernetes operator SDKhomebrew/mise

Python (DevOps profile) ​

ToolPurposeSource
uvFast Python installermise

On Debian, ansible and ansible-dev-tools are installed with uv tool install --python, which pins an explicit self-contained interpreter and exposes the entry points in ~/.local/bin. They are not installed via mise: its pipx backend uses whichever python3 it finds on the machine, which cannot be pinned and breaks when the distro or Homebrew moves that interpreter (ansible-core requires Python >= 3.12). Override with ANSIBLE_PYTHON. On macOS both come from Homebrew.

Version Manager ​

ToolManagesSource
miseLanguage runtimes (both); CLI binaries (Debian only)homebrew/shell

mise manages language runtimes on both platforms, and portable CLI binaries on Debian. On macOS, Homebrew is the package manager for CLI tools.

Usage:

sh
# Install a tool globally and pin it
mise use --global node@22

# Install without pinning globally (current directory only)
mise use node@22

# List installed / available versions
mise ls
mise ls-remote node

# Tools not in the registry are addressed by backend
mise use --global aqua:helm/chart-testing@latest
mise use --global github:isacikgoz/tldr@latest

# Refresh shims after installing globals via npm/go
mise reshim

Text & Document Tools ​

Editors and document processors (Base profile):

ToolTypePurposeSource
vimEditorUbiquitous text editorhomebrew/apt
nvimEditorExtensible Vimhomebrew/shell
pandocConverterUniversal document converterhomebrew/apt
glowViewerMarkdown rendererhomebrew/apt

Networking & Remote Access ​

Network tools and SSH (Base/DevOps profiles):

ToolPurposeSource
nmapPort scanninghomebrew/apt
sshsInteractive SSH clienthomebrew/shell
sshpassNon-interactive SSH authhomebrew/apt
teleportModern SSH serverhomebrew/apt
ttydTerminal over webhomebrew/apt

Cloud Storage & Sync ​

File transfer and cloud storage (Base profile):

ToolPurposeProvidersSource
rcloneCloud storage CLIAWS S3, GCS, Azure, etc.homebrew/apt

Monitoring & Diagnostics ​

System and application monitoring:

ToolPurposeWhat it monitorsSource
watchRepeat commandCommand outputhomebrew/apt
k9sKubernetes TUIK8s resourceshomebrew/apt
lazydockerDocker TUIContainershomebrew/apt

Documentation & Learning ​

Cheatsheets and help tools (Base profile):

ToolPurposeSource
cheatInteractive cheatsheetshomebrew/apt
tldr++Simplified man pageshomebrew/shell
skateKey-value storehomebrew/shell

Media & Graphics ​

Media manipulation (Base profile):

ToolPurposeFormatsSource
ffmpegAudio/video processingmp4, mkv, mp3, etc.homebrew/apt
chafaTerminal image viewerjpg, png, gifhomebrew/apt
exiftoolMetadata reader/writerall imageshomebrew/apt

CI/CD & Automation ​

Continuous integration tools (DevOps profile):

ToolPurposePlatformSource
actLocal GitHub ActionsGitHubhomebrew/apt
actionlintWorkflow file lintingGitHubhomebrew/mise
argoArgo Workflows CLIKuberneteshomebrew/apt
argocdArgo CD CLIKuberneteshomebrew/apt
chart-testingHelm chart testingHelmhomebrew/shell
k6Load testing-homebrew/apt

Utilities ​

Miscellaneous utilities:

ToolPurposeSource
treeDirectory tree viewerhomebrew/apt
bat-extrasBat utilities (batgrep, batman, etc.)homebrew/shell
mkcertLocal SSL certificateshomebrew/shell
coderRemote developmenthomebrew/shell
veleroKubernetes backuphomebrew/apt
vhsTerminal recorderhomebrew/apt
yamllintYAML lintinghomebrew/apt

Desktop Applications (macOS) ​

Base Profile ​

AppPurposeLicense
VS CodeCode editorFree
BravePrivacy browserFree
FirefoxPrivacy browserFree
InsomniaAPI clientFree
MattermostTeam chatFree
OpenVPN ConnectVPN clientFree
Docker DesktopContainer GUIFree

AI Profile ​

AppPurposeLicense
OllamaLocal LLM runnerFree

Extras Profile ​

AppPurposeLicense
VLCMedia playerFree
AudacityAudio editorFree
DiscordVoice/chatFree
TransmissionBitTorrentFree
SoulseekP2P file sharingFree
Raspberry Pi ImagerSD card flasherFree

Installation Quick Reference ​

By Source ​

Homebrew (macOS):

sh
brew install <package>          # CLI tools
brew install --cask <app>       # Applications

apt (Debian/Ubuntu):

sh
sudo apt install <package>

mise (CLI tools & language runtimes):

sh
mise use --global <tool>@<version>

npm (Node Packages):

sh
npm install -g <package>

go (Go Packages):

sh
go install <package>@latest

pip (Python Packages):

sh
pip install <package>

Shell Scripts:

sh
curl -fsSL <url> | bash

GitHub CLI:

sh
gh extension install <org>/<repo>

kubectl/Krew:

sh
kubectl krew install <plugin>

By Profile ​

Quick installation commands:

sh
# Core only (minimal)
./setup/setup-osx.sh

# Base tools
./setup/setup-osx.sh -p base

# DevOps full stack
./setup/setup-osx.sh -p 'devops,secops'

# Full-stack developer
./setup/setup-osx.sh -p 'base,js,go'

# Everything
./setup/setup-osx.sh -p 'base,ai,devops,go,js,secops,extras'

# Lite mode (only ✓ marked tools)
./setup/setup-osx.sh -l -p 'devops,js'

Package Managers ​

Understanding the sources:

ManagerPlatformPurposeAuto-Installed
HomebrewmacOSCLI tools, system packages & GUI apps✓
aptDebian/UbuntuSystem packages✓
miseAllLanguage runtimes; CLI binaries on Debian✓
npmAllNode.js packagesvia mise
uvAllPython packages (ansible)via mise
goAllGo packagesvia mise
KrewAllkubectl pluginsvia kubectl
ghAllGitHub CLI extensionsvia gh

Verifying Installation ​

Check installed tools:

sh
# Check specific tool
which kubectl
kubectl version

# List all Homebrew packages (macOS)
brew list

# List apt packages (Debian)
apt list --installed

# Check mise tools
mise ls

# Check npm global packages
npm list -g --depth=0

# Check kubectl plugins
kubectl plugin list

Updating Packages ​

Keep tools up to date:

sh
# Homebrew (macOS)
brew update && brew upgrade

# apt (Debian/Ubuntu)
sudo apt update && sudo apt upgrade

# mise tools - --bump is required, see below
mise upgrade --bump

# npm packages
npm update -g

# kubectl plugins
kubectl krew upgrade

Why mise upgrade needs --bump ​

~/.config/mise/conf.d/00-settings.toml sets pin = true, so mise use records an exact version (kubectl = "1.34.2") rather than a range. A plain mise upgrade only upgrades within the recorded constraint, and an exact version is always already satisfied — so it reports "All tools are up to date" and changes nothing, however old the tools are.

--bump is what rewrites the pin to the current latest and installs it:

sh
# See what is actually behind (plain `mise outdated` has the same blind spot)
mise outdated --bump

# Upgrade everything and rewrite the pins
mise upgrade --bump

# Upgrade a single tool
mise upgrade --bump kubectl

Re-running a setup profile has the same effect, since each one installs its tools with @latest.

Upgrading mise itself follows whichever way it was installed: brew upgrade mise on macOS, mise self-update on Debian.

Further Resources ​