{"id":15681403,"url":"https://github.com/ericwbailey/dotfiles","last_synced_at":"2025-05-07T08:33:16.765Z","repository":{"id":74965247,"uuid":"53156097","full_name":"ericwbailey/dotfiles","owner":"ericwbailey","description":"🤖 Computer setup","archived":false,"fork":false,"pushed_at":"2025-04-30T16:47:57.000Z","size":2793,"stargazers_count":12,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-30T17:47:46.667Z","etag":null,"topics":["bash","dotfiles","macos"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ericwbailey.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2016-03-04T18:13:31.000Z","updated_at":"2025-04-30T16:48:01.000Z","dependencies_parsed_at":"2023-03-08T19:45:30.344Z","dependency_job_id":"c7ed5439-0652-45f5-9607-ac79ee71ebc0","html_url":"https://github.com/ericwbailey/dotfiles","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ericwbailey%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ericwbailey%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ericwbailey%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ericwbailey%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ericwbailey","download_url":"https://codeload.github.com/ericwbailey/dotfiles/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252843103,"owners_count":21812809,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bash","dotfiles","macos"],"created_at":"2024-10-03T16:53:52.676Z","updated_at":"2025-05-07T08:33:16.738Z","avatar_url":"https://github.com/ericwbailey.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# New System Setup\n\n\n## Table of Contents\n\n1. [First steps](#first-steps)\n    1. [Clone this repo](#clone-this-repo)\n    1. [Disable SIP](#disable-sip)\n    1. [NVM](#nvm)\n    1. [Xcode](#xcode)\n    1. [Updates, syncing, and password/license access](#updates-syncing-and-passwordlicense-access)\n    1. [Browsers](#browsers)\n1. [Installs](#installs)\n    1. [Homebrew](#homebrew)\n    1. [mas](#mas)\n    1. [NPM](#npm)\n    1. [Python](#python)\n    1. [Ruby](#ruby)\n    1. [Non-app Store](#non-app-store)\n1. [System setup](#system-setup)\n    1. [System Preferences](#system-preferences)\n    1. [Dock](#dock)\n    1. [Finder view preferences](#finder-view-preferences)\n    1. [Finder toolbar](#finder-toolbar)\n    1. [Finder sidebar](#finder-sidebar)\n    1. [Notification Center](#notification-center)\n    1. [Set up spaces and wallpapers](#set-up-spaces-and-wallpapers)\n    1. [Menu Bar](#menu-bar)\n    1. [Fonts](#fonts)\n1. [Wrapup](#wrapup)\n1. [References](#references)\n\n\n## First steps\n\n### Clone this repo\n1. Show hidden files: `defaults write com.apple.finder AppleShowAllFiles YES \u0026\u0026 killall -KILL Finder`\n1. `cd ~ \u0026\u0026 git clone https://github.com/ericwbailey/dotfiles.git`\n1. Move files to appropriate locations\n1. [Install Antigen](https://github.com/zsh-users/antigen#installation) to `~/.zsh`\n\n### Disable SIP\n\n1. [Disable SIP](https://ohthehugemanatee.org/blog/2015/10/01/how-i-got-el-capitain-working-with-my-developer-tools/): `csrutil disable`\n1. Fix permissions on `/usr/local`: `sudo chflags norestricted /usr/local \u0026\u0026 sudo chown $(whoami):admin /usr/local \u0026\u0026 sudo chown -R $(whoami):admin /usr/local`\n\n### NVM\n\n1. [Install the latest version](https://github.com/nvm-sh/nvm#installing-and-updating)\n1. Check for local node versions via `nvm ls`\n1. Check for remote versions via `nvm ls-remote`\n1. Install any remote versions as needed\n1. Reinstall any packages installed to non-system versions via `nvm reinstall-packages system`\n\n### Xcode\n\n1. [Install Xcode](https://itunes.apple.com/us/app/xcode/id497799835?ls=1\u0026mt=12) and get all and available Downloads in Preferences\n1. Install Xcode Command Line Tools: `xcode-select --install`\n\n### Updates, syncing, and password/license access\n\n1. Check for system and app updates, reboot if necessary\n1. Sign in to relevant accounts in `System Preferences \u003e Internet Accounts`\n1. Install [Dropbox](https://www.dropbox.com/downloading?src=index) and start syncing\n1. Install [1Password](https://itunes.apple.com/us/app/1password-password-manager/id443987910?mt=12), and [browser extensions](https://agilebits.com/onepassword/extensions)\n\n### Browsers\n\n- [Chrome](https://www.google.com/chrome/)\n    1. Set as default\n    1. Import Humble New Tab Page settings:   `{\"column.2.2\":\"devices\",\"options.weather_units\":\"f\",\"column.0.0\":\"top\",\"column.1.0\":\"closed\",\"options.hide_options\":\"1\",\"options.width\":\"1.321\",\"options.theme\":\"Elegant\",\"column.2.0\":\"1\",\"options.show_apps\":\"0\",\"options.weather_location_id\":\"2367105\",\"options.spacing\":\"1.086\",\"options.h_pos\":\"1.465\",\"options.number_closed\":\"15\",\"options.lock\":\"1\",\"options.weather_location\":\"Boston, MA\",\"options.font_size\":\"18\",\"column.2.1\":\"recent\",\"options.show_2\":\"0\"}`\n- [Chrome Canary](https://www.google.com/chrome/browser/canary.html)\n- [Firefox](https://www.mozilla.org/en-US/firefox/new/)\n    1. Tweak Firefox config\n    1. Sync uBlock settings\n    1. Sync Stylus settings\n- [Firefox Developer Edition](https://www.mozilla.org/en-US/firefox/developer/)\n- [Safari Technology Preview](https://developer.apple.com/safari/technology-preview/)\n- [Edge](https://www.microsoft.com/en-us/edge)\n- [Polypane](https://polypane.app/download/)\n\n\n## Installs\n\n### Homebrew\n\n1. Install [Homebrew](http://brew.sh/): `/bin/bash -c \"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)\"`\n1. Check to make sure everything is working: `brew doctor`\n1. Check which git and set the `$PATH`, [see this article](http://sourabhbajaj.com/mac-setup/Homebrew/README.html)\n1. Install [`.brew`](https://github.com/ericwbailey/dotfiles/blob/main/.brew): `sh .brew`\n1. Rerun `brew doctor`\n\n### mas\n\n1. Install [`.macos`](https://github.com/ericwbailey/dotfiles/blob/main/.macos): `sh .macos`\n\n### NPM\n\n1. `npm install -g\n@ae-studio/px\n@bramus/caniuse-cli\nalfred-dark-mode\nautogit \ncaniuse-cmd\ncpy \nempty-trash-cli \nfkill \nfkill-cli \nget-port \ngit-labelmaker \ngit-open \ngit-user-switch\ngitjk \nglyphhanger \nhttp-server \ninternal-ip \nis-up \nmkdirp \nntl \nopen \npublic-ip \nstacks-cli \ntldr \ntrash-cli \nvtop`\n\n### Python\n\n1. `python3 -m pip install\nBabel\nproselint\nPygments\nsetuptools\nwaybackpack`\n\n### Ruby\n\n1. Install [rbenv](https://github.com/sstephenson/rbenv): `brew install rbenv`\n1. [Install the latest version](https://www.ruby-lang.org/en/downloads/)\n1. Set the latest version globally: `rbenv global x.x.x`\n1. Ensure that `.zshenv` points to the new version of Ruby\n1. `gem install\nbundler\nforeman\nhaml\nmustache\npg\nrails\nrmagick\nthin\nscss_lint\nslim`\n\n### Non-app Store\n\nThese apps can't be installed by Homebrew Cask or mas.\n\n- [CompressX](https://compressx.app/)\n- [Creative Cloud](https://www.adobe.com/creativecloud/desktop-app.html)\n- [Gifmock](https://gifmock.com/)\n- [Hosts.prefpane](https://github.com/specialunderwear/Hosts.prefpane)\n- [JPEG Mini](https://www.jpegmini.com/)\n- [Local](https://localwp.com/)\n- [Network Link Conditioner](http://nshipster.com/network-link-conditioner/)\n- [Screenotate](https://screenotate.com/)\n- [Simple Proxy](https://github.com/dfmcphee/simple-proxy)\n- [Webponize](https://webponize.org)\n- [Zoomhider](https://lowtechguys.com/zoomhider/)\n\nEnsure preferences for **Alfred**, **Hazel**, **iTerm**, and **Mackup** are synced.\n\n\n## System setup\n\n### System Preferences\n1. Review [System Preferences settings](https://github.com/ericwbailey/dotfiles/blob/main/System%20Preferences.md)\n1. Ensure that [color is properly set up for Adobe](http://bjango.com/articles/photoshop/) and [Sketch](https://bjango.com/articles/colourmanagementsettings/)\n1. Install services\n    - [TextFlow](https://github.com/vmdanilov/TextFlow)\n\n### Dock\n\n1. Preview\n1. Music\n1. 1Password\n1. RightFont\n1. Obsidian\n1. Todoist\n1. Spacer: `defaults write com.apple.dock persistent-apps -array-add '{\"tile-type\"=\"spacer-tile\";}' \u0026\u0026 killall Dock`\n1. Zoom\n1. Shift\n1. Discord\n1. Slack\n1. Spacer: `defaults write com.apple.dock persistent-apps -array-add '{\"tile-type\"=\"spacer-tile\";}' \u0026\u0026 killall Dock`\n1. iTerm\n1. VS Code\n1. Tower\n1. Spacer: `defaults write com.apple.dock persistent-apps -array-add '{\"tile-type\"=\"spacer-tile\";}' \u0026\u0026 killall Dock`\n1. Chrome\n1. Firefox\n1. Safari\n1. Edge\n1. Polypane\n1. Spacer: `defaults write com.apple.dock persistent-apps -array-add '{\"tile-type\"=\"spacer-tile\";}' \u0026\u0026 killall Dock`\n1. Pixelmator Pro\n1. Figma\n1. Spacer: `defaults write com.apple.dock persistent-apps -array-add '{\"tile-type\"=\"spacer-tile\";}' \u0026\u0026 killall Dock`\n\n### Desktop view preferences\n\n- Show Hard Drives in Finder preferences\n- Stack by none\n- Sort by Snap to Grid\n- Icon size: 48x48\n- Grid spacing: Largest\n- Text size: 12\n- Label position: Right\n- ☑️ Show item info\n- ☑️ Show icon position\n\n\n### Finder view preferences\n\nBe sure to set from system root level so preferences propagate up to all user directories).\n\n- Always open in column view\n- Browse in column view\n- Arrange by Kind\n- Sort by Kind\n    - Text Size: 12\n    - Show icons\n    - Show icon preview\n    - Show preview column\n\n### Finder toolbar\n\n1. Back/Forward\n1. Path\n1. Connect\n1. Share\n1. Search\n\n### Finder sidebar\n1. Favorites\n    1. Desktop\n    1. home\n    1. AirDrop\n    1. Applications\n    1. Documents\n    1. Sites\n    1. Dropbox\n1. Devices\n1. Shared\n\n\n### Set up spaces and wallpapers\n\n1. Set up spaces\n1. Set wallpapers\n\n\n### Menu Bar\n\n#### Shown\n\n1. MeetingBar\n1. Mail Notifr\n1. Dropzone\n1. Dropbox\n1. Dato\n1. Bartender (left to right)\n1. Battery\n1. Notification Center\n\n#### Hidden\n \n1. Rectangle\n1. 1Password\n1. Stay\n1. Creative Cloud\n1. BetterTouchTool\n1. Quitter\n1. Bluetooth\n1. Backblaze\n\n\n## Wrapup\n\n1. Set general operating system preferences: `sh .macos`\n1. Reboot and double check `System Preferences \u003e Users \u0026 Groups \u003e Login Items` and set a login picture\n1. Reboot, install [Prey](https://www.preyproject.com/), then double-check it and Find My Mac's Location Services access\n1. [Re-enable SIP](https://ohthehugemanatee.org/blog/2015/10/01/how-i-got-el-capitain-working-with-my-developer-tools/): `csrutil enable`\n1. Set SlowQuitApps quit time: `defaults write com.dteoh.SlowQuitApps delay -int 250`\n1. Load BetterTouchTool preferences\n1. Sync VS Code settings\n1. Log laptop serial number in 1Password\n1. Delete setup files (`README.md`, `.osx`, etc.)\n1. Turn `LoginLaunch.applescript` into an app and grant acccess permissions\n1. Store window sizes/positions in Stay\n1. Add Dropzone shortcuts\n1. Sync CiderTV with Apple TV\n1. Migrate FontExplorer X sets and lists\n1. Use [TouchID for `sudo`](https://davidwalsh.name/touch-sudo)\n1. Set up [Caps Lock as Insert for Windows](https://www.paciellogroup.com/blog/2013/08/insert-key-usage-in-windows-on-a-mac/)\n1. Grant [cron jobs](https://www.bejarano.io/fixing-cron-jobs-in-mojave/) full disk access\n1. Set up [GitHub personal access tokens](https://github.com/settings/tokens)\n    1. Laptop [`.gitconfig`](https://github.com/ericwbailey/dotfiles/blob/main/.gitconfig#L9)\n    1. Refined GitHub, Chrome\n    1. Refined GitHub, Firefox\n    1. Tower\n\n\n## References\n\n- http://sourabhbajaj.com/mac-setup/\n- https://github.com/mathiasbynens/dotfiles\n- http://lapwinglabs.com/blog/hacker-guide-to-setting-up-your-mac\n- http://jesseatkinson.org/writing/2013/9/8/setting-up-a-new-mac\n- https://github.com/herrbischoff/awesome-osx-command-line\n- https://blog.bejarano.io/hardening-macos.html\n\n🔒 Requires app-specific password\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fericwbailey%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fericwbailey%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fericwbailey%2Fdotfiles/lists"}