Personal dotfiles
- Install brew - https://brew.sh/
- Load
brewin the current shell environmenteval "$(/opt/homebrew/bin/brew shellenv)"
- Load
- Set up ssh
- Install Proton Pass CLI -
brew install protonpass/tap/pass-cli - Start the Proton Pass CLI deamon -
proton-cli ssh-agent deamon start
- Install Proton Pass CLI -
- Set up GPG
- Install GPG (only on macOS)
brew install gpg
- Download the public and private keys
- Set up SmartCard Daemon (only on Linux) - https://blog.programster.org/yubikey-link-with-gpg
sudo apt install scdaemon
- Import the public key
gpg --import public.key
- Import the private key
gpg --allow-secret-key-import --import private.key
- Install GPG (only on macOS)
- Clone the dotfiles
git clone git@github.com:matteeyah/dotfiles.git ~/.dotfiles
- Install zinit - https://github.com/zdharma-continuum/zinit
bash -c "$(curl --fail --show-error --silent --location https://raw.githubusercontent.com/zdharma-continuum/zinit/HEAD/scripts/install.sh)"- Make
zshyour login shell withchsh -s $(command -v zsh)
- Open
vim/neovimand install plugins with:lua vim.pack.update() - Set up Ghostty terminal emulator
- Install Ghostty -
brew install --cask ghostty - Symlink the config -
ln -s ~/.dotfiles/config/ghostty/config ~/.config/ghostty/config
- Install Ghostty -
This repo is structured as a symlink farm.
- git
ln -s ~/.dotfiles/config/git/.gitconfig ~/.gitconfig
- nvim
ln -s ~/.dotfiles/config/vim/.vimrc ~/.config/nvim/init.vim
- ssh
ln -s ~/.dotfiles/config/ssh/config ~/.ssh/config
- tmux
ln -s ~/.dotfiles/config/tmux/.tmux.conf ~/.tmux.conf
- zsh
ln -s ~/.dotfiles/config/zsh/.zshrc ~/.zshrc
- gpg (mac only)
ln -s ~/.dotfiles/config/gpg/gpg-agent.conf ~/.gnupg/gpg-agent.conf
- ghostty
ln -s ~/.dotfiles/config/ghostty/config ~/.config/ghostty/config
- asdf - Manage language runtimes - https://github.com/asdf-vm/asdf
git clone git@github.com:asdf-vm/asdf.git ~/.asdfasdf plugin add rubysudo apt install build-essential libssl-dev libreadline-dev zlib1g-dev libyaml-dev libpq-dev(linux only)
- git - Version Control - https://github.com/git/git
- nvim - editor - https://github.com/neovim/neovim
- ripgrep - grep Replacment - https://github.com/BurntSushi/ripgrep
- zinit - zsh package manager - https://github.com/zdharma-continuum/zinit
- zsh - Shell - https://github.com/zsh-users/zsh
- pinentry-mac - Shell - https://github.com/GPGTools/pinentry
- pass-cli - Shell - https://github.com/protonpass/pass-cli
- fzf - Fuzzy Completer - https://github.com/junegunn/fzf
- fd - find Replacement - https://github.com/sharkdp/fd
- bat - cat Replacement - https://github.com/sharkdp/bat
- github-copilot-cli - Shell AI - https://www.npmjs.com/package/@githubnext/github-copilot-cli
- delta - diff highlighting - https://github.com/dandavison/delta
- tmux - Terminal Multiplexer - https://github.com/tmux/tmux/
- docker - Container Engine - https://github.com/docker/docker-ce
- ghostty - Terminal Emulator - https://github.com/ghostty-org/ghostty