MyElectricSheep / dotfiles

There is no place like ~/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Ben's Dotfiles

  • This is my personal dotfiles setup, and my notes regarding their (re)installation

Steps to bootstrap a new Mac

  1. Install Apple's Command Line Tools, which are prerequisites for Git and Homebrew.
xcode-select --install
  1. Clone repo into new hidden directory.
# Use SSH (if set up)...
git clone git@github.com:MyElectricSheep/dotfiles.git ~/.dotfiles

# ...or use HTTPS and switch remotes later.
git clone https://github.com/MyElectricSheep/dotfiles.git ~/.dotfiles
  1. Create symlinks in the Home directory to the real files in the repo.
# There are better and less manual ways to do this;
# investigate install scripts and bootstrapping tools.

ln -s ~/.dotfiles/.zshrc ~/.zshrc
ln -s ~/.dotfiles/.gitconfig ~/.gitconfig
  1. Install Homebrew, followed by the software listed in the Brewfile.
# These could also be in an install script.

# Install Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# Then pass in the Brewfile location...
brew bundle --file ~/.dotfiles/Brewfile

# ...or move to the directory first.
cd ~/.dotfiles && brew bundle

TODO List

  • Learn how to use defaults to record and restore System Preferences and other macOS configurations.
  • Organize these growing steps into multiple script files.
  • Automate symlinking and run script files with a bootstrapping tool like Dotbot.
  • Revisit the list in .zshrc to customize the shell.
  • Make a checklist of steps to decommission your computer before wiping your hard drive.
  • Create a bootable USB installer for macOS.
  • Integrate other cloud services into your Dotfiles process (Dropbox, Google Drive, etc.).
  • Find inspiration and examples in other Dotfiles repositories at dotfiles.github.io.

Misc

https://www.youtube.com/watch?v=r_MpUP6aKiQ

  • Create a symbolic link breakdown:
ln -s ~/.dotfiles/.zshrc ~/.zshrc

# ln = link command
# -s = symbolic link
# <path1> = path to where the "real" dotfile is located
# <path2> = path to where the symlink will be created

About

There is no place like ~/


Languages

Language:Shell 73.6%Language:Ruby 26.4%