Skip to content

Instantly share code, notes, and snippets.

@float-mode
Forked from esturcke/reinstall-osx.md
Created April 22, 2016 07:47
Show Gist options
  • Save float-mode/f29194d3489fc367a254ed75763718a6 to your computer and use it in GitHub Desktop.
Save float-mode/f29194d3489fc367a254ed75763718a6 to your computer and use it in GitHub Desktop.
Reinstalling OS X

Reinstalling OS X

Before reinstalling

  • Make full backup
    • Reboot and hold down ⌘R
    • Use disk utility to create bootable image
  • Make second backup of data including
    • /Library/Fonts
    • ~/Documents
    • ~/Photos
    • ~/Library/Keychain
  • Unregister/deactivate/deauthorize
    • Everything Adobe
    • Resolume Arena
    • iTunes
    • iBooks
  • Create a bootable USB install image

Reinstall OS

  • Boot from USB (hold down option while booting) or boot into recovery mode (⌘R)

Install App Store Software

  • Airmail 2.0
  • Pixelmator
  • Paprika Recipe Manager
  • Reeder 2
  • FoldingText
  • Logic Pro X
  • AmpKit
  • VOX
  • Gemini
  • Kalidascope
  • Keynote
  • Numbers
  • Pages
  • Icon Slate
  • DaisyDisk
  • PDF Squeezer
  • Marked
  • Day One
  • Xcode
  • Fantasitcal
  • LimeChat
  • ForkLift
  • MindNode Pro
  • Byword
  • Evernote
  • Kindle

Install Downloadable Applications

Install Homebrew

sudo xcodebuild -license
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew doctor

Install core packages

brew install git --with-pcre --with-blk-sha1 --with-brewed-curl --with-brewed-openssl
brew install macvim --with-cscope --with-lua --HEAD --override-system-vim --custom-icons
brew install zsh zsh-completions

Setup zsh with Prezto

zsh
git clone --recursive git://github.com/esturcke/prezto.git "${ZDOTDIR:-$HOME}/.zprezto"
setopt EXTENDED_GLOB
for rcfile in "${ZDOTDIR:-$HOME}"/.zprezto/runcoms/^README.md(.N); do
  ln -s "$rcfile" "${ZDOTDIR:-$HOME}/.${rcfile:t}"
done
chsh -s /bin/zsh
git clone [email protected]:esturcke/iterm-preferences.git ~/Development/iterm-preferences

Then, Preferences > General > Preferences > Load preferences from a custom folder or URL

Setup vim

cd ~/Development/
git clone --recursive [email protected]:esturcke/dot-vim.git
cd dot-vim
./setup

Install a bunch of programming language packages

brew install elixir ghc go --with-cc-all ruby --with-doc rust scala --with-docs --with-src sbt typesafe-activator 

Install other useful programs

brew install ctags elixir git youtube-dl zsh zsh-completions
brew install wireshark --devel

Add to .zshrc

unalias run-help
autoload run-help
HELPDIR=/usr/local/share/zsh/help
fpath=(/usr/local/share/zsh-completions $fpath)

Install meld

brew install Caskroom/cask/xquartz
brew install homebrew/x11/meld

Install other useful utilities

brew install mobile-shell multimarkdown nmap pngcrush pstree the_silver_searcher tree wget

Install Adobe CC & CS6

Additionally:

You may also need to force rebuild `zcompdump`:

  rm -f ~/.zcompdump; compinit

Additionally, if you receive "zsh compinit: insecure directories" warnings when attempting
to load these completions, you may need to run this:

  chmod go-w /usr/local/share
  exiftags exiftool exiv2 faac fdk-aac fdupes ffmpeg ffmpeg2theora fontconfig  frei0r fribidi fswatch gawk gcc gd gdbm gdk-pixbuf geoip gettext giter8 glib gmp gnuplot gnutls go gobject-introspection graphicsmagick grc groff gtksourceview  hub hyperestraier icu4c imagemagick intltool iperf isl jasper jpeg lame less lesstif libass libevent libffi libfreenect libgcrypt libglade libgpg-error libmpc libogg libpng libtasn1 libtiff libtool libusb libvo-aacenc libvorbis libvpx libxml2 little-cms2 lua  markdown  memtester mercurial  mongodb movgrab mpfr mtr  nettle nginx ninja  node ntfs-3g opencore-amr openjpeg openssl opus orc osxfuse p11-kit pcre pixman pkg-config   protobuf  qdbm qt qtfaststart r ragel rarian rbenv readline rsync rtmpdump ruby-build rust sbt scala schroedinger scons sdl sdl_image sdl_mixer speex sqlite texi2html  theora tor tuntap unixodbc unrar vpnc webkit2png webp  wxmac x264 xpdf xvid xz yasm

(See https://gist.github.com/esturcke/c3b41a6bf7d783bb7ec5 and http://brew.sh/)

Install Perlbrew & cpanm

\curl -L http://install.perlbrew.pl | bash

Add source ~/perl5/perlbrew/etc/bashrc to .bashrc

perlbrew install stable
perlbrew switch 5.20.1
curl -L https://cpanmin.us | perl - App::cpanminus

Set Up NFS Automount

echo '/nfs auto_guppy' | sudo tee -a /etc/auto_master
echo 'guppy guppy:/nfs/data' | sudo tee /etc/auto_guppy
sudo automount -vc

Make Caps Lock Useful

  • Download and install Seil and Karabiner

  • Open Seil and set caps lock to keycode 80

  • Open Karabiner, go to Misc & Uninstall tab and open private.xml

    <?xml version="1.0"?>
    <root>
          	<item>
          		<name>F19 to F19</name>
    		<appendix>(F19 to Hyper (ctrl+shift+cmd+opt) + F19 Only, send escape)</appendix>
    		<identifier>private.f192f19_escape</identifier>
    		<autogen>
    			--KeyOverlaidModifier--
    			KeyCode::F19,
    			KeyCode::COMMAND_L,
    			ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L,
    			KeyCode::ESCAPE
    		</autogen>
    	</item>
    </root>
    
  • Go to Change Key tab and reload XML

  • Check Hyper Key (F19)

  • Go to Preferences > Keyboard > Modifier Keys... and set Caps Lock to no action

See http://brettterpstra.com/ for original instructions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment