Skip to content

Latest commit

 

History

History
239 lines (164 loc) · 3.84 KB

File metadata and controls

239 lines (164 loc) · 3.84 KB

Environment Setup Instructions

MacOS

Homebrew

  • Install Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  • Execute the following commands
echo >> /Users/jabba/.zprofile
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/jabba/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"

Git

  • Install Git with Homebrew
brew install git
  • Configure Git settings
git config --global user.name "jabbathenut"
git config --global user.email grimesje@protonmail.com
git config --global core.editor nvim
git config --global init.defaultBranch main
git config --global core.excludesfile ~/.gitignore_global

CMake

  • Install CMake with Homebrew
brew install cmake

Ninja

  • Install Ninja with Homebrew
brew install ninja

Chezmoi

  • Install Chezmoi with Homebrew
brew install chezmoi
  • Initialize Chezmoi with the dotfiles repository
chezmoi init https://github.com/jabbathenut/dotfiles.git
  • Install dotfiles to their target locations
chezmoi apply

Python

  • Install standard build tools (may be required by some python versions)
brew install openssl readline sqlite3 xz zlib
  • Install pyenv and pyenv-virtualenv
brew install pyenv
brew install pyenv-virtualenv
  • Add the following to .zshrc (should be in repository)
# pyenv and pyenv-virtualenv
export PYENV_ROOT="$HOME/.pyenv" >> ~/.zshrc
[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH" >> ~/.zshrc
eval "$(pyenv init -)" >> ~/.zshrc
eval "$(pyenv virtualenv-init -)" >> ~/.zshrc
  • Install Python (version 3.x.x)
pyenv install 3.x.x
  • Set it to the global version
pyenv global 3.x.x
  • Exit terminal and re-open to utilize the new installed python information

Nerd Font

  • Install Nerd Font with Homebrew
brew install --cask font-jetbrains-mono-nerd-font

Starship

  • Install Starship with Homebrew
brew install starship
  • Add the following to .zshrc (should be in repository)
# Starship (custom terminal prompt)
export STARSHIP_CONFIG=~/.config/starship/starship.toml
eval "$(starship init zsh)"

Ghostty

  • Install Ghostty with Homebrew
brew install --cask ghostty

WezTerm (optional)

  • Install WezTerm with Homebrew
brew install --cask wezterm@nightly

Eza

  • Install Eza with Homebrew
brew install eza
  • Add the following to .zshrc (should be in repository)
# Eza (better ls)
alias ls="eza --icons=always"

Zoxide

  • Install Zoxide with Homebrew
brew install zoxide
  • Add the following to .zshrc (should be in repository)
# Zoxide (better cd)
eval "$(zoxide init zsh)" alias cd="z"

Yazi

  • Install Yazi with Homebrew
brew install yazi
  • Install Yazi dependencies with Homebrew
brew install ffmpeg sevenzip jq poppler fd ripgrep fzf zoxide resvg imagemagick
  • Add the following to .zshrc (should be in repository)
### YAZI START ###
# Set Yazi default editor
export EDITOR="nvim"

# Shell wrapper function that provides the ability to change the
# current working directory when exiting Yazi.
function y() {
	local tmp="$(mktemp -t "yazi-cwd.XXXXXX")" cwd
	yazi "$@" --cwd-file="$tmp"
	if cwd="$(command cat -- "$tmp")" && [ -n "$cwd" ] && [ "$cwd" != "$PWD" ]; then
		builtin cd -- "$cwd"
	fi
	rm -f -- "$tmp"
}
### YAZI END ###

Neovim

  • Install Python virtual environment for Neovim
pyenv virtualenv 3.x.x neovim-env
pyenv activate neovim-env
pip install pynvim
pyenv deactivate
  • Install Neovim with Homebrew
brew install neovim
  • Install Neovim configuration dependencies with Homebrew
brew install node yarn ripgrep tree-sitter-cli universal-ctags lazygit rust