Skip to content

Repository files navigation

Dotfiles

Use these files in your bash to improve it.

Important: git/gitconfig has my nickname/email for Github. Please change it.

Installation (new computer)

A fresh macOS install runs zsh and has no git or compiler, while these dotfiles are bash-based and Homebrew needs a compiler. Run the steps below in order; everything after step 2 is a single copy-paste.

1. Switch your shell to bash

These dotfiles are bash-based, and the installer is a bash script sourced into your current shell, so it needs to run under bash. Switch your login shell, then open a new terminal window so the remaining steps run in bash:

chsh -s /bin/bash

2. Install the Xcode Command Line Tools

This provides git (needed to clone the repo) and the compiler toolchain (a prerequisite for Homebrew):

xcode-select --install

Wait for the GUI installer to finish before moving on.

3. Run the installer

source /dev/stdin <<<"$( curl -sS https://raw.githubusercontent.com/kurko/dotfiles/master/install )"

That one command does everything else:

  • installs Homebrew if it isn't already present
  • logs you into GitHub with gh auth login (opens a browser); the credential helper in git/gitconfig uses that token for HTTPS pushes
  • generates ~/.ssh/id_rsa if you don't have one — git/gitconfig signs every commit and tag with it
  • clones this repo to ~/.dotfiles
  • sets up symlinks for gitconfig, tmux, bash aliases, Alacritty config, and more
  • installs all software via Homebrew (rbenv, vim, ctags, 1password, slack, google chrome, ...)

The installer is idempotent, so you can re-run this command any time to fix or finish a partial install. A post-install checklist prints the few manual steps that remain (App Store apps, etc.). It also installs 1Password; download it manually if that step fails.

Running the installer manually

If you'd rather clone and run it directly (which is what the command above does under the hood):

git clone https://github.com/kurko/dotfiles.git ~/.dotfiles
cd ~/.dotfiles
./install

Update from Github

You can just run the same command

source /dev/stdin <<<"$( curl -sS https://raw.githubusercontent.com/kurko/dotfiles/master/install )"

Or you can

cd ~/.dotfiles
git pull --rebase origin master

Reloading

To reload dotfiles, run:

$ ubp

ubp will Update Bash Profile with whatever is in the .dotfiles dir.

GitHub authentication

The installer runs this for you, but if you ever need to redo it:

gh auth login

It opens a browser and stores a token. git/gitconfig already carries the credential helper that uses it, so HTTPS clones and pushes authenticate without an SSH key. Don't run gh auth setup-git — it rewrites that helper with an absolute /opt/homebrew/bin/gh path, straight into this tracked file.

~/.ssh/id_rsa is still generated by the installer, but only for commit signing (git/gitconfig sets gpg.format = ssh and commit.gpgsign = true). GitHub never needs to see it.

About

Files that customize my bash.

Resources

Stars

14 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages