Skip to main content

Symlinks your dotfiles from anywhere to your home directory.

Project description

Homekeeper

https://travis-ci.org/retiman/homekeeper.svg?branch=master Latest Version PyPI Wheel Supported versions

This project helps organize dotfiles by symlinking them from another location. You may opt to version your dotfiles using git or another SCM tool so you can have access to them easily while working on other machines.

In the event that you use multiple computers and would like dotfiles to be shared, you can have a list of dotfiles directories that will be overridden. This can be useful if you have your own personal dotfiles, but then want dotfiles for work to be located in a separate directory or repository.

Installation

Install it via pypi:

pip install homekeeper

Versions 5.0.0 and above are compatible with Python 3 only.

Versions 4.0.5 and below are compatible with Python 2 only.

Usage

Create a repository or directory to store your dotfiles (like this one), then create a $HOME/.homekeeper.json that points to that repository. Running homekeeper keep symlinks the dotfiles from the repository to your home directory.

Configuration

Homekeeper will read a $HOME/.homekeeper.json file for configuration. A simple configuration looks like this:

{
    "directories": [
        "/home/johndoe/dotfiles/base",
        "/home/johndoe/dotfiles/host"
    ],
    "excludes": [
        ".git",
        ".gitignore",
    ]
}

Note that all paths must be absolute in the directories array. Homekeeper will symlink files from each directory in order. Homekeeper will not symlink any file in the excludes array in the configuration.

For example, if you have a .bash_profile in $HOME/dotfiles, then after running homekeeper keep, your home directory will contain:

.bash_profile -> /home/$USER/dotfiles/.bash_profile

NOTE: HOMEKEEPER WILL DELETE THE ORIGINAL FILE IN YOUR HOME DIRECTORY AND CREATE A SYMLINK.

To prevent homekeeper from doing this, run with the --no-overwrite flag (although this may prevent homekeeper from doing anything useful).

Run homekeeper unkeep to undo this process.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

homekeeper-5.1.0-py3-none-any.whl (16.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page