vcsh-dotfiles aims to simplify the bootstrap procedure of managing your dotfiles with vcsh. It sets up vcsh, mr, adds usable hooks and lays down simple directory that vcsh repositories can follow.
It is inspired by the bootstrap script in vdemeester/vcsh-home repository. You can check ek9/dotfiles for various repositories that use vcsh-dotfiles.
- Automatically download and setup
vcsh
andmr
by fetching files via curl/wget and git. - Sets up
.local/bin
for local binaries and shell scripts (added toPATH
) - vcsh hooks setup to:
- Enable sparse checkout.
- Ignore
README
,LICENSE
and other common development files. - Make backup copies of files that would be overwritten when cloning.
- Repositories can have
.gitignore
files stored in.gitignore.d/<repo-name>
of every repository
- mr
.mrconfig
setup to source files in:.config/mr/config.d
(for vcsh repositories) This allows any repositories to extendmr
configuration further.
Please see CHANGELOG.md for information on recent changes.
curl
orwget
git
Run vcsh-dotfiles bootstrap
via this curl
one-liner:
$ curl https://raw.githubusercontent.com/ek9/vcsh-dotfiles/main/.local/bin/vcsh-dotfiles | bash -s bootstrap
Source ~/.profile
to make sure PATH
is updated:
$ source ~/.profile
Run mr update
to verify the boostrap:
$ mr update
You can use vcsh-dotfiles
to clone vcsh repositories:
$ vcsh-dotfiles clone https://github.com/ek9/shell-config
vcsh-dotfiles
supports the following commands:
bootstrap
- used to bootstrap vcsh, mr and bootstrap vcsh-dotfiles.clone
- used to clone vcsh repositories.mr update
is always run at the end. Will not try to clone already cloned repository.verify
- used to verify existingvcsh-dotfiles
setup.help
- show help
Examples:
$ vcsh-dotfiles clone https://github.com/ek9/shell-config
$ vcsh-dotfiles verify
$ vcsh-dotfiles help
You can check ek9/dotfiles for various repositories that use vcsh-dotfiles.
Copyright (c) 2016-2017 ek9 [email protected] (https://ek9.co).
Copyright (c) 2011-2015 Vincent Demeester for portions of code from vdemeester/vcsh-home project.
TBA