Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Bhupesh-V/dotman
dotman is a simple, elegant & easy to use dotfiles manager ππ½
https://github.com/Bhupesh-V/dotman
bash configuration-files dotfiles dotfiles-installer dotfiles-linux dotfiles-macos dotfiles-manager dotman hacktoberfest shell shell-script shellscript
Last synced: about 1 month ago
JSON representation
dotman is a simple, elegant & easy to use dotfiles manager ππ½
- Host: GitHub
- URL: https://github.com/Bhupesh-V/dotman
- Owner: Bhupesh-V
- License: mit
- Created: 2020-07-03T18:01:58.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-10-03T19:19:33.000Z (about 1 year ago)
- Last Synced: 2024-04-14T00:59:15.565Z (8 months ago)
- Topics: bash, configuration-files, dotfiles, dotfiles-installer, dotfiles-linux, dotfiles-macos, dotfiles-manager, dotman, hacktoberfest, shell, shell-script, shellscript
- Language: Shell
- Homepage: https://bhupesh-v.github.io/dotman
- Size: 181 KB
- Stars: 105
- Watchers: 4
- Forks: 18
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- jimsghstars - Bhupesh-V/dotman - dotman is a simple, elegant & easy to use dotfiles manager ππ½ (Shell)
README
β¨ Learn how I made dβtman from scratch β¨
## 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` β°
```shell
sh -c "$(curl -fsSL https://raw.githubusercontent.com/Bhupesh-v/dotman/master/tools/install.sh)"
```### via `wget` π₯
```shell
sh -c "$(wget -O- https://raw.githubusercontent.com/Bhupesh-v/dotman/master/tools/install.sh)"
```### via `httpie` π₯§
```shell
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 πΌ](https://github.com/Bhupesh-V/dotman/releases) and store it anywhere on your system.
2. Change file permissions to be π executable.
```bash
chmod +x dotman.sh
```
3. Set alias for dotman _(optional)_. Alternatively modify your `.bash_aliases` file.
```bash
alias $(pwd)/dotman.sh=dotman
```
4. Run **dotman**.
```bash
dotman.sh
```## Usage
Just run **`dotman`** anywhere in your terminal π.
```bash
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](https://bhupesh-v.github.io) | [Twitter: @bhupeshimself](https://twitter.com/bhupeshimself) | [DEV: bhupesh](https://dev.to/bhupesh)
[![forthebadge](https://forthebadge.com/images/badges/built-with-love.svg)](https://forthebadge.com)
## βΊοΈ Show your support
Support me by giving a βοΈ if this project helped you! or just [![Twitter URL](https://img.shields.io/twitter/url?style=social&url=https%3A%2F%2Fgithub.com%2FBhupesh-V%2Fdotman%2F)](https://twitter.com/intent/tweet?url=https://github.com/Bhupesh-V/dotman&text=dotman%20via%20@bhupeshimself)
## π License
Copyright Β© 2020 [Bhupesh Varshney](https://github.com/Bhupesh-V).
This project is [MIT](https://github.com/Bhupesh-V/dotman/blob/master/LICENSE) licensed.## π Changelog
See the [CHANGELOG.md](CHANGELOG.md) file for details.
## π Contributing
Please read the [CONTRIBUTING](CONTRIBUTING.md) file for the process of submitting pull requests to us.
## β¨ Contributors
Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
fpitters
π
Thiago Adomaitis
π π»
Scott
π
Prajeshpuri
π»
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!