Skip to content

clemenspeters/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

.dotfiles

Small macOS setup focused on shell, Git, iTerm2, VS Code, and lightweight CLI tools.

New Mac setup

Clone repo into a hidden directory:

git clone https://github.com/clemenspeters/dotfiles.git ~/.dotfiles

Install Homebrew if needed:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
eval "$(/opt/homebrew/bin/brew shellenv)"
brew doctor

Install the curated software list:

brew bundle --file ~/.dotfiles/Brewfile

If Docker Desktop fails while linking binaries into /usr/local, create the expected directories and rerun the bundle:

sudo mkdir -p /usr/local/bin /usr/local/cli-plugins
sudo chown -R "$USER":admin /usr/local/bin /usr/local/cli-plugins
brew bundle --file ~/.dotfiles/Brewfile

If docker compose is not found after installing Docker Desktop:

mkdir -p ~/.docker/cli-plugins
ln -sf /Applications/Docker.app/Contents/Resources/cli-plugins/docker-compose ~/.docker/cli-plugins/docker-compose

Install Oh My Zsh into this dotfiles directory:

git clone https://github.com/ohmyzsh/ohmyzsh.git ~/.dotfiles/.oh-my-zsh

Create the nvm directory expected by Homebrew's nvm package:

mkdir -p ~/.nvm

Create symlinks in the Home directory to the real files in the repo:

ln -s ~/.dotfiles/.zshrc ~/.zshrc
ln -s ~/.dotfiles/.zshenv ~/.zshenv
ln -s ~/.dotfiles/.gitconfig ~/.gitconfig

You can use .zshenv for values you don't want to commit since it's changes are ignored (using git update-index --skip-worktree .zshenv).
If you want to commit changes to that file use git update-index --no-skip-worktree .zshenv and to see all skipped files use git ls-files -v . | grep ^S.

Optional VS Code settings

Review the files in .vscode/ before linking them. If they still match your current preferences:

ln -f -s ~/.dotfiles/.vscode/settings.json ~/Library/Application\ Support/Code/User/settings.json
ln -f -s ~/.dotfiles/.vscode/keybindings.json ~/Library/Application\ Support/Code/User/keybindings.json

Homebrew maintenance

To recreate the Brewfile from the current machine:

brew bundle dump --describe

To update your Brewfile run:

brew bundle dump --describe --force

macOS Finder settings

Show all file extensions in Finder:

defaults write NSGlobalDomain AppleShowAllExtensions -bool true

Show hidden files and folders in Finder:

defaults write com.apple.Finder AppleShowAllFiles true && \
killall Finder

GitHub setup

Generate an SSH keypair if you do not already have one:

ssh-keygen -t ed25519 -C "13015002+clemenspeters@users.noreply.github.com"

Log in to GitHub CLI:

gh auth login

Optional GCP setup

Only run this after installing google-cloud-sdk:

gcloud auth login

Authenticate Docker for Google Container Registry. See: https://cloud.google.com/container-registry/docs/advanced-authentication#gcloud-helper

gcloud auth configure-docker

Learn more

https://www.youtube.com/watch?v=r_MpUP6aKiQ&t=227s

Credits

https://github.com/eieioxyz/Beyond-Dotfiles-in-100-Seconds

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors