Skip to content
/ dotm Public

A symlink-based dotfile manager with support for multiple hosts

License

Notifications You must be signed in to change notification settings

winpat/dotm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dotm

Build

A dotfile manager with support for host specific configuration.

Installation

Use the nix package manager to install dotm.

nix profile install github:winpat/dotm

Usage

Add a .dotrc file to your dotfiles repository. The dotrc file describes which files should be linked depending on the hostname. If you want to link a file on every host, configure it under the "all" key:

all:
  - .emacs
  - .tmux.conf
  - .bashrc
laptop|desktop:
  - .config/dunst
laptop:
  - .config/i3
  - nixos/laptop.nix -> /etc/nixos/configuration.nix
desktop:
  - .config/openbox
  - nixos/desktop.nix -> /etc/nixos/configuration.nix

Then simply run dotm in the same directory:

dotm

Development

You can spawn an environment with all dependencies using nix-shell:

nix develop

To run the suite, simply launch pytest through the make target:

nix develop --check

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License

GPLv3

About

A symlink-based dotfile manager with support for multiple hosts

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published