-
Install Chrome
-
Install Firefox
-
Install Rectangle Pro
-
Install brew (https://brew.sh/)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
-
Install iterm2
brew install --cask iterm2
-
Install logseq
brew install --cask logseq
- Create a new graph called "work"
- Change the following settings
2.
Preferred Date Format
toEEE do MMM yyyy
3.Preferred workflow
toTODO/DOING
- Copy the contents of
./scripts_and_files/logseq/pages
into the pages directory of the logseq graph you just created
-
Install git
brew install git
-
Setup the global settings for git
git config --global user.name "Luke McCarthy"
git config --global rerere.enabled true
This git setting tell git to remember how to resolve conflicts when you rebase so you don't have to resolve the same conflict again and again
-
Generate a new ssh key for each git user
- NB: NEVER reuse a password for any key generated not only is this more secure to use a different password, it also ensures you never commit to the wrong repo
- Run the command
ssh-keygen -t ed25519 -C <EMAIL_ADDRESS>
- Name the files with for example
github-thelukemccarthy
- Setup git to use the new keys
While these setting can be added in the~/.gitconfig
file I found it didn't work for me. So I added them to separate files to get the different keys to work.- create two files
touch ~/.gitconfig-thelukemccarthy
touch ~/.gitconfig-CLIENT_NAME
- Add the following to
~/.gitconfig-thelukemccarthy
[user] Name="Luke McCarthy" [core] sshCommand="ssh -i ~/.ssh/github_thelukemccarthy"
- Add the following to
~/.gitconfig-<CLIENT_NAME>
[user] name="Luke McCarthy" email="<CLIENT_EMAIL_ADDRESS>" [core] sshCommand="ssh -i ~/.ssh/<SSH_KEY_FOR_CLIENT_WORK>"
- Add the following to the
~/.gitconfig
file[includeif "gitdir:~/scripts_and_files/"] path = ~/.gitconfig-thelukemccarthy [includeif "gitdir:~/Library/Application Support/JetBrains/IntelliJIdea2021.1/settingsRepository/"] path = ~/.gitconfig-thelukemccarthy [includeif "gitdir:<PATH_TO_SRC_CODE_DIR>"] path = ~/.gitconfig-<CLIENT_NAME>
- create two files
- NB an alternative is to use a .ssh/config file to force work to use a key for a domain. This really only works if you have sub-domains
- Run the following command to create a config file for ssh
touch ~/.ssh/config
- Edit the config file to add the domain to use it for, for example
Host bitbucket.org Hostname bitbucket.org User git IdentityFile ~/.ssh/bitbucket_mac
- Run the following command to create a config file for ssh
-
Download and install Kdiff3 from source forge http://kdiff3.sourceforge.net
- When opening Kdiff3, if you get the error message "Kdiff3 Cannot Be Opened Because the Developer Cannot be Verified"
- Open 'System Preferences' for the Mac
- Click on 'Security & Privacy'
- At the bottom of the 'General' tab you should be able to allow Kdiff3 to open
- Setup git to kdiff3 it
git config --global merge.tool kdiff3
git config --global mergetool.kdiff3.cmd '/Applications/kdiff3.app/Contents/MacOS/kdiff3 $BASE $LOCAL $REMOTE -o $MERGED'
git config --global mergetool.kdiff3.trustExitCode false
git config --global diff.guitool kdiff3
git config --global difftool.kdiff3.cmd '/Applications/kdiff3.app/Contents/MacOS/kdiff3 $BASE $LOCAL $REMOTE -o $MERGED'
git config --global difftool.kdiff3.trustExitCode false
- When opening Kdiff3, if you get the error message "Kdiff3 Cannot Be Opened Because the Developer Cannot be Verified"
-
Clone terminal scripts and files
git clone https://github.com/thelukemccarthy/scripts_and_files.git
- Update
~/.zshrc
to have source~/scripts_and_files/alias
-
Install and setup ‘Informative git prompt for zsh’ (https://github.com/olivierverdier/zsh-git-prompt)
git clone https://github.com/olivierverdier/zsh-git-prompt.git
- Update
~/.zshrc
to havesource ~/zsh-git-prompt/zshrc.sh PROMPT='%B%m%~%b$(git_super_status) %# '
-
Install NVM
brew install nvm
- Add the following to
~/.zshrc
after nvm to automatically change node versions if a .nvmrc file existsautoload -U add-zsh-hook load-nvmrc() { local node_version="$(nvm version)" local nvmrc_path="$(nvm_find_nvmrc)" if [ -n "$nvmrc_path" ]; then local nvmrc_node_version=$(nvm version "$(cat "${nvmrc_path}")") if [ "$nvmrc_node_version" = "N/A" ]; then nvm install elif [ "$nvmrc_node_version" != "$node_version" ]; then nvm use fi elif [ "$node_version" != "$(nvm version default)" ]; then echo "Reverting to nvm default version" nvm use default fi } add-zsh-hook chpwd load-nvmrc load-nvmrc
-
Install yarn
brew install yarn
-
Download and Install VS Code https://code.visualstudio.com/docs/?dv=osx
-
Install the following plugin for VS Code
- Live Share
- Indent-rainbow
- IntelliJ IDEA Keybindings
-
In VS Code, change the following settings (Code > Preferences > Settings):
- liveshare.guestApprovalRequired > true
- @id:editor.bracketPairColorization.enabled @id:editor.guides.bracketPairs
- Editor › Bracket Pair Colorization > Enabled
- Editor › Guides: Bracket Pairs > true
-
Download and install IntelliJ
- Turn off conflicting Mac OSX keyboard shortcuts
- Open ‘System Preferences’
- Open ‘Keyboard’
- Go to ‘Shortcuts’
- Click on ‘Services’
- Find ‘Text’
- Disable ‘Search man Page Index in Terminal’
- Disable ‘Open man Page in Terminal’
- Install the following plugins
- File Watchers
- Indent Rainbow
- Night Owl Theme
- Prettier
- Rainbow Brackets
- Docker
- Turn off conflicting Mac OSX keyboard shortcuts
-
Download and install Virtualbox
-
Download and setup Win10 for IE test https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/
- The password for the VM is Passw0rd!
-
Podman (docker alternative) https://podman-desktop.io/downloads