my dotfiles
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Alpha Chen e428a2420e
[meta] Clean up laptop playbook
10 years ago
.hammerspoon [meta] Add Hammerspoon config, move linked .gitignore 10 years ago
Alfred 2/Alfred.alfredpreferences [alfred] Update Dash workflow 10 years ago
ansible [meta] Clean up laptop playbook 10 years ago
bash [bash] Add bash config 10 years ago
bin [bin] Add script for moving crosswords 10 years ago
config/.config/powerline [tmux] Colorscheme changes 10 years ago
dnsmasq [meta] Remove resolver settings for SM 10 years ago
git [meta] Add Hammerspoon config, move linked .gitignore 10 years ago
osx [meta] Link `~/.tmux.conf.local` 10 years ago
pentadactyl [pentadactyl] Make text smaller on Retina 10 years ago
readline [readline] Add config 10 years ago
resolver Fix resolver/dev 11 years ago
ruby [ruby] Remove history method from .irbrc 10 years ago
src [powerline][tmux] Fix tmux colors 10 years ago
ssh/.ssh [meta] Don't check host keys when SSHing to Vagrant 10 years ago
tmux [tmux] Move local config back to the end of the tmux config 10 years ago
vim [tmux] Move local config back to the end of the tmux config 10 years ago
.gitignore [meta] Remove mackup 10 years ago
.gitmodules [powerline][tmux] Fix tmux colors 10 years ago
Alpha.terminal [terminal] Update Terminal.app profile 10 years ago
LICENSE Initial commit 11 years ago
README.md [meta] Update OS X Ansible role 10 years ago
gitignore [meta] Add Hammerspoon config, move linked .gitignore 10 years ago

README.md

A new beginning for what used to be my conf_dir project, since dotfiles appears to be the conventional name of these types of repos nowadays.

This uses Ansible to provision new machines.

Usage

There are two ways to go about using this - either locally or remotely. The main difference is that OS X application settings are only copied over when running this on a remote machine.

Either way, we start with installing Xcode:

xcode-select --install
open 'https://itunes.apple.com/us/app/xcode/id497799835?mt=12'
sudo xcodebuild -license

After running Ansible, the bootstrap ~/.dotfiles directory can be removed and replaced with a symlink to the canonical repo location on Dropbox and SSH keys can be populated with the included script:

rm -rf ~/.dotfiles
ln -s ~/Dropbox/dotfiles ~/.dotfiles
ruby ~/.dotfiles/ansible/scripts/setup_ssh_keys.rb

Local

# Install Homebrew
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

# Install ansible
brew install ansible

# Clone dotfiles
git clone --recursive https://github.com/kejadlen/dotfiles.git ~/.dotfiles

# Run Ansible
cd ~/.dotfiles/ansible && ansible-playbook main.yml --ask-sudo-pass
rm -f ~/*.retry

Remote

On the remote machine, SSH access must first be enabled (under System Preferences -> Sharing) and the Xcode Command Line Tools need to be installed (xcode-select --install).

cd ~/.dotfiles/ansible && ansible-playbook main.yml --ask-pass --ask-sudo-pass

Misc

To update submodules:

git submodule foreach git pull

Development

Ansible tags are indispensible when tweaking the config.

- command: echo debug
  tags: debug
ansible-playbook main.yml --ask-sudo-pass --tags debug

Vagrant

vagrant up
ansible vagrant -m ping

TODO

See issues.