Skip to content

Latest commit

 

History

History
25 lines (16 loc) · 1.24 KB

File metadata and controls

25 lines (16 loc) · 1.24 KB

dotfiles

My yearly reminder for GNU stow as I don't change machines that often..

Mental model for me, stow basically takes whatever is in the directory you call it from, in this case ~/dotfiles (but could be anywhere you clone this), then looks at whatever is in the folder and symlinks from your actual $HOME to whatever is in the folder.

By default, Stow assumes the parent directory of the repository is the target. So ~/dotfiles → target is ~

Example:

~/dotfiles
  /mypackage
    /.config
      /mypackage.config.yamlson

Running gnu stow mypackage will create a symlink:

~/.config/mypackage.config.yamlson -> ~/dotfiles/mypackage/.config/mypackage.config.yamlson

If a file already exists it will complain. If you want to take whatever is there and move it from there to your dotfiles adn create the symlink in one action use stow --adopt <package> but this of course only works for stuff you have already defined in dotfiles.

If for some app no config file exists yet, simply stow <app> to implement your dotfiles config for that app. If the default install already places config files there, you need to delete/move them, I don't think there is a force overwrite.