# mk-tool-mac - [mk-resource-macsetup-20230321](/DBkNG0YVRj6oHcPGFB7ojA) - [cc-macsetup-steps](/w7qfRcUMRMqzRO4rRnKx3g) ## reference --- tags: mk, resources --- # mk-resource-mac-setup - get through mac os screens, then - connect to Harvard Secure - open app store and install everything - install homebrew - don't forget to then enter the two lines near the end of the installers logs on newer Macs. They will look something like this: ``` echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/YOUR_USER_ACCOUNT_NAME/.zprofile eval "$(/opt/homebrew/bin/brew shellenv)" ``` - sign in to [Adobe](https://www.adobe.com) or [Creative Cloud](https://creativecloud.adobe.com/cc/), download and install (first Photoshop, then everything else through the Creative Cloud App) - Photoshop - Illustrator - InDesign - XD - Premiere Pro - After Effects - Lightroom Classic - Dimension - Character Animator - Audition - Substance 3D Painter - Substance 3D Sampler - Substance 3D Designer - Substance 3D Stager - UXP Developer Tools? - once homebrew is installed - `brew install git` - `brew install visual-studio-code` - `brew install node` - log in to github as learninglab-studio - git clone `the-tools-21-22` or similar ``` cd the-tools-21-22 code . ``` - find your way to the mac setup scripts and run their elements - `mainbrew.sh` has lines for most of the typical packages you'd install with homebrew, you can type them manually or tweak the script to your liking and then run it - ## to-do ### did this time - create storage drive - commented out mysql - ran some fonts only --fix this - install unity version - install unreal version - install maxon - then c4d - redshift - download unity templates - download unreal projects and content - houdini - obs - check in to obs-ndi and virtualcam? - in blender - add-ons => node wrangler on - preferences => navigation => orbit around selection - render path - asset library path - in unreal - install engine - create new project with assets in appropriate storage destination - in unity - install version - install templates ### preferences not yet set - power - sidebar in finder - screenshots not ideal just yet - ### resources https://support.apple.com/guide/terminal/edit-property-lists-apda49a1bb2-577e-4721-8f25-ffc0836f6997/mac ``` defaults write com.apple.Finder FXPreferredViewStyle xxxx ``` [good intro article on setting mac preferences](https://pawelgrzybek.com/change-macos-user-preferences-via-command-line/) that we should send people to if they haven't done this before. [an ok article on defaults](https://www.shell-tips.com/mac/defaults/#gsc.tab=0) as backup [Apple's own doc on changing plist from terminal](https://support.apple.com/guide/terminal/edit-property-lists-apda49a1bb2-577e-4721-8f25-ffc0836f6997/mac) [location of plist for sidebars](https://discussions.apple.com/thread/251606267)---maybe one of those things that comes to exist after you do something? be sure to check before doing something! [stack exchange comments that could be useful](https://apple.stackexchange.com/questions/392088/add-finder-sidebar-section-via-terminal) # Mac Setup Scripts [link to current scripts](https://github.com/learninglab-studio/the-tools-21-22/tree/main/tools/scripts/macsetup). Let's cut and paste some lines below? ### Utils install [Homebrew](https://brew.sh/). ``` /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" ``` Then, on M1 macs, set in path by copying the two lines sent back which will have the structure (but may not be identical to) the following: ``` echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/ll-studio/.zprofile eval "$(/opt/homebrew/bin/brew shellenv)" ``` then you need git, node and a code editor ``` brew install git brew install node brew install visual-studio-code ``` Or if you prefer atom, `brew install atom`--but we're moving to vscode this year. Once you have node installed you can set up your development folder and clone this repo: ``` cd ~ mkdir Development cd Development git clone https://github.com/learninglab-studio/the-tools-21-22.git cd the-tools-21-22 npm install ``` Then you can add the scripts in the-tools-21-22 to your path (and fix your prompt) with these lines that add to your `.zshrc` file: ``` ZSHRC_PATH=~/.zshrc cd ~/Development/the-tools-21-22/tools/scripts/ex SCRIPTS_DIR=$(pwd) echo "export PATH=/usr/local/bin:${SCRIPTS_DIR}:\$PATH" >> $ZSHRC_PATH echo "PROMPT='%2~ %# '" >> $ZSHRC_PATH ``` open up an additional window and run additional `npm install` commands while your `brew install` commands are also running. The next brew installs are ``` brew install ffmpeg brew install awscli brew install youtube-dl brew install mysql brew install google-chrome brew install firefox brew install vlc brew install blender brew install adobe-creative-cloud brew install epic-games brew install unity-hub brew install clipgrab brew tap heroku/brew && brew install heroku brew install imagemagick brew install exiftool brew install spotify brew install synologyassistant brew install ableton-live-lite brew install cycling74-max ``` The next npm installs are ``` npm install -g nodemon # npm install -g express-generator npm install -g m2s npm install -g gif-machine npm install -g ll-transcode-machine npm install -g simple-rename-machine npm install -g chalk npm install -g figlet npm install -g gatsby-cli ``` ### App Store - Davinci Resolve - FCPX - Motion - Compressor - Glyphs 2 - Marked 2 - FoldingText - BetterSnapTool - Slack - Logic Pro X - Xcode - DaisyDisk - Screenflow - GarageBand - Numbers - Keynote - Pages - MS Word - MS PowerPoint - MS Excel ### Adobe from installer that homebrew installed: * Photoshop * Lightroom Classic * Lightroom * After Effects * Audition * InDesign * Illustrator * Xd * Premiere Pro * Animate * Character Animator * Substance 3D Painter * Substance 3D Designer * Substance 3D Sampler log in with ID as appropriate ### Misc web-based * C4D and Maxon One * Houdini * Unreal (from installer brew installed) * Unity (from installer brew installed) * Ableton? * Printer drivers * Blackmagic ATEM software (both apps) * Blackmagic Desktop Video * Obsidian for macos * ### Peripherals - printer (don't put IPs in the repo) ### Fonts - let's just put a few of the most commonly used here, but it would be nice to store all as an array - remember the one or two packages that need to be installed first for some fonts - here's an old list of [all the fonts](https://github.com/learninglab-studio/the-tools-21-22/blob/main/tools/scripts/macsetup/04a_lots_of_fonts.sh), but things change quickly in this zone. We should keep it small so we can keep it updated :) ### Atom Packages - ``` #!/bin/bash # uncomment if Atom not installed: # brew cask install atom echo "starting Atom package installs" apm install document-outline # apm install atom-html-preview # apm install browser-plus # apm install markdown-preview-plus # apm install markdown-folding apm install wordcount apm install teletype apm install file-icons apm install atom-beautify apm install minimap apm install atom-clock apm install autoclose-html apm install language-ejs apm install language-markdown apm install react apm install todo-show apm install pigments apm install linter-eslint apm install project-manager apm install highlight-selected apm install expose apm install compare-files apm install color-picker # apm install prettier-atom # apm install atom-easy-jsdoc apm install split-diff apm install minimap-split-diff echo "all done" ``` ### Scriptable Preferences - set all notifications from alert to banner? - disable certain notifications? ``` # open FCPX to make sure the later prefs work open -a "Final Cut Pro.app" # power management for desktops sudo pmset displaysleep 180 sudo systemsetup -setcomputersleep Never # sudo pmset sleep 180 # sudo systemsetup -setcomputersleep 60 # Turn Off System Sleep Completely # show all file extensions defaults write NSGlobalDomain AppleShowAllExtensions -bool true # show hidden files defaults write com.apple.finder AppleShowAllFiles -bool YES && killall Finder # show scroll bars only on scroll defaults write NSGlobalDomain AppleShowScrollBars WhenScrolling # save screenshots to desktop mkdir ~/Desktop/screenshots defaults write com.apple.screencapture location ~/Desktop/Screenshots # make library visible chflags nohidden ~/Library/ # Automatically hide and show the Dock, speed animation defaults write com.apple.dock autohide -bool true killall Dock # show only active apps in dock defaults write com.apple.dock static-only -bool true killall Dock # silent on startup sudo nvram SystemAudioVolume=%00 # Enable tap to click (Trackpad) for this user and for the login screen defaults write com.apple.driver.AppleBluetoothMultitouch.trackpad Clicking -bool true defaults write com.apple.AppleMultitouchTrackpad Clicking -bool true defaults -currentHost write NSGlobalDomain com.apple.mouse.tapBehavior -int 1 defaults write NSGlobalDomain com.apple.mouse.tapBehavior -int 1 # Enable 3-finger drag. (Moving with 3 fingers in any window "chrome" moves the window.) defaults write com.apple.driver.AppleBluetoothMultitouch.trackpad TrackpadThreeFingerDrag -bool true defaults write com.apple.AppleMultitouchTrackpad TrackpadThreeFingerDrag -bool true # Expand save panel by default defaults write NSGlobalDomain NSNavPanelExpandedStateForSaveMode -bool true # Expand print panel by default defaults write NSGlobalDomain PMPrintingExpandedStateForPrint -bool true # Automatically quit printer app once the print jobs complete # doesn't seem to be working # defaults write com.apple.print.PrintingPrefs “Quit When Finished” -bool true # Check for software updates daily, not just once per week defaults write com.apple.SoftwareUpdate ScheduleFrequency -int 1 # Always open everything in Finder's column view. defaults write com.apple.Finder FXPreferredViewStyle clmv # Show icons for hard drives, servers, and removable media on the desktop defaults write com.apple.finder ShowExternalHardDrivesOnDesktop -bool true defaults write com.apple.finder ShowHardDrivesOnDesktop -bool true defaults write com.apple.finder ShowMountedServersOnDesktop -bool true defaults write com.apple.finder ShowRemovableMediaOnDesktop -bool true # Automatically open a new Finder window when a volume is mounted defaults write com.apple.frameworks.diskimages auto-open-ro-root -bool true defaults write com.apple.frameworks.diskimages auto-open-rw-root -bool true defaults write com.apple.finder OpenWindowForNewRemovableDisk -bool true # Show status bar in Finder defaults write com.apple.finder ShowStatusBar -bool true # Enable the Develop menu and the Web Inspector in Safari defaults write com.apple.Safari IncludeDevelopMenu -bool true defaults write com.apple.Safari WebKitDeveloperExtrasEnabledPreferenceKey -bool true defaults write com.apple.Safari com.apple.Safari.ContentPageGroupIdentifier.WebKit2DeveloperExtrasEnabled -bool true # Display full POSIX path as Finder window title defaults write com.apple.finder _FXShowPosixPathInTitle -bool true # Disable the warning when changing a file extension defaults write com.apple.finder FXEnableExtensionChangeWarning -bool false # Prevent Time Machine from prompting to use new hard drives as backup volume defaults write com.apple.TimeMachine DoNotOfferNewDisksForBackup -bool true # Avoid creating .DS_Store files on network volumes defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool true # Use plain text mode for new TextEdit documents defaults write com.apple.TextEdit RichText -int 0 # Apps, disable App Nap for all apps defaults write NSGlobalDomain NSAppSleepDisabled -bool true # disable automatic capitalisation defaults write NSGlobalDomain NSAutomaticCapitalizationEnabled -bool false # disable smart quotes defaults write NSGlobalDomain NSAutomaticQuoteSubstitutionEnabled -bool false # screensaver defaults -currentHost write com.apple.screensaver idleTime 1800 # show battery percentage in menu bar defaults write com.apple.menuextra.battery ShowPercent -bool YES # Disable Autocorrect defaults write -g NSAutomaticSpellingCorrectionEnabled -bool false # install FCPX first defaults write -app "Final Cut Pro" FFDefaultStillDuration -int 2 defaults write -app "Final Cut Pro" FFImportCopyToMediaFolder -bool false defaults write -app "Final Cut Pro" FFCreateOptimizedMediaForMulticamClips -bool false # stop spotify from opening when you log in defaults write com.spotify.client AutoStartSettingIsHidden -bool false # Kill affected applications for app in Finder Dock Mail Safari iTunes iCal Address\ Book SystemUIServer; do killall "$app" > /dev/null 2>&1; done echo "Done. Note that some of these changes require a logout/restart to take effect." ``` ### Unscriptable Preferences move them to the above section if you can find the code for them * in Finder * show in sidebar * home folder * computer folder * all drives * Movies * Music * Developer * in Blender * in Logic * download all sounds * set up standard prefs * in Garageband * open at least once * download all sounds * add Learning Lab to "info" prefs * in Terminal * default shell? (if changing) * background color, opacity * font family and font size * in FCPX * we think the script took care of these, but confirm * leave files in place on import * do not render in background * do not create optimized files for multicam clips * add stills as an export option * remove DVD, etc as export options * github login * heroku login * ableton login * Unity login * Unreal login * Spotify login * adobe login (and installs, see above) * xcode plugins and gists and shortcuts * many of these are probably scriptable, and we don't have a great list of them. This is definitely a place for more thinking and working ## To Do * get Dock on the left side * maybe make Dock visible on public machines? # mk-mac-setup-notes-20221108 ## computer setup log - update to monterey/ventura if needed - - erase all - user name = color (and choose matching color animoji) - - volume names - _system - _work - start app store working away - prioritize Slack and FCPX - change to animoji thing that matches color - log in to github while . . . - basics - brew - brew.sh - git - clone lls repo - `brew install git` - account: learninglab-studio - `git clone https://github.com/learninglab-studio/ll-studio-bot.git` - install the-tools-22-23 on MK's account - code - `brew install visual-studio-code` - node - `brew install node ` - .zshrc basics - if there's no development folder: `cd ~` `mkdir Development` - path to ex - `ZSHRC_PATH=~/.zshrc cd ~/Development/the-tools-22-23/scripts/ex SCRIPTS_DIR=$(pwd) echo "export PATH=/usr/local/bin:${SCRIPTS_DIR}:\$PATH" >> $ZSHRC_PATH echo "PROMPT='%2~ %# '" >> $ZSHRC_PATH` - editor = code - in VSCode, install `code .` command - prompt - log in to secure wifi - mainbrew.sh - preferences.sh - at some point after preferences.sh, restart - need to be set in interface - finder prefs - show home folder - new window opens in home folder - some_fonts.sh - npm_basics.sh - after mainbrew.sh - open Chrome and log in - log in to hackmd, airtable - adobe - log in with appropriate color - download the usuals, Ps first - open at least Ps to confirm that it opens without colliding with other machines - unity - after mainbrew, hub should be installed. login and install newest editor - then install nearly all of the templates (skipping only the 2-3 least useful ones) - unreal - install editor - disable start on login - maxon - c4d is the priority - but add the rest other than plural eyes ultimately - open c4d to confirm - after App Store - log in to Slack - open BetterSnapTool and give it permission, then set to open on startup - open Garageband and install all sounds - open Logic and set to complete mode and install all sounds - - resolve - create `_work` volume before opening - make `_work/_resolve` the only storage drive - stills duration to 1 frame - Spotify - open, login (just with email and password, not with google) - disable open on login ## next? - sidefx - other repos? - sample content? - unreal projects - obs - obs-ndi - ndi tools ## todo for next time - in preferences, add dock to bottom again and don't autohide - issues with power and screen prefs in Ventura - issues with AE c4d install colliding with Maxon in a different way this time - try doing it in both orders - editor = code