Skip to main content

Софт на MacBook для NetDevOps: что стоит и как поставить

Софт на MacBook для NetDevOps: что стоит и как поставить

Рабочий MacBook под NetDevOps / SRE — это не только «стандартный» Safari и Pages. Ниже — то, что реально стоит у меня (кроме штатного Apple-софта и корпоративных клиентов), зачем это нужно и как поставить с нуля.

Большая часть GUI ставится через Homebrew (brew install --cask …). CLI — через brew install …. Старая шпаргалка по самому Homebrew: Brew install SOFT.

Сетка приложений в /Applications

База: Homebrew

Если ещё нет:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Проверка:

brew --version
brew update

Dev / IDE

ПриложениеЗачем
CursorCursorAI-IDE на базе VS Code: повседневная разработка, рефакторинг, разбор репо
ZedZedЛёгкий быстрый редактор, когда Cursor избыточен
ObsidianObsidianЗаметки, runbook’и, черновики блога (vault → hugo-content)
iTerm2iTerm2Основной терминал (профили, сплиты, поиск по буферу)
ForkForkGit GUI: ветки, rebase, conflict resolution глазами
PostmanPostmanHTTP/API: коллекции, моки, быстрые проверки эндпоинтов
DBeaverDBeaverУниверсальный SQL-клиент (PostgreSQL, MySQL, …)
DockerDocker DesktopЛокальные контейнеры, compose, иногда встроенный kubectl
LensLens«Толстый» GUI к Kubernetes-кластерам
HeadlampHeadlampЛёгкий open-source K8s UI (альтернатива Lens)
LM StudioLM StudioЛокальные LLM с GUI: модели, чат, OpenAI-совместимый API
OllamaOllamaЛокальные модели из CLI/фонового сервиса
OpenCodeOpenCodeAI-coding агент/клиент для работы с кодом из отдельного приложения

Установка (Dev)

brew install --cask cursor zed obsidian iterm2 fork postman dbeaver-community \
  docker-desktop lens headlamp lm-studio ollama-app

OpenCode (отдельный инсталлятор с сайта проекта):

curl -fsSL https://opencode.ai/install | bash

Ollama также можно поставить формулой brew install ollama, если нужен только CLI без .app.


Сеть / VPN / доступ

ПриложениеЗачем
NetbirdNetbird UIMesh-VPN (WireGuard-based): доступ к homelab / команде без классического «сайтовый» VPN
OutlineOutlineКлиент Outline (Shadowsocks) — доступ к своему Outline-серверу
Outline ManagerOutline ManagerПоднять и раздать ключи Outline-сервера
OpenVPNOpenVPN ConnectКлассический OpenVPN-клиент (профили .ovpn)
AmneziaAmneziaVPNКлиент Amnezia: несколько протоколов, удобно для «сложной» сети
KaringKaringGUI поверх proxy-стека (подписки, маршруты, правила)
TermiusTermiusSSH/SFTP-клиент с синхронизацией хостов
HappHappКлиент для proxy/подписок (обход ограничений, профили)

Установка (VPN / сеть)

brew install --cask netbird-ui outline-manager openvpn-connect amneziavpn \
  karing termius happ

Клиент Outline (не путать с одноимённым notes-приложением в Homebrew) — с getoutline.org: скачать macOS-клиент и установить .dmg / .pkg.

Важно: brew install --cask outline ставит другой продукт (заметки). Для VPN Outline используйте сайт getoutline.org + outline-manager из cask.


Безопасность / приватность

ПриложениеЗачем
BitwardenBitwardenМенеджер паролей (и self-hosted при желании)
LuLuLuLuFirewall исходящих соединений: кто лезет в сеть
KnockKnockKnockKnockПоиск persistence (логины, LaunchAgents, browser extensions)
TorTor BrowserОтдельный браузер через Tor — когда нужна изоляция/анонимность
brew install --cask bitwarden lulu knockknock tor-browser

Утилиты macOS

