Skip to content

Installation Profiles

This document provides detailed information about each installation profile and the packages they include.

Profile Overview

Profiles allow you to install groups of related tools based on your workflow. Each profile can be installed independently or combined with others.

sh
# Install multiple profiles
./setup/setup-osx.sh -p 'devops,secops,js'

Core Profile

The Core profile is always installed and provides essential system utilities.

Command Line Interfaces

PackageDescriptionLitemacOSDebian
build-essentialEssential packages for building debian packages-apt
ca-certificatesCommon CA certificateshomebrewapt
coreutilsBasic file, shell and text manipulation utilities-apt
curlCommand line tool for transferring data with URLshomebrewapt
gnupgEncryption tool (GPG)homebrewapt
gzipData compression programhomebrewapt
jqJSON processor toolhomebrewapt
localesTools to generate locale definitions-apt
oh-my-zshZsh configuration managershellshell
sedNon-interactive command-line text editorhomebrewapt
tarCreate and manipulate tar archives-apt
unzipDe-archiver for zip fileshomebrewapt
wgetRetrieve files using HTTP, HTTPS, FTP and FTPShomebrewapt
xz-utilsXZ format compression utilitieshomebrewapt

Base Profile

The Base profile provides enhanced CLI tools and common applications for daily development work.

Command Line Interfaces

PackageDescriptionLitemacOSDebian
batCat command with syntax highlightinghomebrewapt
bat-extrasBat combo with other commands (batgrep, batman, etc.)homebrewshell
chafaImage viewer in terminal-homebrewapt
cheatCreate and view interactive cheat sheetshomebrewapt
dockerContainer runtime (Debian: CLI/engine via apt; macOS: bundled with Docker Desktop, see Applications below)-apt
exiftoolMetadata writer and reader tool-homebrewapt
ezaModern ls replacement with colors and iconshomebrewapt
fdSimple, fast alternative to 'find'homebrewapt
ffmpegAudio video manipulation tool-homebrewapt
fzfCommand-line fuzzy finderhomebrewapt
ghGitHub official CLI-homebrewapt
glabGitLab official CLI-homebrewshell
glowRender markdown in the CLI with pizzazzhomebrewapt
lazydockerSimple terminal UI for docker commands-homebrewapt
lazygitSimple terminal UI for git commands-homebrewapt
nmapNetwork port scanning utility-homebrewapt
nvimHyperextensible Vim-based text editor-homebrewshell
pandocUniversal markup converter-homebrewapt
protoPluggable multi-language version managerhomebrewshell
rcloneSwiss army knife of cloud storagehomebrewapt
ripgrepRecursively search directories for regex patternshomebrewapt
skatePersonal key-value store-homebrewshell
sshsInteractive SSH clienthomebrewshell
tldr++Interactive cheatsheet tool-homebrewshell
treeDisplay filesystem as treehomebrewapt
ttydShare terminal over the web-homebrewapt
vhsCLI home video recorder (terminal recordings)-homebrewapt
vimUbiquitous text editorhomebrewapt
watchExecute a program periodicallyhomebrewapt
yqYAML processor (like jq for YAML)homebrewapt

GitHub CLI Extensions

ExtensionDescriptionLitemacOSDebian
gh-dashGitHub dashboard in terminal-ghgh
gh-notifyGitHub notifications in terminal-ghgh

Applications (macOS only)

ApplicationDescriptionLiteInstallation
BravePrivacy-focused web browser-homebrew cask
Docker DesktopContainer management GUI + CLIhomebrew cask
FirefoxPrivacy-focused web browser-homebrew cask
InsomniaHTTP and GraphQL client-homebrew cask
MattermostTeam collaboration platform-homebrew cask
OpenVPN ConnectVPN client-homebrew cask
VS CodeCode editor and IDE-homebrew cask

DevOps Profile

The DevOps profile provides container orchestration, infrastructure as code, and cloud platform tools.

Within this profile, tools are further grouped into categories (k8s, iac, cloud, misc). By default all categories are installed; set DEVOPS_CATEGORIES to a comma-separated subset to install only what you need, e.g. for a container image that's only used for Kubernetes debugging:

sh
DEVOPS_CATEGORIES=k8s ./setup/setup-debian.sh -p devops -l

Command Line Interfaces

The Category column corresponds to the DEVOPS_CATEGORIES values described above.

