diff --git a/Makefile b/Makefile index f7398a9..4135a95 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -.PHONY: help del ssh +.PHONY: help del ssh backup help: ## Show help. @printf "A set of environment management commands.\n" @@ -9,11 +9,16 @@ help: ## Show help. del: ## Delete your development environment. @echo "Deleting all dotfiles, applications, and folders..." - @stow --dotfiles -D git ssh + @stow --dotfiles -D git ssh brew @rm -rf ~/Projects @rm -rf ~/.ssh/id_ed25519 ~/.ssh/id_ed25519.pub + @brew uninstall --force $(shell brew list) ssh: ## Copy the SSH public key to your clipboard. @pbcopy < ~/.ssh/id_ed25519.pub @echo "The SSH public key is available in your clipboard." @echo "Add the SSH public key to your account on GitHub or GitLab. See your profile settings for more information." + +backup: ## Back up your applications list. + @echo "Backing up your applications list..." + @brew bundle dump --file=./brew/Brewfile --force diff --git a/README.md b/README.md index 9ca23d8..04dabf7 100644 --- a/README.md +++ b/README.md @@ -27,6 +27,7 @@ All my command-line tools, applications, and their configurations. Have fun 😎 - Git - SSH key generation - Create a Projects folder +- A bunch of productivity apps. See [Brewfile](/brew/Brewfile) for more information. #### Helper diff --git a/brew/Brewfile b/brew/Brewfile new file mode 100644 index 0000000..bb42926 --- /dev/null +++ b/brew/Brewfile @@ -0,0 +1,56 @@ +tap "homebrew/bundle" +tap "homebrew/cask" +tap "homebrew/cask-fonts" +tap "homebrew/cask-versions" +tap "homebrew/services" + +# Essentials +brew "stow" +brew "git" + +# Terminal +brew "spaceship" +cask "iterm2" +cask "font-fira-code-nerd-font" +cask "font-hack-nerd-font" + +# Terminal tools +brew "zsh" +brew "httpie" +brew "jq" +brew "gh" +brew "eza" +brew "bat" +brew "make" +brew "diff-so-fancy" + +# Docker +brew "docker" +brew "docker-compose" +brew "docker-credential-helper" +brew "docker-machine" + +# Languages +brew "go" +brew "node" +brew "nvm" +brew "yarn" +brew "pyenv" +brew "poetry" + +# Development apps +cask "visual-studio-code" +cask "firefox-developer-edition" +cask "google-chrome" +cask "beekeeper-studio" +cask "figma" +cask "postman" + +# Productivity apps +cask "notion-calendar" +cask "notion" +cask "spotify" + +# Communication +cask "zoom" +cask "slack" diff --git a/install.sh b/install.sh index f9f9f75..d48e32d 100644 --- a/install.sh +++ b/install.sh @@ -3,7 +3,7 @@ # Tells the shell script to exit if it encounters an error set -e -TOTAL_STEPS=4 +TOTAL_STEPS=6 STEP=1 function step_msg { echo "[$STEP/$TOTAL_STEPS] $1..."; @@ -20,12 +20,21 @@ printf "\nPlease wait! It will configure your environment.\n" step_msg "Creating the Projects folder" mkdir ~/Projects +# -- Homebrew ----------------------------------------------------------------- +step_msg "Installing homebrew" +brew update +brew install git stow + # -- Dotfiles ----------------------------------------------------------------- step_msg "Setting up dotfiles" git clone https://github.com/YasminTeles/dotfiles.git ~/.dotfiles cd ~/.dotfiles -stow --dotfiles git ssh +stow --dotfiles git ssh brew + +# -- Productivity Apps --------------------------------------------------------- +step_msg "Installing the productivity apps" +brew bundle install --file=~/Brewfile # -- Git ----------------------------------------------------------------------- step_msg "Configuring Git"