dot
dot is a git wrapper for managing dotfiles
Installation
pip install dotfile
How it works
The basics of dot is that it runs this git command:
git --git-dir=$HOME/.dotfiles --work-tree=$HOME
You can easily specify where your git-dir is and what your work-tree is with dot.
Why use dot instead of aliasing this command?
dot comes with a few handy custom git commands that are specific with managing dotfiles.
dot cwf(short for commit-with-filenames) will create a nice commit message showing which files you added/deleted/modified. You can also add your own description with the-mflag.dot sstatus of tracked files onlydot auadd/update currently tracked filesdot listlist all currently tracked files
Usage
To setup your dotfile repository, run dot init and it will walk you through the setup.
You can setup a new repository, or use an existing repository already on your machine.
New repository setup
[~]$ dot init
===== dotfile setup =====
Choose how you want to initialize your dotfiles:
[0] Create new dotfile repository
[1] Use existing dotfile repository
> 0
New repository setup
--------------------
Repository name: [.dotfiles]
Default work tree: [/Users/kyle]
Generated configs: /Users/kyle/.config/dot/config.toml
[dot]
git-dir=/Users/kyle/.dotfiles/.git
work-tree=/Users/kyle
Do you wish to continue? (y/n [y]) y
Created config file at /Users/kyle/.config/dot/config.toml
Initialized empty Git repository in /Users/kyle/.dotfiles/.git/
Dotfile repository created at /Users/kyle/.dotfiles
Existing repository setup
[~]$ git clone https://github.com/kylepollina/.dotfiles
Cloning into '.dotfiles'...
remote: Enumerating objects: 65, done.
remote: Counting objects: 100% (65/65), done.
remote: Compressing objects: 100% (45/45), done.
remote: Total 2101 (delta 39), reused 43 (delta 20), pack-reused 2036
Receiving objects: 100% (2101/2101), 1.18 MiB | 1.89 MiB/s, done.
Resolving deltas: 100% (577/577), done.
[~]$
[~]$ dot init
===== dotfile setup =====
Choose how you want to initialize your dotfiles:
[0] Create new dotfile repository
[1] Use existing dotfile repository
> 1
Existing repository setup
-------------------------
Repository name: .dotfiles
Work tree directory: [/Users/kyle]
Generated configs: /Users/kyle/.config/dot/config.toml
[dot]
git-dir=/Users/kyle/.dotfiles/.git
work-tree=/Users/kyle
Do you wish to continue? (y/n [y]) y
Created config file at /Users/kyle/.config/dot/config.toml
Dotfiles setup at /Users/kyle/.dotfiles
Analyzing dotfile repository...
There is 2 files and 0 directories in /Users/kyle/.dotfiles
Files
-----
.zprofile
.bash_profile
Would you like to move these into your work tree? (y/n [y]) y
Moving file /Users/kyle/.dotfiles/.zprofile to /Users/kyle
overwrite /Users/kyle/.zprofile? (y/n [n]) y
/Users/kyle/.dotfiles/.zprofile -> /Users/kyle/.zprofile
Moving file /Users/kyle/.dotfiles/.bash_profile to /Users/kyle
overwrite /Users/kyle/.bash_profile? (y/n [n]) n
not overwritten
License
MIT License
Metadata
Release files for dotfile 0.9.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| dotfile-0.9.0.tar.gz | 6.1 kB | Without provenance | Details for dotfile-0.9.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| dotfile-0.9.0-py3-none-any.whl | Python 3 | none | any | Details for dotfile-0.9.0-py3-none-any.whl |
Total release size: 14.9 kB
Release files / dotfile-0.9.0.tar.gz
| Download URL | dotfile-0.9.0.tar.gz |
|---|---|
| Size | 6.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
cab49c401174a076a487e49b1579946d71f24f321314c5922b65b7f1647c549c
|
|
BLAKE2b-256 checksum How to use checksums |
c53b8107ffccdb2e8b81711a63aa5877cbe3a4d2e466d7b3831691c58c2bf2fe
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.4
|
Release files / dotfile-0.9.0-py3-none-any.whl
| Download URL | dotfile-0.9.0-py3-none-any.whl |
|---|---|
| Size | 8.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5cb3dfe8489b4b62088555a0cce62aaa3797cc76d7b196a56d2ec915524fb3c0
|
|
BLAKE2b-256 checksum How to use checksums |
1e8097aabdf903e1005d7d13de31628c1dce55dce85b1d08946e7134aedb8301
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.4
|
Security for dotfile 0.9.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.