1
0
Files
dotfiles/README.md

2.1 KiB

Ryan's Dotfiles

A comprehensive dotfiles repository for SSH, remote environments, and development setups.

Structure

~/.dotfiles/
├── stow/                  # Configs organized for GNU Stow
│   ├── bash/             # Bash configuration (.bashrc, .bash_aliases, .inputrc)
│   ├── git/              # Git configuration (.gitconfig)
│   └── [other configs]   # Additional configurations as needed
├── packages/
│   ├── base.txt          # MUST HAVE - Core system utilities
│   ├── cli-tools.txt     # Nice-to-haves - Enhanced CLI tools
│   ├── dev.txt           # Development tools (docker, node, etc)
│   └── gui.txt           # Desktop applications
├── bootstrap.sh          # Get repo and select branch
├── setup.sh              # Main orchestrator - runs all configuration
└── README.md             # Documentation

Install

From internet:

bash <(curl -sL https://ryans.tools/dotfiles)

From local copy (USB drive, etc.):

./bootstrap.sh

The installer will:

  1. Bootstrap: Clone repository (or use local copy), select branch if desired
  2. Setup: Check dependencies, backup conflicts, install packages, configure with GNU Stow

Updates

Regular updates (recommended):

dotpull

Branch switching or major re-setup:

cd ~/.dotfiles && ./bootstrap.sh

Package Categories

  • Base: Essential system utilities (curl, git, stow, vim, etc.)
  • CLI Tools: Enhanced command-line tools (bat, fzf, ripgrep, etc.)
  • Development: Programming languages and dev tools (nodejs, python, docker, etc.)
  • GUI: Desktop applications (firefox, code, vlc, etc.)

Updating

After initial installation, use the dotpull alias to update your dotfiles:

dotpull

This alias will pull the latest changes and re-stow all configurations.

Manual Management

To manage individual configurations:

cd ~/.dotfiles/stow
stow -t ~ bash    # Link bash config
stow -t ~ git     # Link git config
stow -D bash      # Unlink bash config