Personal dotfiles and scripts managed with GNU Stow.
| Directory | Contents | Target Location |
|---|---|---|
bin/ |
Custom shell scripts | ~/.local/bin/ |
aliases |
Shared shell aliases | ~/.aliases |
- ssh-add-host - Automate SSH server setup with passwordless login
- Optional dependencies:
ssh-copy-id(recommended) andsshpassfor non-interactive password entry - Set
SSH_ADD_HOST_PASSWORD(withsshpassinstalled) to provide the initial SSH password; otherwise enter it interactively
- Optional dependencies:
# macOS
brew install stow
# Ubuntu/Debian
sudo apt install stow
# Fedora
sudo dnf install stow# Clone this repository
git clone https://github.com/yourusername/dotfiles.git ~/Projects/dotfiles
cd ~/Projects/dotfiles
# Install scripts via stow
stow bin -t ~/.local/bin
# Or use the install script to install scripts + shared aliases
./install.sh# Remove symlinks (preserves the repo)
stow -D bin -t ~/.local/bin- Add your script to
bin/ - Make it executable:
chmod +x bin/your-script - Re-run stow:
stow -R bin -t ~/.local/bin
The root aliases file is symlinked to ~/.aliases by ./install.sh.
If ~/.aliases already exists and is not managed by this repo, the installer first moves it to a timestamped backup.
The installer also appends this source line to ~/.zshrc and ~/.bashrc if missing:
[ -f "$HOME/.aliases" ] && . "$HOME/.aliases"# Example: Add zsh configs
mkdir zsh
mv ~/.zshrc zsh/
stow zsh -t ~dotfiles/
├── aliases # Shared shell aliases
├── bin/ # Executable scripts
│ └── ssh-add-host
├── install.sh # Installer for scripts and aliases
└── README.md
MIT