Skip to content
Configurationize all the things
Shell VimL Python Emacs Lisp PowerShell Ruby Other
Latest commit 9d8d54a May 21, 2016 @myfreeweb vim, base16
Failed to load latest commit information.
bin i3 and stuff Apr 28, 2016
certs add riseup cert Nov 4, 2013
dev-base vim hs stuff, etc. Mar 16, 2016
emacs stuff Jan 22, 2015
firefox remove firefox custom theme, keep only some tweaks Apr 16, 2016
freebsd x stuff Feb 27, 2016
haskell OH THAT'S HOW YOU FUCKING FIX THIS May 19, 2016
lein remove most of the clojure stuff Nov 10, 2015
lua add mjolnir Sep 5, 2014
mail ssh tpm, desktop opensmtpd Dec 29, 2015
marelle-deps Start removing marelle Oct 25, 2015
marelle-tpls ssh tpm, desktop opensmtpd Dec 29, 2015
node things Oct 24, 2015
ocaml add ocaml Jul 12, 2014
osx stuff May 21, 2016
python stuff Oct 15, 2015
ranger more x stuff Jan 22, 2016
ruby stuff Oct 15, 2015
tmux fix tmux battery when there are no batteries Feb 6, 2016
vim vim, base16 May 21, 2016
windows Add Windows stuff! Dec 10, 2014
x11 x stuff May 1, 2016
zsh vim, base16 May 21, 2016
.gitmodules cleanup, mjolnir -> amethyst May 8, 2015
.mailmap tmux mouse, git mailmap Feb 1, 2015
README.md add firefox style, more x11 stuff Jan 23, 2016
install.sh stuff Oct 26, 2015
quakelive.cfg psqlrc, runjava and stuff Jan 3, 2014
rinstall.sh things Nov 13, 2015

README.md


                 ▄▀▀                                     █                  ▄
 ▄▄▄▄▄  ▄   ▄  ▄▄█▄▄   ▄ ▄▄   ▄▄▄    ▄▄▄  ▄     ▄  ▄▄▄   █▄▄▄              █ 
 █ █ █  ▀▄ ▄▀    █     █▀  ▀ █▀  █  █▀  █ ▀▄ ▄ ▄▀ █▀  █  █▀ ▀█            █  
 █ █ █   █▄█     █     █     █▀▀▀▀  █▀▀▀▀  █▄█▄█  █▀▀▀▀  █   █           █   
 █ █ █   ▀█      █     █     ▀█▄▄▀  ▀█▄▄▀   █ █   ▀█▄▄▀  ██▄█▀          █    
         ▄▀                                                            ▀     
        ▀▀                                                                   

     █           ▄      ▄▀▀    ▀    ▀▀█                 
  ▄▄▄█   ▄▄▄   ▄▄█▄▄  ▄▄█▄▄  ▄▄▄      █     ▄▄▄    ▄▄▄  
 █▀ ▀█  █▀ ▀█    █      █      █      █    █▀  █  █   ▀ 
 █   █  █   █    █      █      █      █    █▀▀▀▀   ▀▀▀▄ 
 ▀█▄██  ▀█▄█▀    ▀▄▄    █    ▄▄█▄▄    ▀▄▄  ▀█▄▄▀  ▀▄▄▄▀ 


I definitely spend waaaaaay too much time configuring software I use.

dotfiles

Modular dotfiles!

  • A module is a directory with an apply.sh file that installs the dotfiles the module contains
  • install.sh installs multiple modules on the local machine
  • rinstall.sh installs multiple modules on a remote machine using SSH
  • osx/packages.sh and osx/apps.sh installs OS X Homebrew packages
  • freebsd/desktop.sh installs FreeBSD packages and system settings for a desktop

  • XDG-style ~/.config/application-name/config-file-name paths are preferred

  • Binaries are placed into ~/.local/bin (and go, pip, npm, cpan, cargo, etc. are configured to use that directory)
  • Repos are placed into ~/src using Go conventions (e.g. ~/src/github.com/myfreeweb/dotfiles). $GOPATH is ~ and ghq is used to clone non-Go repos there
  • Keyboard configuration is mostly based on A Modern Space Cadet

Installation

Common setup (FreeBSD)

# portsnap fetch extract
# pkg install git sudo
# visudo
$ git clone git@github.com:myfreeweb/dotfiles ~/src/github.com/myfreeweb/dotfiles
$ cd ~/src/github.com/myfreeweb/dotfiles
$ git submodule update --init --recursive
$ (cd freebsd && sudo ./desktop.sh)
$ ./install.sh dev-base bin tmux zsh vim x11 python ruby
$ chsh -s /usr/local/bin/zsh
$ zsh

Common setup (OS X)

$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
$ brew install git
$ git clone git@github.com:myfreeweb/dotfiles ~/src/github.com/myfreeweb/dotfiles
$ cd ~/src/github.com/myfreeweb/dotfiles
$ git submodule update --init --recursive
$ ./osx/packages.sh
$ ./osx/apps.sh
$ PCKEYBOARD=1 ./install.sh dev-base bin tmux zsh vim osx python ruby
$ sudo sh -c 'echo "/usr/local/bin/zsh" >> /etc/shells'
$ chsh -s /usr/local/bin/zsh
$ zsh

Remote setup (example)

./rinstall.sh dovahkiin@winterhold.local dev-base tmux zsh vim

Module WTF

Common

Language-specific

Something went wrong with that request. Please try again.