/dotman

dotman is a simple, elegant & easy to use dotfiles manager πŸ––πŸ½

Primary LanguageShellMIT LicenseMIT

build status badge License: MIT platform: linux and macos bash love Website Status dotman Twitter: bhupeshimself

Demo πŸ”₯

dotman-demo

🌠 Features

  • Single file manager (Portable)
  • No config files for dotman (No .dotrc 🀦)
  • No useless arguments (single command 😎)
  • Easy to use
  • Extendable βš’, Available as a Template
  • Fewer Dependencies
    • Git
    • Bash>=3

Wait! it's not written in a fancy language

And it doesn't have to be. Why?

  • Your focus should be on your dot files & scripts rather than on a dotfiles manager or how to use it.(Wait I forgot what was the command to push files? Is it dt push or dt --push)
  • Creating a overly-complex solution for something simple should not be the goal.

πŸ’  Installation

via curl ➰

sh -c "$(curl -fsSL https://raw.githubusercontent.com/Bhupesh-v/dotman/master/tools/install.sh)"

via wget πŸ“₯

sh -c "$(wget -O- https://raw.githubusercontent.com/Bhupesh-v/dotman/master/tools/install.sh)"

via httpie πŸ₯§

sh -c "$(http --download https://raw.githubusercontent.com/Bhupesh-v/dotman/master/tools/install.sh)"

dotman is installed by default in /home/username/dotman, your $HOME directory.

Now run dotman for 1st time set-up.

  1. Enter repository URL (without .git).
  2. Specify folder you want to clone the dotfile repo to (relative to /home/username/).
  3. Open up new terminal πŸš€.

Manually (you ok ?)

  1. Just grab dotman.sh from Releases πŸ”Ό and store it anywhere on your system.
  2. Change file permissions to be πŸƒ executable.
chmod +x dotman.sh
  1. Set alias for dotman (optional). Alternatively modify your .bash_aliases file.
alias $(pwd)/dotman.sh=dotman
  1. Run dotman.
dotman.sh

Usage

Just run dotman anywhere in your terminal πŸ––.

dotman

Leave the rest to it.

What else πŸ‘€

dotman exports 2 variables in your default shell config (bashrc, zshrc etc):

  1. DOT_DEST: used for finding the location of dotfiles repository in your local system.
  2. DOT_REPO: the url to the remote dotfile repo.

You can change these manually if any one of the info changes.

Author

πŸ€“ Bhupesh Varshney

Web | Twitter: @bhupeshimself | DEV: bhupesh

forthebadge

☺️ Show your support

Support me by giving a ⭐️ if this project helped you! or just Twitter URL

Donate using Liberapay Support on ko-fi

πŸ“ License

Copyright Β© 2020 Bhupesh Varshney.
This project is MIT licensed.

πŸ“ Changelog

See the CHANGELOG.md file for details.

πŸ‘‹ Contributing

Please read the CONTRIBUTING file for the process of submitting pull requests to us.

✨ Contributors

Thanks goes to these wonderful people (emoji key):


fpitters

πŸ›

Thiago Adomaitis

πŸ› πŸ’»

Scott

πŸ›

Prajeshpuri

πŸ’»

This project follows the all-contributors specification. Contributions of any kind welcome!