- Cyberduck
- Firefox
- Google Chrome
- iTerm2
- Little Snitch
- Microsoft Office
- Visual Studio Code
- VLC
- Wireshark - temporarily removed new build required to fix issue requiring Rosetta 2 see here
-
Install Xcode or Xcode Tools (Homebrew Requirement)
xcode-select --install
-
Install Homebrew
-
Install Python3
brew install python3
-
Install Ansible
python3.9 -m pip install --user ansible
Update
$PATH
in.bashrc
as this is where the Ansible binaries are installedexport PATH=$PATH:~/Library/Python/3.9/bin
-
Create a directory to store repositories in and clone the repo
mkdir ~/Documents/Code cd ~/Documents/Code git clone https://github.com/johnsoga/mac_setup.git cd mac_setup
All applications listed above will be installed using the apps.yml
playbook
ansible-playbook -i ansible_hosts.txt apps.yml
Customizations on the docks animations & layout are done using the dock.yml
playbook
ansible-playbook -i ansible_hosts.txt dock.yml
People use various methods for accomplishing this most notable being using the defaults
command. A popular example is here. Personally I find for configuring the System Preferences this method is a bit buggy and unreliable so I think this approach using ActionScript is reliable but feel free to use whatever works best for you. Running the ActionScript application will require you to give Accessability access to the script (you'll be prompted twice).
cd automator
unzip SystemPreferencesSetup.zip
open SystemPreferencesSetup.app
Be Kind, Rewind!
$ ssh-keygen -t ed25519
Generating public/private ed25519 key pair.
Enter file in which to save the key (/path/to/.ssh/id_ed25519): meaningful_name
Enter passphrase (empty for no passphrase): meaningful_passphrase
Enter same passphrase again: meaningful_passphrase
Your identification has been saved in meaningful_name.
Your public key has been saved in meaningful_name.pub.
Append the following to your /path/to/.ssh/confg
file
Host host.to.use.ssh.key.to.remote.to
AddKeysToAgent yes
UseKeychain yes
IdentityFile ~/.ssh/meaningful_name
$ ssh-add -K ~/.ssh/meaningful_name
Enter passphrase for meaningful_name:
Identity added: meaningful_name (user@machine_name)