- Recommended: Fork project to tweek the settings and make it your own
or do it locally:
git clone https://github.com/hfalk/dotfiles
- Modify settings.sh to your needs
- Change git name, and remove packages/applications you don't need
- Update macos.sh with preferred tweaks
- Run the install script:
bash install.sh
(Remember: this project is using symlinks, so don't remove/delete projectfolder after install)
Lots of things! The following things will happen in cronological order:
[?] = Optional (the installer will ask before making the change)
- Prerequisites
- Install Xcode Select
- Install Homebrew
- Install essential brew packages (e.g.
docker
,node
,python
andcoreutils
)
- ZSH
- Symlink universal dotfiles (such as .gitconfig and .vimrc)
- Symlink zsh specific dotfiles
- Install Oh My ZSH!
- Vim
- Install vim-plug (vim package manager)
- Install vim plugins (see .vimrc)
- Git
- Set git name and email
- [?] Change macOS default (about 100 tweaks in total)
- [?] Install applications (such as Chrome and Spotify)
For more information of what the actual dotfiles does, take a look at source code.
- Generate a new gpg key (Remember same name and email as github)
gpg --full-generate-key
- Select RSA and key size of 4096
- Let the key never expire (press enter)
- Enter name and email
- Enter a passphrase
- List keys:
gpg --list-secret-keys --keyid-format LONG
- It output should look something like this: sec 4096R/XXXXXXXX"
- The ID is the X's
- Export this key and add it to GitHub (https://github.com/settings/keys):
gpg --armor --export <PASTE_LONG_KEY_HERE(XXXXXXXX)>
- Copy your GPG key, beginning with
-----BEGIN PGP PUBLIC KEY BLOCK-----
and ending with-----END PGP PUBLIC KEY BLOCK-----
.
- Copy your GPG key, beginning with
- Add key to git:
git config --global user.signingkey <PASTE_LONG_KEY_HERE>
- To set all commits for a repository to be signed by default:
git config --global commit.gpgsign true
- To set all commits in any local repository on your computer to be signed by default:
git config commit.gpgsign true
- To set all commits in any local repository on your computer to be signed by default:
- Export to bash_profile, to avoid re-entering password
echo 'export GPG_TTY=$(tty)' >> ~/.bash_profile