Forked from kevinelliott/1-macOS-10.14-mojave-setup.md
Created
July 23, 2019 08:59
-
-
Save mattweb/817c48dafaafba7112ab6ef8d83acf80 to your computer and use it in GitHub Desktop.
Revisions
-
kevinelliott revised this gist
Jun 19, 2018 . 1 changed file with 2 additions and 0 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,3 +1,5 @@ To support my open-source work, consider [adding me on Patreon](https://www.patreon.com/kevinelliott). # macOS 10.14 Mojave Mostly-Automated Setup An easy to refer to document for *regularly* setting up macOS 10.14 Mojave. -
kevinelliott revised this gist
Jun 8, 2018 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,4 +1,4 @@ # macOS 10.14 Mojave Mostly-Automated Setup An easy to refer to document for *regularly* setting up macOS 10.14 Mojave. -
kevinelliott created this gist
Jun 8, 2018 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,80 @@ # macOS 10.13 High Sierra Mostly-Automated Setup An easy to refer to document for *regularly* setting up macOS 10.14 Mojave. ## Controversy The topic of recipe-based frequent fresh reinstalls of macOS is a controversial issue. Some people are against reinstalling macOS, citing that they have never had an issue with Apple provided upgrade installs. While this can often be true, this depends on a number of things, such as how customized your system settings are and how much cruft has developed since the last fresh install. ## Purpose of Fresh Installs I use this gist to keep track of the important software and steps required to have a functioning system after a semi-annual fresh install. I generally reinstall each computer from scratch every 6 months, and I do not perform upgrades between releases. This keeps the system performing at top speeds, clean of trojans, spyware, and ensures that I maintain good organizational practices for my content and backups. I highly recommend this. By using this document and re-install pattern, I can usually be **up and running within 60 minutes** with a fully-functioning system, so that I minimize downtime of productive work. You are encouraged to fork this and modify it to your heart's content to match your own needs. If you find it useful: feel free to shoot me an email (`[email protected]`), leave a comment, or tell others about it. ## Previous Setup Gists I have a long history of creating these gists... one for every major version of the OS. My previous macOS / OSX setup gists: * macOS 10.13 High Sierra - https://gist.github.com/kevinelliott/39c453d305e40c8f157452aee87fa9d8 * macOS 10.12 Sierra - https://gist.github.com/kevinelliott/7a152c556a83b322e0a8cd2df128235c * Mac OS X 10.11 El Capitan - https://gist.github.com/kevinelliott/e12aa642a8388baf2499 * Mac OS X 10.10 Yosemite - https://gist.github.com/kevinelliott/0726211d17020a6abc1f ## Install Software The software selected is software that is "tried and true" --- software I need after any fresh install. I often install other software not listed here, but is handled in a case-by-case basis. ### Prerequisites #### System Config Files Files from my personal `system-config` repository on GitHub. There are some useful scripts and configs that make this process quick. This contains a `Brewfile`, for example. `git clone https://github.com/kevinelliott/system-config ~/.system-config` #### Homebrew `ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"` #### Xcode Command Line Tools During install of Homebrew, the script will kindly detect that you have not yet installed Xcode Command Line Tools, and pop up a dialog asking if you want to install it. Yes, you do. I defer to install the full Xcode until later since the download takes longer and I want to keep moving forward. For now, just the Xcode Command Line Tools. #### Mac App Store Command Line Tools The `mas` command by `argon` is a handy tool to interact with the App Store without needing to point and click, search, and otherwise need manual intervention. This lets us install the next batch of software very quickly using **Terminal**. Now that Homebrew is installed, it's easy to get **mas**: `brew install mas` Then signin to the **Mac App Store** for the first time (if you are already signed in, then it will tell you): `mas signin [email protected]` ### Install binaries from a Brewfile (apps from App Store using mas, apps from Cask) #### Edit Brewfile for last minute changes You may wish to add or remove a few App Store or Cask items before initiating Homebrew to install all of the applications. If you wish to review these now you may fork the `system-config` repo and edit the Brewfile (`~/.system-config/Brewfile`) now. #### Install apps `brew bundle --file=~/.system-config/Brewfile` This will take some time, especially if you have a slow internet connection and because Xcode is huge. **But it's faster than you having to search the App Store app and click to install for each of these!**  This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,158 @@ tap "caskroom/cask" tap "caskroom/drivers" tap "caskroom/fonts" tap "heroku/brew" tap "homebrew/bundle" tap "homebrew/core" tap "homebrew/fuse" tap "homebrew/science" tap "homebrew/services" tap "luckyframework/lucky" tap "mapbox/cli" tap "pothosware/pothos" tap "rcmdnk/file" cask "osxfuse" brew "ack" brew "readline" brew "asciinema" brew "autoconf" brew "autojump" brew "automake" brew "isl" brew "p7zip" brew "ssdeep" brew "binwalk" brew "colordiff" brew "coreutils" brew "libevent" brew "libyaml" brew "crystal-lang" brew "curl" brew "libgpg-error" brew "libksba" brew "pth" brew "dirmngr" brew "docker", link: false brew "ettercap" brew "ffmpeg", args: ["with-sdl2"] brew "figlet" brew "foremost" brew "fzf" brew "gettext" brew "gist" brew "git" brew "git-flow" brew "git-standup" brew "gnupg" brew "go" brew "gpg-agent" brew "gx" brew "gx-go" brew "htop" brew "hub" brew "icecast" brew "icoutils" brew "libtool" brew "imagemagick" brew "ipfs" brew "memcached" brew "libmemcached" brew "libusb-compat" brew "libxml2" brew "mas" brew "mitmproxy" brew "mosh" brew "mtr" brew "mysql" brew "nmap" brew "nvm" brew "[email protected]" brew "ossp-uuid" brew "pkg-config" brew "postgresql", restart_service: true brew "python" brew "qemu" brew "redis", restart_service: true brew "ripgrep" brew "sdl2" brew "speedtest-cli" brew "sshfs" brew "sslsplit" brew "tcpflow" brew "the_silver_searcher" brew "tmux" brew "utf8proc" brew "wget" brew "wireshark", link: false brew "yarn" brew "heroku/brew/heroku" brew "luckyframework/lucky/lucky" brew "rcmdnk/file/brew-file" cask "adium" cask "adobe-creative-cloud" cask "amazon-drive" cask "amazon-music" cask "android-studio" cask "angry-ip-scanner" cask "anvil" cask "arq" cask "atom" cask "boinc" cask "bonjour-browser" cask "chromium" cask "cocoapods-app" cask "ultimaker-cura" cask "discord" cask "docker" cask "docker-toolbox" cask "dropbox" cask "etcher" cask "filezilla" cask "firefox" cask "geekbench" cask "github" cask "google-chrome" cask "google-earth-pro" cask "grandperspective" cask "hipchat" cask "hyper" cask "itch" cask "iterm2" cask "java" cask "joinme" cask "keybase" cask "kitematic" cask "little-snitch" cask "livereload" cask "lunchy" cask "macdown" cask "metasploit" cask "mono-mdk" cask "ngrok" cask "now" cask "obs" cask "openemu" cask "opera" cask "parallels" cask "postman" cask "psequel" cask "quik" cask "rescuetime" cask "sidestep" cask "sketch" cask "skitch" cask "skype" cask "soundflower" cask "spotify" cask "steam" cask "sublime-text" cask "transmit" cask "visual-studio" cask "visual-studio-code" cask "vlc" cask "wd-firmware-updater" cask "wireshark" cask "caskroom/drivers/3dconnexion" cask "caskroom/drivers/sonos" cask "caskroom/fonts/font-hack-nerd-font" cask "caskroom/fonts/font-menlo-for-powerline" This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,28 @@ mas "Blackmagic Disk Speed Test", id: 425264550 mas "CARROT Weather", id: 993487541 mas "CCMenu", id: 603117688 mas "Compressor", id: 424390742 mas "DeskCover", id: 1257711898 mas "DrCleaner", id: 921458519 mas "Earth 3D", id: 476566660 mas "Final Cut Pro", id: 424389933 mas "Frame.io", id: 992958444 mas "GarageBand", id: 682658836 mas "iMovie", id: 408981434 mas "Keynote", id: 409183694 mas "Logic Pro X", id: 634148309 mas "Magnet", id: 441258766 mas "MainStage 3", id: 634159523 mas "Motion", id: 434290957 mas "Numbers", id: 409203825 mas "Pages", id: 409201541 mas "Parcel", id: 639968404 mas "QuickBooks", id: 640830064 mas "Slack", id: 803453959 mas "Snappy", id: 512617038 mas "Speedtest", id: 1153157709 mas "Trello", id: 1278508951 mas "Unsplash Wallpapers", id: 1284863847 mas "WiFi Explorer", id: 494803304 mas "WiFi Signal", id: 525912054 mas "Xcode", id: 497799835 This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,42 @@ #!/usr/bin/sh ## macOS Preferences # Set a blazingly fast keyboard repeat rate defaults write NSGlobalDomain KeyRepeat -int 1 # Set a shorter Delay until key repeat defaults write NSGlobalDomain InitialKeyRepeat -int 10 # Add a context menu item for showing the Web Inspector in web views defaults write NSGlobalDomain WebKitDeveloperExtras -bool true # Show the ~/Library folder chflags nohidden ~/Library # Store screenshots in subfolder on desktop mkdir ~/Desktop/Screenshots defaults write com.apple.screencapture location ~/Desktop/Screenshots ## Github ssh-keygen -t rsa -C "kevin@`hostname -s`" # Copy public key to Github.com cat ~/.ssh/id_rsa.pub # Test connection ssh -T [email protected] # Git global config git config --global user.name "Kevin Elliott" git config --global user.email "[email protected]" git config --global github.user kevinelliott git config --global github.token your_token_here git config --global core.editor "code -w" git config --global color.ui true # Dropbox work directory mkdir ~/Cloud/Dropbox/work ln -s ~/Cloud/Dropbox/work ~/work This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,15 @@ #!/usr/bin/sh # Install zgen git clone https://github.com/tarjoilija/zgen.git "${HOME}/.zgen" # Setup ~/.zshrc cp ~/.system-config/dotfile-zshrc ~/.zshrc # Run ZSH so that everything intializes zsh # Change user shell to zsh chsh # PENDING This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,69 @@ # load zgen ZGEN_PREZTO_LOAD_DEFAULT=0 source "${HOME}/.zgen/zgen.zsh" # if the init scipt doesn't exist if ! zgen saved; then echo "Creating a zgen save" zgen prezto prompt theme 'sorin' #zgen prezto tmux:auto-start local 'yes' zgen prezto editor key-bindings 'vi' zgen prezto utility:ls color 'yes' zgen prezto '*:*' case-sensitive 'yes' zgen prezto '*:*' color 'yes' zgen prezto zgen prezto git zgen prezto environment zgen prezto terminal zgen prezto editor zgen prezto directory zgen prezto spectrum zgen prezto utility zgen prezto prompt zgen prezto archive zgen prezto ruby zgen prezto rails zgen prezto command-not-found #zgen prezto tmux zgen prezto fasd zgen prezto history-substring-search zgen prezto syntax-highlighting zgen load m42e/prezto_extras zgen load caarlos0/zsh-git-sync zgen load TBSliver/zsh-plugin-colored-man zgen load mafredri/zsh-async zgen load junegunn/fzf shell zgen load zsh-users/zsh-syntax-highlighting zgen load tarruda/zsh-autosuggestions zgen save fi autoload -Uz add-zsh-hook add-zsh-hook precmd newline-after-command function newline-after-command() { print '' } export FZF_COMPLETION_TRIGGER='' bindkey '^T' fzf-completion ################## # Node export NVM_DIR=~/.nvm source $(brew --prefix nvm)/nvm.sh # Ruby export PATH="$PATH:$HOME/.rvm/bin" # Git / Github export GITHUB_USERNAME=kevinelliott alias git-prune="git branch --merged master | grep -v \"\* master\" | grep -v \" master\" | xargs -n 1 git branch -d" This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,15 @@ #!/usr/bin/sh ## Ruby # Setup RVM gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 echo progress-bar > ~/.curlrc curl -sSL https://get.rvm.io | bash # Install Ruby rvm install ruby-2.4.3 # Install powder/pow gem install powder powder install