Awesome
Mike Kasberg's Dotfiles
Managed with chezmoi ❤️
Setup dotfiles on a new machine
-
(Optional) Install Bitwarden and login if you plan to install secrets.
Linux
sudo snap install bw bw login
macOS
curl -o ~/bin/bw.zip -L 'https://vault.bitwarden.com/download/?app=cli&platform=macos' unzip -d ~/bin ~/bin/bw.zip && rm ~/bin/bw.zip bw login
-
Install chezmoi to
~/bin
and install dotfiles to~/dotfiles
.sh -c "$(curl -fsLS git.io/chezmoi)" -- -b "$HOME/bin" init --apply -S ~/dotfiles mkasberg
Done! To keep up to date in the future:
chezmoi update
Want to check the diff before applying changes?
chezmoi <update|apply> -nv
Notable Features
- Cross-platform (macOS & Linux)
- Scripts to install system and user applications and preferences
- Custom PS1 Bash Prompt
- Custom Oh My Zsh Theme
- Set the default shell to zsh on Ubuntu
- Per-machine git email, set once during setup
- Optionally (per machine) install secrets from Bitwarden
- Install script for VS Code Remote Containers Dotfiles
- Vim filetypes for chezmoi
Start Your Own Dotfiles
Want to use Chezmoi to manage your own dotfiles? The best way to get started is
to follow the Chezmoi Quick Start
Guide to start tracking your first
dotfile (~/.bashrc
, ~/.zshrc
, or ~/.gitconfig
are great files to start
with). Beyond that, I hope you can find some inspiration by looking at my
dotfiles and copying things you like!
Testing
Want to test a fresh install on a new machine? A dev container in Docker is great for this because it comes with a non-root user. Use the Docker command below to get into a fresh, disposable testing environment, then run the installation steps from above.
docker run --rm -it --user vscode --workdir /home/vscode mcr.microsoft.com/devcontainers/base:ubuntu
For convenience, ./test.sh
use the above to install dotfiles from the current
working directory and drop you into a prompt.
Security
Did you find a vulnerability in my dotfiles? An exposed secret? Some other security issue? Please report vulnerabilities via email to kasberg.mike@gmail.com or mike@mikekasberg.com.