#Brewfile
1 messages · Page 1 of 1 (latest)
Sorry I'm a bit naive to this, what does that Brewfile give a new user?
On my mac I could just run brew bundle and it would see the above and install docker, pyenv, pdm, pnpm.
Not super useful for anything more than people that dont use those tools or windows users but macOS/Linux could benefit maybe.
Probably not a "great" idea just thought i'd pitch it. Im 50/50 because i hate cluttering the top level
Ah I see, cool - I don't have any problems with the idea, but prob better to hear from people who aren't only just finding out what these things are 🙂
It sounds good. But in reality, it's yet another tool the user has to install, manage, and keep updated. IMO, the answer is a makefile and shell scripts
define brew_install
HOMEBREW_NO_AUTO_UPDATE=1 brew `brew ls --versions "$(1)" | wc -l | xargs expr | sed 's/0/install/' | sed 's/1/upgrade/'` "$(1)"
endef
SHELL := /bin/bash
.PHONY: install-osx-dev-deps
install-osx-dev-deps: ## Installs homebrew and dependencies.
@if ! [ $(which brew) ]; then /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"; fi
$(call brew_install,python3)
$(call brew_install,yarn)
$(call brew_install,node)
$(call brew_install,postgresql)
$(call brew_install,redis)
$(call brew_install,minio)
$(call brew_install,mailhog)
$(call brew_install,hadolint)
$(call brew_install,shellcheck)
$(call brew_install,dotenv-linter)
@brew services start redis
@brew services start minio
@brew services start mailhog
I also prefer the Makefile approach mainly because it always irks me whenever there are so many top-level config files 😄
Ohh this is the weigh