Sensitive dotfiles are dotfiles which contain confidential information that must be kept safe and out of reach from all outsiders unless they have permission to access it.
This repository helps you to initialize a sensitive dotfiles repository managed by homeshick.
Make sure you have homeshick installed.
This guide works with bash
, zsh
and fish
.
-
Provide your GitHub username and choose a name for your sensitive dotfiles repository:
export GITHUB_USERNAME="username" export SENSITIVE_DOTFILES_REPO="sd"
-
Clone this repository into
$HOME/.homesick/repos/<NAME_OF_YOUR_SENSITIVE_DOTFILES_REPO>
:git clone https://github.com/mamiu/sd-template $HOME/.homesick/repos/$SENSITIVE_DOTFILES_REPO
-
Create a new private sensitive dotfiles GitHub repository with the name you chose in step 1.
MAKE SURE THAT IT IS A PRIVATE REPOSITORY!!!
Otherwise, everyone has access to your sensitive dotfiles, which could potentially lead to serious damage. -
Execute the initialization script in this repo:
$HOME/.homesick/repos/$SENSITIVE_DOTFILES_REPO/init-sensitive-dotfiles.sh -u $GITHUB_USERNAME -r $SENSITIVE_DOTFILES_REPO
-
Follow the script output to create a new deploy key in your sensitive dotfiles repository (GitHub Repository -> Settings -> Deploy keys -> Add deploy key)
-
Track all the files you want to store in your sensitive dotfiles repository:
# For each file: homeshick track $SENSITIVE_DOTFILES_REPO <FILENAME>
E.g.
homeshick track $SENSITIVE_DOTFILES_REPO ~/.ssh/id_rsa*
-
Commit and push all sensitive dotfiles to your sensitive dotfiles repository on GitHub:
homeshick cd $SENSITIVE_DOTFILES_REPO git add -A git commit -m "initialize sensitive dotfiles" git push -u origin main