Декларативный Homebrew
Мне важно поддерживать единообразную среду разработки на обоих моих MacBook — рабочем и личном. (Именно поэтому я использую mise и храню dotfiles в репозитории.)
Ранее меня беспокоил один момент в этом процессе — поддержание актуальности установленных пакетов Homebrew. Раньше я время от времени запускал команду make dump, которая обновляла Brewfile с помощью brew bundle dump. Проблема заключалась в том, что состояние файла всегда отставало от реального состояния системы.
Теперь у меня есть функция Fish, которая обновляет Brewfile при каждом выполнении потенциально разрушительной команды brew: