Skip to content

Latest commit

 

History

History
55 lines (35 loc) · 2.1 KB

README.md

File metadata and controls

55 lines (35 loc) · 2.1 KB

ghmd - Gotta Have My Dots

ghmd is a glorified symlink manager.

How it works

ghmd started off as an attempt to add support for multiple dotfile repos to badm. Things got a little out of hand, so I have unofficially forked that repo. Very little of the original code or command line interface remains.

It's essentially a glorified bespoke/fancy ln tool. It moves files/directories from path A to path B then creates a symbolic link at path A pointing to path B.

Reasons you should use this tool:

  • crickets

Reasons you shouldn't use this tool:

  • I adapted it for my own use case, not yours.
  • It's not written in your favorite programming language.
  • I deleted all the tests that are in badm.
  • You have better things to do than sit in front of your computer moping over dot files lost to the great trash bin in the sky.

Dotfiles are tracked in $HOME/.config/ghmd/config.toml to enable all known dotfiles to be deployed in one swift command line call.

Quick Demo

TODO (more like TODONT)

Commands

  • ghmd stow <symlink_dir> <dotfiles_dir> <file>...
    • Move each specified <file>... from <symlink_dir> to <dotfiles_dir>.
      • Fail <symlink_dir> is not a parent path of any <file>... paths.
    • Create a symlink pointing to the new location in <dotfiles_dir> from the old location in <symlink_dir>.
  • ghmd deploy <file>...
    • Deploy symlinks to each <file>... to the configured <symlink_dir>.
  • ghmd restore <dotfiles_dir> <file>...
    • Restore each specified <file>... from the specified <dotfiles_dir> to the configured <symlink_dir>.

Roadmap

There is no roadmap. Only what you see before you.

Contributing

Pull requests, issues/feature requests, and bug reports will be approached with trepidation and a mild sense of exhaustion!

Similar Projects

License

This project is made available under the MIT license. See the LICENSE file for more information.