Skip to content

A CLI tool to install dotfile configurations declaratively using YAML manifests.

License

Notifications You must be signed in to change notification settings

riceriley59/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dotfiles

PyPI version CI Coverage Status License

A CLI tool to install dotfiles configurations from YAML. Includes personal configs for Neovim, Tmux, Zsh, Ghostty, Kitty, i3, and Polybar.

Installation

From PyPI

pip install dotfiles-installer

# macOS
dotfiles configs/mac.yaml

# Linux
dotfiles configs/linux.yaml

From Source

git clone https://github.com/riceriley59/dotfiles.git
cd dotfiles
pip install -e .

# macOS
dotfiles configs/mac.yaml

# Linux
dotfiles configs/linux.yaml

Structure

├── configs/          # YAML configs (mac.yaml, linux.yaml)
├── dotfiles/         # Installer CLI package
├── files/            # Dotfiles to install
│   ├── config/       # ~/.config/* (nvim, ghostty, kitty, i3, polybar)
│   ├── zsh/          # ~/.zshrc, ~/.zsh_profile
│   ├── tmux/         # ~/.tmux.conf
│   └── bin/          # ~/.local/scripts
└── tests/            # Test suite

What Gets Installed

Config Destination Notes
zsh $HOME Requires oh-my-zsh
tmux $HOME Requires TPM
nvim ~/.config/nvim Requires ripgrep
ghostty ~/.config/ghostty
kitty ~/.config/kitty
scripts ~/.local/scripts Requires fzf
i3 ~/.config/i3 Linux only
polybar ~/.config/polybar Linux only

Development

pip install -e ".[dev]"
pytest

About

A CLI tool to install dotfile configurations declaratively using YAML manifests.

Resources

License

Contributing

Stars

Watchers

Forks