Skip to content

Instantly share code, notes, and snippets.

@dcramer
Last active April 5, 2021 20:37

Revisions

  1. dcramer revised this gist Feb 13, 2020. 1 changed file with 31 additions and 0 deletions.
    31 changes: 31 additions & 0 deletions Brewfile
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,31 @@
    # various deps
    brew 'python'
    brew 'pkgconfig'
    brew 'libxmlsec1'
    brew 'openssl'
    brew 'geoip'

    # workflow
    brew 'direnv'
    brew 'hub'
    brew 'pre-commit'
    brew 'mackup'

    # even though we rely on Docker, we need the client
    brew 'postgresql'

    tap 'homebrew/cask'
    cask 'chromedriver'
    cask 'docker'
    cask 'keepingyouawake'

    # fonts
    tap 'homebrew/cask-fonts'
    cask 'font-powerline-symbols'
    cask 'font-fira-code'

    # zsh
    brew 'zsh'
    brew 'zsh-completions'
    brew 'fzf'
    brew 'getantibody/tap/antibody'
  2. dcramer created this gist Feb 13, 2020.
    83 changes: 83 additions & 0 deletions .zshrc
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,83 @@
    # If you come from bash you might have to change your $PATH.
    # export PATH=$HOME/bin:/usr/local/bin:$PATH

    source <(antibody init)
    antibody bundle < ~/.config/zsh_plugins

    # TODO(dcramer): literally doesnt work at all
    # function update_antibody() {
    # antibody bundle < ~/.config/zsh_plugins > ~/.config/zsh_plugins.sh
    # }
    # source ~/.config/zsh_plugins.sh

    ZSH_THEME="dcramer"

    ZSH_CUSTOM=~/.config/zsh_custom

    export LANG=en_US.UTF-8

    export SCREENSHOTS_PATH=~/Documents/Screenshots

    # detect os/terminal
    IS_MACOS=false
    IS_WSL=false
    if [[ "$OSTYPE" == "darwin"* ]]; then
    IS_MACOS=true
    fi
    if [[ -e /proc/version ]] && [[ $(cat /proc/version | grep microsoft) ]]; then
    IS_WSL=true
    fi

    # macos system overrides
    if [[ $IS_MACOS = true ]]; then
    mkdir -p $SCREENSHOTS_PATH
    defaults write com.apple.screencapture location $SCREENSHOTS_PATH
    fi


    # Preferred editor for local and remote sessions
    export EDITOR='nano'
    export SVN_EDITOR=$EDITOR
    export GIT_EDITOR=$SVN_EDITOR

    # golang
    export GOPATH=~/Development/go

    # docker
    export DOCKER_USER=zeeg99
    export DOCKER_PASS=

    # python
    export PYTHONDONTWRITEBYTECODE=1
    export PYTHONSTARTUP="$HOME/.pythonrc.py"

    # fzf
    [ -f ~/.fzf.zsh ] && source ~/.fzf.zsh

    # direnv
    eval "$(direnv hook zsh)"

    # poetry
    export POETRY_HOME=~/.poetry
    # poetry completions zsh > ~/.zfunc/_poetry
    export PATH="$POETRY_HOME/bin:$PATH"
    # fpath+=~/.zfunc

    # volta
    export VOLTA_HOME=~/.volta
    grep --silent "$VOLTA_HOME/bin" <<< $PATH || export PATH="$VOLTA_HOME/bin:$PATH"

    # The next line updates PATH for the Google Cloud SDK.
    if [ -f '/Users/dcramer/Downloads/google-cloud-sdk/path.zsh.inc' ]; then . '/Users/dcramer/Downloads/google-cloud-sdk/path.zsh.inc'; fi

    # The next line enables shell command completion for gcloud.
    if [ -f '/Users/dcramer/Downloads/google-cloud-sdk/completion.zsh.inc' ]; then . '/Users/dcramer/Downloads/google-cloud-sdk/completion.zsh.inc'; fi

    # helper for finding branches
    fbr() {
    local branches branch
    branches=$(git branch --all | grep -v HEAD) &&
    branch=$(echo "$branches" |
    fzf-tmux -d $(( 2 + $(wc -l <<< "$branches") )) +m) &&
    git checkout $(echo "$branch" | sed "s/.* //")
    }
    17 changes: 17 additions & 0 deletions zsh_plugins
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,17 @@
    # Load bundles from the default repo (oh-my-zsh).
    # robbyrussell/oh-my-zsh path:plugins/git
    robbyrussell/oh-my-zsh path:plugins/command-not-found
    robbyrussell/oh-my-zsh path:plugins/docker
    robbyrussell/oh-my-zsh path:plugins/pip
    robbyrussell/oh-my-zsh path:plugins/python
    robbyrussell/oh-my-zsh path:plugins/pyenv
    robbyrussell/oh-my-zsh path:plugins/sudo
    robbyrussell/oh-my-zsh path:plugins/vscode
    robbyrussell/oh-my-zsh path:plugins/z

    zsh-users/zsh-completions
    zsh-users/zsh-autosuggestions
    zsh-users/zsh-syntax-highlighting

    # denysdovhan/spaceship-prompt
    ~/.config/zsh_custom/themes/zsh-theme