i recently got a new macbook pro. i wanted a fresh start instead of transferring all the things from the old macbook air. so set up everything manually instead of going through migration assistant or time machine backups

things i did in the old laptop

  • github repos
    • made sure to commit and push changes in all the repositories to github
    • noted down which projects had the .env files with the keys (since those are not pushed)
  • dia browser as of this point did not have import from a different browser option nor they are syncing the data to the account.
    • i chose to say goodbye to the bookmarks and history
    • i had to manually copy a few passwords to my other passwords app.
  • copied documents, downloads, and screenshots from the old laptop onto an external ssd
    • used daisydisk to look at all the things and then figured out what to copy over
  • made sure lightroom changes are all synced to the cloud

new mac setup

immediate first steps in the new laptop

  • new setup, i was intentional with my choices as i wanted a clean and baggage-free setup
  • icloud sync for the documents and desktop folders
    • i did not do this in my previous laptop but seems like a useful feature
    • earlier, had to manually move files into icloud drive to see them in phone and ipad
  • set up dia browser
    • dia browser doesn’t have an auto-import for extensions, so manually re-installed necessary extensions.
  • log into
    • important websites i use like github, gmail, twitter, readwise
    • used google meet and gave the permissions for screen sharing
  • obsidian setup
    • installed obsidian, imported the vault from obsidian sync.
    • manually reinstalled a few obsidian extensions i was using
  • files
    • copied the files from ssd and put them all in one folder and called it baggage. i gotta clean these later

development environment setup

  • installed homebrew fresh
    • skipped the option to import old packages to avoid clutter.
  • setup dotfiles, including ssh keys and git configs, by copying from the old mac.
  • installed github desktop and github cli; re-added ssh key to github.
  • cloned important repositories into a dedicated code folder in home directory.
  • backend setup
    • installed only uv for now (uv is so much better and made dealing with python ecosystem a breeze)
  • frontend setup
    • set up fnm for node version management and installed bun
  • shell setup
    • installed oh-my-zsh for shell improvements, plugins, and theming.
  • installed cursor
    • copied environment variables from old mac with copy paste
    • ran bun install and bun run dev, everything just worked.
    • repeated similar steps with uv for backend stuff.

essential apps

  • adobe lightroom: photography
  • bear: note taking
  • aqua voice: speech-to-text
  • daisy disk: good for freeing space (this came in clutch many times for my previous 256gb macbook air)
  • display pilot 2: to manage my benq monitor settings
  • iina: video player
  • send to kindle
  • maccy: clipboard history
  • phoenix slides: fast image viewer
  • rectangle: window management (i like the ctrl + opt + cmd + shortcut for quick monitor switching)
  • scroll reverser
  • remnote: spaced repetition
  • things 3: task management
  • chatgpt desktop
  • zoom

overall, the manual setup took some effort, but the fresh start feels good.

things yet to try

  • i’ve installed ollama, i want to see what models i can run locally