Install with:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Install the JetBrains Mono
nerd font:
brew tap homebrew/cask-fonts
brew install font-jetbrains-mono-nerd-font
Optional: Install the
Hack
nerd font:brew tap homebrew/cask-fonts brew install font-hack-nerd-font
-
Get it from the official site, or install via Homebrew with:
brew install --appdir="~/Applications" iterm2
-
After cloning the bare
cfg
repo (details below), import theiTerm_profile.json
filePreferences -> Profiles -> Other Actions... -> Import JSON Profiles...
-
Install the following with Homebrew:
brew install bat eza fzf git git-delta go jq pyenv pyenv-virtualenv tree zsh $(brew --prefix)/opt/fzf/install # Use the homebrew zsh installation # Ensure $HOMEBREW_PREFIX is set sudo sh -c "echo $HOMEBREW_PREFIX/bin/zsh >> /etc/shells" chsh -s $HOMEBREW_PREFIX/bin/zsh
-
Install Volta with:
curl https://get.volta.sh | bash -s -- --skip-setup
-
Install
node
,npm
, andyarn
with:volta install node npm yarn
Optional: Install
emoj
viayarn
with:yarn add emoj
-
-
Install with:
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
-
Install the
powerlevel10k
theme with:git clone --depth=1 https://github.com/romkatv/powerlevel10k.git $ZSH_CUSTOM/themes/powerlevel10k
Optional: Install the
spaceship
theme (currently configured, but unused by default) with:git clone --depth=1 https://github.com/denysdovhan/spaceship-prompt.git $ZSH_CUSTOM/themes/spaceship-prompt ln -s "$ZSH_CUSTOM/themes/spaceship-prompt/spaceship.zsh-theme" "$ZSH_CUSTOM/themes/spaceship.zsh-theme"
-
Install the following plugins:
alias-tips
F-Sy-H
(Fast Syntax Highlighting)forgit
zsh-autosuggestions
git clone --depth=1 https://github.com/djui/alias-tips.git $ZSH_CUSTOM/plugins/alias-tips &&\ git clone --depth=1 https://github.com/z-shell/F-Sy-H.git $ZSH_CUSTOM/plugins/F-Sy-H &&\ git clone --depth=1 https://github.com/wfxr/forgit.git $ZSH_CUSTOM/plugins/forgit &&\ git clone --depth=1 https://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions
- Download Firefox Developer Edition here.
- Log in with Firefox account
- This should sync bookmarks, extensions, etc.
- Open
about:support
- Find the "Profile Folder" section
- Navigate to the profile location using iTerm
- Close Firefox
- Copy/Paste the
user.js
file from this repo into the profile directory - Create a new directory in the profile directory, called
chrome/
- Copy/Paste the
userChrome.css
file from this repo into thechrome/
directory - Open Firefox
Download it here. Sync extensions and preferences natively.
Install the gotest
binary (to colorize go test
output) by running the following outside of any Go modules:
go install github.com/rakyll/gotest@latest
After completing the below steps to configure the cfg
repo, restart iTerm or run:
source ~/.zshrc
Prior to installation, make sure to include the cfg
alias in the local .bash_profile
or .zshrc
:
alias cfg="$HOMEBREW_PREFIX/bin/git --git-dir=$HOME/.cfg/ --work-tree=$HOME"
Then, in the command line, run:
source ~/.zshrc
# or
source ~/.bash_profile
-
Ensure that the source repo
.gitignore
's the folder where.cfg
will be cloned:echo ".cfg" >> .gitignore
-
Clone this repo into a "bare" repo in a hidden folder in the
$HOME
directory:git clone --bare git@github.com:PSalant726/dotfiles.git $HOME/.cfg
Alternative: Clone via HTTPS
git clone --bare https://github.com/PSalant726/dotfiles.git $HOME/.cfg
-
Define the
alias
in the current shell scope (only required if not included in the local.zshrc
or.bash_profile
):alias cfg="$HOMEBREW_PREFIX/bin/git --git-dir=$HOME/.cfg/ --work-tree=$HOME"
-
Checkout the content from the bare repository in the
$HOME
directory:cfg checkout
Note: The step above might fail with a message like:
error: The following untracked working tree files would be overwritten by checkout: .zshrc # or .bash_profile .gitconfig Please move or remove them before you can switch branches. Aborting
This is because the
$HOME
directory might already contain some stock configuration files that would be overwritten by this opteration. To resolve:-
Back up the files (if necessary), or remove them
-
Re-run the
checkout
:cfg checkout
-
-
Set the flag
showUntrackedFiles
tono
for the local repository:This hides files that are not explicitly tracked. This is so that when running
cfg status
and other commands, files that are not of concern will not show up asuntracked
.cfg config --local status.showUntrackedFiles no
cfgs # cfg status
...
cfga .zshrc # cfg add
cfgcm -m "Add an awesome new alias" # cfg commit
...
cfga .p10k.zsh
cfgcm -m "Make an awesome new bash prompt"
cfgps # cfg push