Package: dotstow
dotstow (DEPRICATED)GitHub starsManage dotfiles with stowPlease ★ this repo if you found it useful ★ ★ ★DEPRICATEDThe pypi dotstow module is deprecated.Please use the one found on npm.https://npmjs.org/package/dotstowYou can install it by running the following command.npm install -g dotstowThe new and improved dotstow module on npm supports the following
features.Group dotfiles into units (stow packages)Automatically symlink (stow) filesBackup dotfiles with gitKeep track of simultaneous dotfile configurations for multiple
environmentsSupports shell autocompletionIf you were using the python version of dotstow, you should upgrade to
this version to get the benefits of multiple environments. If you switch
you will have to move your stash plugins into an environment folder
(global is recommended).You can do that by running the following commands.mkdir ~/tmp_global
mv ~/.dotfiles/* ~/tmp_global
mv ~/tmp_global mkdir ~/.dotfiles/globalFeaturesGroup dotfiles into units (stow packages)Automatically symlink (stow) filesBackup dotfiles with gitScreenshotsScreenshot 1Installationpip3installdotstowDependenciesPython 3GNU StowUsageNote that unlike many dotfile syncing tools, this is powered byGNU
Stow. This means your dotfiles
must be stored inside stow packages (subfolders) instead of the root of
your repo. This prevents cluttering your home directory with unwanted
files, like yourREADME.md. It also enables you to only install
dotfiles you want on that computer.The idea behind dotstow is twofold: 1. You don’t need to maintain a
shell script that symlinks all of your dotfiles to the correct places in
your $HOME directory upon a new dotfile install 2. Individual
directories in you .dotfiles become packages that can be installed
independently usingdotstow [package]For example:When setting up your dotfiles on a new computer 1. Rundotstow sync,
give it your dotfiles github repo link, and watch as it’s cloned into~/.dotfiles. 2. Rundotstow zsh emacs vim ...etc for each of
the stow packages you’d like to install (aka symlink to $HOME). 3. When
youupdate a filein a package, you only need todotstow syncto
update your linked github repo with the changes. If youadd new
filesto your stow package you will need to restow the package. For
example, when adding.zshrcto.dotfiles/zsh/, you will need todotstow zshto restow the package and thendotstow syncto
update your linked github repo with the changes.SetupCreate a remote dotfiles repo. You can create one atGitHub.Run the following commanddotstowsyncCreating a stow packagemkdir~/.dotfiles/my-stow-packageAdding dotfiles to stow packagemv~/.some-dotfile~/.dotfiles/my-stow-packageSymlink stow packageNote that this will fail if conflicting files exist in the home
directory.dotstowmy-stow-packageSyncing dotfilesdotstowsyncExampleThe following example demonstrates syncing your.zshrcfile with
dotstowmkdir~/.dotstow/zsh# creates a new stow package called 'zsh'mv~/.zshrc~/.dotstow/zsh# adds dotfiles to the 'zsh' stow packagedotstowzsh# symlinks the 'zsh' stow packagedotstowsync# syncs your dotfilesSupportSubmit anissueContributingReview theguidelines for
contributingLicenseMIT
LicenseJam Risser© 2018ChangelogReview thechangelogCreditsJam Risser- AuthorSupport on LiberapayA ridiculous amount of coffee ☕ ☕ ☕ was consumed in the process of
building this project.Add some fuelif you’d
like to keep me going!Liberapay receivingLiberapay patrons