This project contains my personal dotfiles, managed by chezmoi. It sets up a consistent development environment across multiple machines.
To set up your dotfiles, use the mask command-line tool.
All common tasks are defined in maskfile.md.
-
Install
pixi:Follow their instruction in their website.
-
Install
chezmoiandzsh:pixi global install chezmoi age mask
- You may also need
zsh,tmuxorpython>=3.13if you don't have them already.
- You may also need
-
Move age.key to new machine
rsync -aP ~/key.age machine:~/.config/chezmoi/
-
Initialize
chezmoi:chezmoi init Pedrexus/dotfiles.git
-
Set
zshas default shell:mask shell
-
Install Global Dependencies:
mask install
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: A package manager that does not need SUDO.
If you encounter issues with mask install on systems with older Python versions (e.g., Python 3.9), it might be due to tomllib not being available. You can resolve this by installing a compatible Python version globally via pixi:
pixi global install pythonThis will install a recent Python version that includes tomllib, allowing the dependency installation script to run correctly.
In HPC clusters, start running module purge and module load {packages} to add the necessary dependencies.