PackageDescriptionCategoryLitemacOSDebian
actRun GitHub Actions locallymisc-homebrewapt
ansibleIT automation tooliachomebrewpip
ansible-lintLinter for Ansible playbooksiac-homebrewpip
argoArgo Workflows CLIk8s-homebrewapt
argocdArgo CD CLI for GitOpsk8s-homebrewapt
awsAWS command line interfacecloud-homebrewapt
chart-testingHelm chart linting and testingk8s-homebrewshell
coderCoder remote development CLImisc-homebrewshell
helmKubernetes package managerk8shomebrewapt
helm-docsAuto-generate Helm chart documentationk8shomebrewapt
k6Modern load testing toolmisc-homebrewapt
k9sKubernetes TUIk8s-homebrewapt
kindKubernetes in Dockerk8s-homebrewapt
krewkubectl plugin managerk8shomebrewapt
kubectlKubernetes command-line toolk8shomebrewapt
kubectxKubernetes context switcher (also provides kubens, the namespace switcher - both homebrew's and Debian's native packages bundle the two together)k8shomebrewapt
mkcertMake locally trusted certificatesmisc-homebrewshell
ocOpenShift CLIk8shomebrewapt
scwScaleway CLIcloud-homebrewapt
sshpassNon-interactive SSH password authmischomebrewapt
teleportModern SSH server for clustersmisc-homebrewapt
terraformInfrastructure as code tooliachomebrewapt
veleroKubernetes backup and migrationk8s-homebrewapt
yamllintLinter for YAML filesmisc-homebrewapt

Note: docker was previously (incorrectly) listed in this table -- it's actually installed by the Base profile (see its Applications table below), not DevOps.

kubectl Plugins (via Krew)

PluginDescriptionLiteInstallation
cert-managercert-manager CLI (cmctl)krew
cnpgCloudNativePG operator CLIkrew
df-pvShow disk usage of PersistentVolumeskrew
ktopTop-like tool for Kuberneteskrew
neatClean up Kubernetes YAML outputkrew
sternMulti-pod log tailingkrew
view-secretDecode Kubernetes secrets easilykrew

SecOps Profile

The SecOps profile provides security scanning, secret management, and compliance tools.

Command Line Interfaces

PackageDescriptionLitemacOSDebian
ageSimple, modern file encryption-homebrewapt
cosignContainer signing and verificationhomebrewapt
diveDocker image layer explorer-homebrewapt
gitleaksSecret scanner for git repos-homebrewshell
kubescapeKubernetes security scanner-homebrewapt
kyvernoKubernetes policy engine CLI-homebrewapt
sopsEncrypted file editor-homebrewapt
trivyVulnerability scannerhomebrewapt
vaultHashiCorp Vault CLI-homebrewapt

JavaScript Profile

The JavaScript profile provides Node.js runtime and package managers.

Command Line Interfaces

PackageDescriptionLitemacOSDebian
@antfu/niPackage manager wrappernpmnpm
bunFast JavaScript runtime-protoproto
nodeJavaScript runtimeprotoproto
npmNode package managerprotoproto
pnpmFast, disk-efficient package manager-protoproto
yarnPackage manager and project manager-protoproto

Go Profile

The Go profile provides Go language development tools and Kubernetes operator SDKs.

Command Line Interfaces

PackageDescriptionLitemacOSDebian
cobra-cliCLI application builder-gogo
goGo programming languageprotoproto
kubebuilderSDK for building Kubernetes APIs-homebrewapt
kustomizeKubernetes YAML customization-homebrewapt
operator-sdkKubernetes operator SDK-homebrewapt

AI Profile

The AI profile provides tools for running AI coding agents and large language models locally.$

Command Line Interfaces

PackageDescriptionLitemacOSDebian
claude-codeClaude Code CLI-homebrewshell
copilot-cliGitHub Copilot CLI-homebrewshell
direnvPer-directory env loader (scoped agent secrets)homebrewapt
rtkCLI proxy that reduces LLM token usage-homebrewshell

Applications

ApplicationDescriptionLitemacOSDebian
OllamaRun LLMs locally-homebrew caskshell

Extras Profile (macOS Only)

The Extras profile provides personal productivity and media applications.

Applications

ApplicationDescriptionLiteInstallation
AudacityAudio editing software-homebrew cask
DiscordVoice and chat platform-homebrew cask
Raspberry Pi ImagerOS image flasher-homebrew cask
SoulseekP2P file sharing-homebrew cask
TransmissionBitTorrent client-homebrew cask
VLCMedia playerhomebrew cask

Installation Tips

Combining Profiles

Profiles can be mixed and matched:

sh
# Minimal full-stack developer
./setup/setup-osx.sh -l -p 'base,js'

# DevOps with security tools
./setup/setup-osx.sh -p 'devops,secops'

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

Lite Mode Strategy

Use lite mode (-l) to install only essential tools, then add specific tools manually:

sh
./setup/setup-osx.sh -l -p 'devops,js'
brew install <additional-tool>

Package Sources

  • homebrew - macOS package manager
  • apt - Debian package manager (with WakeMeOps repo)
  • shell - Shell script installation
  • proto - Proto version manager
  • npm - Node package manager
  • pip - Python package manager
  • go - Go package manager
  • gh - GitHub CLI extension
  • krew - kubectl plugin manager