-
Notifications
You must be signed in to change notification settings - Fork 48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
My 2022 New Mac Setup #420
Comments
Just loved the posts. I don't own mac, but in future YES. Saving this article. |
Hi, nice setup and nice tools ! Do you have some automation tools to rebuild easily and quickly like ansible or a bash script ? |
hey @rbourbotte no i dont - since i only do this when i get a new mac (which isnt that often) i want to be able to go through each tech choice every time and re evaluate if i want a new thing |
Very useful article. Found NoTunes which I needed for years |
I've messed around with zsh for a while now and I've arrived at two things: chezmoi for syncing my dotfiles and install scripts, and zinit for my profile. It's confusing, but worth it. For example, just use (if you have zinit and it's annex stuff initialized). zinit ice as"null" lucid from"github-rel" \
mv"zoxide* -> zoxide" \
extract'' \
lucid \
sbin'zoxide'
zinit load ajeetdsouza/zoxide
if command -v zoxide &>/dev/null; then
eval "$(zoxide init zsh)" &>/dev/null || warn
# zinit snippet https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/zoxide.plugin.zsh || warn
fi Zoxide now replaces "z" and is a rust based quick change folder alternative. Then I have others like: # install "better" ls
zinit ice wait"2" lucid from"gh-r" as"program" mv"exa* -> exa" extract'' ogham/exa
zinit wait lucid light-mode for atpull'zinit creinstall -q completions/zsh/_exa' ogham/exa
# super great inline history search, ctrl+r on steroids.
zstyle ":history-search-multi-word" page-size "11"
zinit ice wait"1" lucid
zinit load zdharma-continuum/history-search-multi-word
zinit snippet OMZP::gh
zinit snippet OMZP::golang
zinit snippet OMZP::helm
# ... etc This downloads the correct binary for your system, and shims it automatically. Note the benefit of doing this with chezmoi is my dotfiles are now a single command to sync on windows (wsl2), docker devcontainers, codespaces, and my mac. It works everywhere and I just run The fact it can match and install the right github release automatically feels magical to be honest. |
this looks cool! unfortunately i dont setup dotfiles that often that i feel like i need it right now but i'll def refer to this when I need to sync. |
Jun 2022: https://shottr.cc/ just launched on HN and I am trying it out. |
Fig just released a dotfiles tool for Early Access as well. |
Adding my own implementation as well as a resource if it's useful: https://github.com/unkrich/base-osx |
added @cpojer's new articles: https://twitter.com/cpojer/status/1569797978881400832 |
I use Flameshot on linux and mac. It's been great. Hope you like it. https://flameshot.org/docs/installation/installation-osx/ |
title: My 2022 New Mac Setup
description: I set up a new Mac for work today. Here's everything I use on a Mac for fullstack web development.
tags: mac, tech
published: true
slug: new-mac-setup-2022
category: note
canonical_url: https://www.swyx.io/new-mac-setup-2022/
I set up my new Macbook Pro (16 inch, 2021 M1 Max 32 GB RAM 1TB HD) today. Here's everything I use on a Mac.
Scroll all the way to the bottom for lists and other Mac setup tools from friends!
Immediate first steps
Things that take a while to install
Get these going first so they can run in the background
Install ZSH -
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
If M1 mac:
/usr/sbin/softwareupdate --install-rosetta --agree-to-license
to install Rosetta2Install Homebrew -
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
and theni have a bunch more stuff in
brew list
but i'm not sure what i use actively. You can mass install these - dump them in apackages.txt
and thenbrew install $(cat packages.txt)
arch -x86_64 brew install YOUR_PACKAGE
sh <(curl -L https://nixos.org/nix/install) --daemon
Either of these will prompt you to install Apple Command Line Tools - takes 15-25 minutes to download the damn thing so do this first. Don't run them in parallel.
OS/Browser Settings
My full list of extensions I use are here:
Setup Terminal
git
will prompt you to install git - takes 15 minutes)git config --global init.defaultBranch main
git config --global user.name "swyx"
git config --global user.email shawnthe1@gmail.com
diff-so-fancy
git config --global core.pager "diff-so-fancy | less --tabs=4 -RFX"
- makes for much nicer git diffdif() { git diff --color --no-index "$1" "$2" | diff-so-fancy; }
or with VSCodecode --diff file1.js file2.js
./oh-my-zsh/themes/agnoster
theme from dotfilesSee previous year for my Hyper terminal recommendations.
Set up apps/environments
You should have already installed a bunch of stuff with Homebrew as per above. Below I will list other stuff that you may wish to use:
brew install github/gh/gh
gh auth login
arch -x86_64 zsh
lets you avoid weird dotenv errors but it didnt work for me (just running npm i on swyxkit)fnm install 16
npm login
npm config set loglevel="warn"
sudo npm install netlify-cli -g
thennetlify login
npm i -g sign-bunny fortune-node parrotsay
fun little cli utilities to usenpm i -g undollar
for removing $npm install -g npm-check-updates
for updating depssudo npm install -g trash-cli
to add atrash
command to so you dont permanently delete filesbrew install yarn --ignore-dependencies
- yarn notebrew install z
- doesnt work out of the box exactly - see my issue on the rupa/z repo - homebrew changed the default install path of the z.sh script so just make sure you are pointing to the right new path -/opt/homebrew/etc/profile.d/z.sh
pip3 install --user powerline-status
git clone <https://github.com/powerline/fonts> && cd fonts && ./install.sh
Notes on other stuff we already brew installed
Setup Apps
I hate Docker Desktop so i am using "docker" without it
sudo curl -L https://github.com/docker/compose/releases/download/v2.5.1/docker-compose-darwin-aarch64 -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
brew install --cask notunes
- so that you dont launch itunes/apple musicdownload Audacity - and install ffmpeg for audacity - the instructions are intentionally opaque - just go to https://lame.buanzo.org/#lameosx64bitdl and download and run the pkg - Audacity will detect it from there
Emojis: I used to use https://matthewpalmer.net/rocket/ but now I just use the naive Mac emoji picker (hit Fn key)
Privacy unfucker: Pure Paste from Sindre Sorhus
Password Manager: I use 1password for company and lastpass for personal
Window Manager: https://rectangleapp.com/
Screenshots: I like https://cleanshot.com/ except that it has limited activations which is annoying for someone with 3 devices - so https://zapier.com/zappy is less annoying but has less good annotation capability. Browser extension - Lightshot. Jun 2022: https://shottr.cc/ just launched on HN and I am trying it out.
Superhuman for Mac and https://mail.superhuman.com
Clipboard Manager: I used to use https://clipy-app.com/ but it no longer stores images on m1 mac's. So trying out one of the Clipy forks or
(trying it out) Cron Calendar app https://cron.com/download/macos
App Quitter: https://swiftquit.com/ (Close Mac Applications Automatically When Their Windows Close)
Loom: https://www.loom.com/desktop
Zoom: https://zoom.us/download
Caffeine (Keep Mac awake for talks): https://intelliscapesolutions.com/apps/caffeine
NoTunes - disable itunes/apple music
Stuff I no longer use often but will bring in when i have the need
- Video capture: https://getkap.co/
- Screen recording feature tours: https://www.screen.studio/
- Image editing: to try https://www.pixelmator.com/pro/
- Dual Screen: https://www.duetdisplay.com/
- Gifs: Licecap
- OBS: https://obsproject.com/
- Transcribing: https://www.descript.com/download/mac
- SkyFonts: [https://www.fonts.com/web-fonts/google]
Chat: Slack and Discord
Note taking:
- Obsidian and set it up as mentioned in my post on Obsidian as a Second Brain
- Microsoft Todo: https://apps.apple.com/app/apple-store/id1274495053?mt=8
- SimpleNote: https://apps.apple.com/us/app/simplenote/id692867256?ls=1&mt=12
- Notion: https://www.notion.so/desktop
- https://chrome.google.com/webstore/detail/notion-web-clipper/knheggckgoiihginacbkhaalnibhilkk?hl=en
Stretchly: https://hovancik.net/stretchly/
Replay: download
App Search/Utils: https://www.alfredapp.com/
Editor: Download VS Code (I used to use Insiders but the popups are super annoying). use Settings Sync to sync across machines
"editor.bracketPairColorization.enabled": true
Screenflow 9 download
Other good "new laptop setup" lists:
The text was updated successfully, but these errors were encountered: