Install & Configure macOS Mojave

Create Installation Disk

  • Download OS from AppStore and after that run below command in Terminal.
sudo /Applications/Install\ macOS\ --volume /Volumes/Disk --nointeraction
  • Reboot and Holding down OPTION(ALT).


  • Easy, next next next - Appearance to Dark. Install Updates, if needed.

Install Apps, Utils, Libs

ruby -e "$(curl -L"
brew analytics off
sudo python -m ensurepip
sudo pip install --upgrade pip docker-py virtualenv
brew install libxslt ffmpeg ImageMagick python ansible wget git tig htop zsh npm dnscrypt-proxy
sudo brew services start dnscrypt-proxy
sh -c "$(curl -L"
brew cask install virtualbox vagrant visual-studio-code google-chrome iterm2 docker little-snitch appcleaner
vagrant plugin install vagrant-hostsupdater

Configure System & User

    # Security & Privacy -> General: Require password immediately.
    # Spotlight -> Disable everything, except Applications, System Preferences.
    # iCloud: Login and Disable everything, except Photos, Keychain.
    # Network: Define only as a DNS Server.
    # General: Allow Handoff between this Mac and your iCloud devices.
    # Keyboard: Input Sources: Click on "+" -> Romanian Standard.
    # Cleanup Right Sidebar.
    # Open Finder: New finder: "home". Sidebar: Show "home", Disable Tags.
    # Open Chrome: Default browser and setup.
# General
  # Ask to keep changes when closing documents
  defaults write NSGlobalDomain NSCloseAlwaysConfirmsChanges -bool true
# Dock
  defaults write persistent-apps -array              # Wipe all (default) app icons from the Dock
  defaults write tilesize -int 36                    # Size
  defaults write orientation -string "left"          # Position on screen
  defaults write minimize-to-application -bool true  # Minimise windows into application icon
  defaults write autohide -bool true                 # Automatically hide and show the Dock
  defaults write show-recents -bool false            # Show recent applications in Dock
  killall Dock
# Keyboard
  # Text: Disable auto-correct
  defaults write NSGlobalDomain NSAutomaticSpellingCorrectionEnabled -bool false
# Trackpad
  # Trackpad: enable tap to click for this user and for the login screen
  defaults write Clicking -bool true
  defaults write Clicking -bool true
  # Enable tap at login as well
  defaults -currentHost write NSGlobalDomain -int 1
  defaults write NSGlobalDomain -int 1
# Bluetooth: Show Bluetooth in the menu bar
  defaults write "NSStatusItem Visible" -bool true
# Accessibility
  # Mouse & Trackpad -> Trackpad Options -> Enable Dragging
  defaults write Dragging -bool true
  defaults write Dragging -bool true
# Other
  # Show battery percentage
  defaults write ShowPercent -string "YES"
  # Prevent Photos from opening automatically when devices are plugged in
  defaults -currentHost write disableHotPlug -bool true
  # Prevent iTunes from opening automatically when devices are plugged in
  defaults write ignore-devices 1
  # Save to disk by default - not to iCloud
  defaults write NSGlobalDomain NSDocumentSaveNewDocumentsToCloud -bool false
  # Prevent Time Machine from prompting to use new hard drives as backup volume
  defaults write DoNotOfferNewDisksForBackup -bool true

Configure Applications

# TextEdit
  # Use plain text mode for new TextEdit documents
  defaults write RichText -int 0
  # Open and save files as UTF-8 in TextEdit
  defaults write PlainTextEncoding -int 4
  defaults write PlainTextEncodingForWrite -int 4
# Finder
  # Set Desktop as the default location for new Finder windows
  # For other paths, use `PfLo` and `file:///full/path/here/`
  defaults write NewWindowTarget -string "PfDe"
  defaults write NewWindowTargetPath -string "file://${HOME}/"
  # Show icons for hard drives, servers, and removable media on the desktop
  defaults write ShowExternalHardDrivesOnDesktop -bool false
  defaults write ShowHardDrivesOnDesktop -bool false
  defaults write ShowMountedServersOnDesktop -bool false
  defaults write ShowRemovableMediaOnDesktop -bool false
  # Keep folders on top when sorting by name
  defaults write _FXSortFoldersFirst -bool true
  # When performing a search, search the current folder by default
  defaults write FXDefaultSearchScope -string "SCcf"
  # Disable the warning when changing a file extension
  defaults write FXEnableExtensionChangeWarning -bool false
  # Use list view in all Finder windows by default
  defaults write FXPreferredViewStyle -string "Nlsv"
# MicroSnitch
  defaults write at.obdev.MicroSnitch OpenAtLogin -bool true
# Reboot

Configure from GUI

  • Dock: MSCode, Chrome (Optional Extension: Mailvelope).

Optional Config Changes

# Save configs: `defaults read > 1.configbk`.
# Change Config from GUI.
# Save & Check what configs changed: `defaults read > 2.configbk; diff 1.configbk 2.configbk`.