ПриложениеЗачем
MaccyMaccyИстория буфера обмена (⇧⌘V)
CaffeineCaffeineНе давать Mac уснуть на время демо/сборки
EasydictEasydictБыстрый перевод выделенного текста
LICEcapLICEcapКороткие GIF-скринкасты для тикетов и README
AppCleanerAppCleanerУдаление .app вместе с хвостами в ~/Library
DaisyDiskDaisyDiskВизуальная карта диска — быстро найти, кто сожрал гигабайты
MacPackerMacPackerАрхиватор (zip/7z/…)
—KekaАльтернативный архиватор (часто через brew)
draw.iodraw.ioСхемы архитектуры, сети, sequence
IINAIINAВидеоплеер на mpv — удобнее штатного
SnippetsLabSnippetsLabБиблиотека сниппетов (bash, YAML, SQL)
TypeWhisperTypeWhisperГолосовой ввод / диктовка в любом поле
BlipBlipПередача файлов любого размера между устройствами
ZenZenБраузер на Gecko с упором на фокус/приватность
FirefoxFirefoxЗапасной браузер, отдельные профили, расширения
brew install --cask maccy caffeine easydict licecap appcleaner daisydisk \
  macpacker keka drawio iina typewhisper blip zen firefox

SnippetsLab — с сайта SnippetsLab или Mac App Store (в Homebrew cask на момент написания нет).


CLI через Homebrew (отдельный стек)

GUI — удобство. Повседневная работа NetDevOps — в терминале. Ниже формулы, которые стоят у меня и имеют смысл для статьи.

Список brew cask и DevOps CLI

Kubernetes / cloud / IaC

ФормулаЗачем
kubernetes-cli (kubectl)Управление кластером
kubectxБыстрое переключение context/namespace
k9sTUI по подам, логам, деплоям
sternМультиподные логи
helmПакеты в Kubernetes
kustomizeОверлеи манифестов
kindЛокальный K8s в Docker
argocdCLI к Argo CD
terraformIaC
ansible + ansible-lintКонфиг-менеджмент
vaultСекреты HashiCorp Vault
awscliAWS CLI
craneОбразы OCI без полного Docker-демона
brew install kubernetes-cli kubectx k9s stern helm kustomize kind argocd \
  terraform ansible ansible-lint vault awscli crane

Качество / безопасность артефактов

ФормулаЗачем
trivyСкан образов и FS на CVE
hadolintLint Dockerfile
checkovПолитики IaC (TF/K8s/…)
blackФорматтер Python
brew install trivy hadolint checkov black

Git / GitLab / GitHub / HTTP

ФормулаЗачем
ghGitHub CLI
glabGitLab CLI
httpieУдобные HTTP-запросы
curl / wgetБазовый HTTP/скачивание
sshpassАвтоматизация SSH с паролем (осторожно, только где уместно)
brew install gh glab httpie curl wget sshpass

Shell UX / повседневка

ФормулаЗачем
batcat с подсветкой
ezaСовременный ls
fzfFuzzy-поиск
ripgrep (rg)Быстрый grep
jq / yqJSON / YAML
btop / htopМониторинг процессов
tmuxСессии и сплиты в SSH
zoxideУмный cd
direnvEnv на каталог (.envrc)
hugoСборка этого блога
go / denoЯзыки/рантаймы под скрипты
docker-composeCompose CLI (если не из Docker Desktop)
brew install bat eza fzf ripgrep jq yq btop htop tmux zoxide direnv \
  hugo go deno docker-compose

Одной командой (минимальный «новый Mac»)

Имеет смысл после установки Homebrew и Xcode CLT (xcode-select --install):

# GUI (основное)
brew install --cask cursor obsidian iterm2 docker-desktop \
  dbeaver-community postman lens headlamp bitwarden

# CLI (основное)
brew install kubernetes-cli kubectx k9s helm kustomize terraform ansible \
  argocd vault trivy jq yq fzf ripgrep bat eza btop gh glab direnv

Что сознательно не вошло

  • Штатное Apple: Safari, Pages, Numbers, Keynote
  • Мессенджеры и созвоны: Telegram, Slack, Discord, Zoom и т.п.
  • Корпоративные VPN/клиенты заказчиков (CryptoPro, Endpoint Security VPN, Dion, …)

Их список меняется чаще рабочего DevOps-стека и хуже переносится между машинами.