Skip to content

heraldofsolace/HomeSweetHome

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HomeSweetHome

GitHub Release

A dotfile manager written in C++.

Warning: Use at your own risk. I will not be held responsible if you break your setup.

The code is not optimal. You can contribute by improving it.

QuickStart

  1. Initialize:
home_sweet_home init

This will set the source directory to .local/share/home_sweet_home and target directory to ~

  1. Add a file:
home_sweet_home add ~/.bashrc

This will copy ~/.bashrc to bashrc##hidden in the source directory.

  1. Edit:
home_sweet_home edit ~/.bashrc

This will edit the copy stored in source directory and not the actual file.

  1. Apply when ready:
home_sweet_home apply ~/.bashrc

This will copy the updated file to the target directory.

  1. (Optional) Add a template
home_sweet_home add ~/test -t

This will add the file test as a template with .tmpl extension.

home_seet_home edit ~/test

Put "Hello I am {{username}}" in the file and save.

home_sweet_home apply ~/test

Now ~/test contains "Hello I am <your username here>".

To see the available data run

home_sweet_home data

The templating uses Inja syntax.

  1. Forget a managed file:
home_sweet_home forget ~/.bashrc # Add -f flag to not get prompted

By default, this will only delete the managed copy in source directory and not the one in target directory. Add the "-r" flag to also remove the one in target directory.

Installation

Coming soon.

Donate

ko-fi Donate using Liberapay