Configurations for shell, editors, languages, tools, and OS preferences. Installation is orchestrated with Dotbot.
gitcurltarzsh
Clone the repository with submodules in the home directory:
git clone --recurse-submodules https://github.com/pablosjv/dotfiles.git ~/.dotfilesChange to the dotfiles directory:
cd ~/.dotfilesRun the bootstrap script:
./scripts/bootstrapAfter bootstrap, commands in bin/ are linked into ~/.local/bin. The main CLI is:
❯ dotfiles help
dotfiles [COMMAND]
Manages different dotfiles stuff
Commands:
help show this help text
apply install the latest version for the configuration and packages
update reflect the configuration changes in the repository
edit open dotfiles in editor
date get latest update date
install run just the installers
configure run just the configurators
brew interact with homebrew with extended commandsZsh completion for dotfiles is provided by shell/zsh/completions/_dotfiles. The completion path is loaded through Zim module setup in .zimrc.
A Makefile is provided for convenience on some of the development commands to format and test.
make fmt: Format shell + Python.make lint: Lint Python.make test: Run pytest.make check: Runfmt + lint + test.
Some scripts are written in Python. Although they use Python standard libraries, a pyproject.toml is used to manage dev dependencies for testing and formatting.