this repo has no description
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge branch 'yadm' of github.com:ian-h-chamberlain/dotfiles into yadm

+62 -17
+3
.Brewfile
··· 115 115 # Open source programming language to build simple/reliable/efficient software 116 116 brew "go" 117 117 118 + # GNU Pretty Good Privacy (PGP) package 119 + brew "gpg" 120 + 118 121 # Graph visualization software from AT&T and Bell Labs 119 122 brew "graphviz" 120 123
+1 -1
.config/vscode/extensions.txt
··· 10 10 dunstontc.viml 11 11 eamodio.gitlens 12 12 fabiospampinato.vscode-statusbar-debugger 13 + ms-vscode.Go 13 14 IBM.output-colorizer 14 15 jeff-hykin.better-cpp-syntax 15 16 korekontrol.saltstack ··· 25 26 ms-vscode-remote.remote-ssh-edit 26 27 ms-vscode.cmake-tools 27 28 ms-vscode.cpptools 28 - ms-vscode.Go 29 29 ms-vscode.vscode-typescript-tslint-plugin 30 30 ms-vsliveshare.vsliveshare 31 31 ms-vsliveshare.vsliveshare-audio
+55 -14
.config/yadm/bootstrap
··· 2 2 3 3 set -o errexit 4 4 set -o nounset 5 + set -o pipefail 5 6 6 7 # Global vars used in multiple functions 7 8 OS_NAME=$(uname -s) 9 + VSCODE_EXTENSIONS=~/.config/vscode/extensions.txt 8 10 9 11 function confirm() { 10 12 read -r -n 1 -p "$1 [Y/n]: " ··· 26 28 exit 1 27 29 } 28 30 31 + function check_vscode_exts() { 32 + # TODO: this should use `--show-versions` 33 + diff "$VSCODE_EXTENSIONS" \ 34 + <(code --list-extensions) \ 35 + --unchanged-line-format="" \ 36 + "$@" 37 + } 38 + 39 + function install_vscode_exts() { 40 + xargs printf -- "--install-extension %s " <"$VSCODE_EXTENSIONS" | xargs code 41 + echo 42 + 43 + # TODO: some kind of vscode extension "prune" command. Or just uninstall all every time? 44 + if ! check_vscode_exts &>/dev/null; then 45 + # This check may not be needed since `code` errors if it can't install 46 + local UNINSTALLED 47 + UNINSTALLED=$(check_vscode_exts \ 48 + --old-line-format=" %L" \ 49 + --new-line-format="" \ 50 + || : 51 + ) 52 + 53 + if [[ -n $UNINSTALLED ]]; then 54 + echo "ERROR: some VSCode extensions were not installed:" 55 + echo "$UNINSTALLED" 56 + echo 57 + return 1 58 + fi 59 + 60 + local INSTALLED 61 + INSTALLED=$(check_vscode_exts \ 62 + --old-line-format="" \ 63 + --new-line-format=" %L" \ 64 + || : 65 + ) 66 + if [[ -n $INSTALLED ]]; then 67 + echo "WARNING: some installed VSCode extensions were not found in $VSCODE_EXTENSIONS:" 68 + echo "$INSTALLED" 69 + echo 70 + fi 71 + fi 72 + } 73 + 29 74 function setup_macos() { 30 75 # Install homebrew and use it to install basic packages/apps 31 - if ! command -v brew >/dev/null && \ 76 + if ! command -v brew &>/dev/null && \ 32 77 confirm "'brew' command not found. Install it? " 33 78 then 34 79 bash -c '$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)' 80 + echo 35 81 fi 36 82 37 83 # TODO: should there be a step to `brew bundle cleanup` here? ··· 39 85 confirm "Install packages from Brewfile? " 40 86 then 41 87 brew bundle --global install 88 + echo 42 89 fi 43 90 44 - # TODO: pre-commit which dumps with `code --list-extensions --show-versions` 45 - if ! diff ~/.config/vscode/extensions.txt <(code --list-extensions) &>/dev/null && \ 91 + # TODO: pre-commit which dumps extensions 92 + if ! check_vscode_exts &>/dev/null && \ 46 93 confirm "Install VSCode extensions?" 47 94 then 48 - xargs printf -- "--install-extension %s " <~/.config/vscode/extensions.txt | xargs code 49 - fi 50 - 51 - # TODO: some kind of vscode extension "prune" command. Or just uninstall all every time? 52 - if ! diff ~/.config/vscode/extensions.txt <(code --list-extensions) &>/dev/null; then 53 - echo 54 - echo "WARNING: the following extensions are installed, but not present in extensions.txt:" 55 - diff --changed-group-format=" %>" --unchanged-group-format="" \ 56 - ~/.config/vscode/extensions.txt \ 57 - <(code --list-extensions) 58 - echo 95 + install_vscode_exts 59 96 fi 60 97 61 98 echo "macOS setup is complete!" ··· 69 106 70 107 function main() { 71 108 yadm submodule update --init 109 + 110 + GPG_TTY=$(tty) 111 + export GPG_TTY 112 + yadm decrypt 72 113 73 114 if [[ "$OS_NAME" == "Darwin" ]]; then 74 115 setup_macos
+1
.config/yadm/encrypt
··· 1 + .ssh/**
.config/yadm/files.gpg

This is a binary file and will not be displayed.

-2
.pyenv/version
··· 1 - 3.6.5 2 - 2.7.15
+2
.vimrc
··· 14 14 set whichwrap=<,>,[,],b 15 15 set wrapmargin=0 16 16 17 + set iskeyword-=_ 18 + 17 19 filetype indent on 18 20 19 21 set mouse=a