This project contains my personal dotfiles, managed by chezmoi. It sets up a consistent development environment across multiple machines.
All tooling lives in pixi-global.toml and is installed with
pixi global.
-
Install
pixi:curl -fsSL https://pixi.sh/install.sh | shInstall
zshwith your system package manager before setting the login shell below. On Debian, Ubuntu, or Raspberry Pi OS that issudo apt install -y zsh. -
Move the age key to the new machine:
rsync -aP ~/key.age machine:~/.config/chezmoi/
-
Install the toolbox:
export PIXI_HOME="$HOME/.pixi/$(uname -m)" mkdir -p "$PIXI_HOME/manifests" curl -fsSLo "$PIXI_HOME/manifests/pixi-global.toml" \ https://raw.githubusercontent.com/Pedrexus/dotfiles/main/pixi-global.toml pixi global sync
This installs every CLI declared in
pixi-global.toml(chezmoi, age, tmux, nvim, and friends) into the shared global env at$PIXI_HOME. After editing the manifest, copy it back into$PIXI_HOME/manifests/and runpixi global syncagain. -
Initialize
chezmoi:chezmoi init Pedrexus/dotfiles.git
-
Set
zshas the default login shell:sudo chsh -s "$(awk '/^\/(usr\/)?bin\/zsh$/ { print; exit }' /etc/shells)" "$USER"
This selects the registered system
zshfrom/etc/shells. -
Install Claude Code:
curl -fsSL https://claude.ai/install.sh | bashThe native installer puts
claudein~/.local/bin, already first onPATH.
After installation, you can start using your new shell and tools:
-
Start Zsh:
zsh
-
Start Tmux:
tmux
Inside tmux, press
Ctrl+AthenIto install tmux plugin dependencies.
- chezmoi: Manages the dotfiles.
- zsh: A powerful shell.
- tmux: A terminal multiplexer.
- LazyVim: A Neovim setup.
- pixi: Installs every CLI from one manifest, no sudo needed.
In HPC clusters, start running module purge and module load {packages} to add the necessary dependencies.