Fri, 05 May 2017 11:59:19 -0400
no blank-before-blockquote
245 | 1 | #!/bin/sh |
2 | set -eu | |
3 | ||
534
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
4 | minimal=0 |
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
5 | |
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
6 | case ${1:-} in -m) minimal=1;; |
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
7 | esac |
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
8 | |
285 | 9 | if [ ! -f .zshrc ]; then |
10 | echo "Refusing to run without a .zshrc nearby" >&2 | |
11 | exit 1 | |
12 | fi | |
13 | ||
245 | 14 | if ! git --version >/dev/null; then |
285 | 15 | echo "Please install git!" >&2 |
245 | 16 | exit 1 |
17 | fi | |
18 | ||
459
efa21f0b1dca
Remove rbenv & ndenv transition stuff
Meredith Howard <mhoward@roomag.org>
parents:
383
diff
changeset
|
19 | pull() { |
245 | 20 | echo "$1:" |
459
efa21f0b1dca
Remove rbenv & ndenv transition stuff
Meredith Howard <mhoward@roomag.org>
parents:
383
diff
changeset
|
21 | git -C "$1" pull --no-tags |
245 | 22 | } |
23 | ||
24 | if ! [ -d .zgen ]; then | |
482
2c7cb331d2dc
Don't really need full clones
Meredith Howard <mhoward@roomag.org>
parents:
461
diff
changeset
|
25 | git clone --depth 1 'https://github.com/tarjoilija/zgen.git' .zgen |
245 | 26 | else |
27 | pull .zgen | |
534
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
28 | zsh -i -c 'zgen update' || true |
245 | 29 | fi |
30 | ||
534
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
31 | if [ "$minimal" -ne 1 ]; then |
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
32 | if ! [ -d .plenv ]; then |
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
33 | git clone --depth 1 'https://github.com/tokuhirom/plenv.git' .plenv |
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
34 | git clone --depth 1 'https://github.com/tokuhirom/Perl-Build.git' .plenv/plugins/perl-build/ |
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
35 | else |
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
36 | pull .plenv |
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
37 | pull .plenv/plugins/perl-build |
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
38 | fi |
245 | 39 | |
534
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
40 | if ! [ -d .asdf ]; then |
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
41 | git clone --depth 1 'https://github.com/asdf-vm/asdf' .asdf |
381
b09db2db7f84
use ruby and nodejs plugins for asdf
Meredith Howard <mhoward@roomag.org>
parents:
328
diff
changeset
|
42 | else |
534
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
43 | pull .asdf |
381
b09db2db7f84
use ruby and nodejs plugins for asdf
Meredith Howard <mhoward@roomag.org>
parents:
328
diff
changeset
|
44 | fi |
534
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
45 | |
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
46 | for LANG in ruby nodejs erlang elixir; do |
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
47 | if ! [ -d .asdf/plugins/$LANG ]; then |
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
48 | git clone --depth 1 "https://github.com/asdf-vm/asdf-$LANG" .asdf/plugins/$LANG |
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
49 | else |
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
50 | pull .asdf/plugins/$LANG |
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
51 | fi |
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
52 | done |
6a8fc81c470c
Add -m minimal option to skip extras
Meredith Howard <mhoward@roomag.org>
parents:
486
diff
changeset
|
53 | fi |
381
b09db2db7f84
use ruby and nodejs plugins for asdf
Meredith Howard <mhoward@roomag.org>
parents:
328
diff
changeset
|
54 | |
459
efa21f0b1dca
Remove rbenv & ndenv transition stuff
Meredith Howard <mhoward@roomag.org>
parents:
383
diff
changeset
|
55 | # Get rid of older stuff |
381
b09db2db7f84
use ruby and nodejs plugins for asdf
Meredith Howard <mhoward@roomag.org>
parents:
328
diff
changeset
|
56 | if [ -d .rbenv ]; then |
459
efa21f0b1dca
Remove rbenv & ndenv transition stuff
Meredith Howard <mhoward@roomag.org>
parents:
383
diff
changeset
|
57 | echo 'rbenv is still installed' >&2 |
245 | 58 | fi |
59 | ||
381
b09db2db7f84
use ruby and nodejs plugins for asdf
Meredith Howard <mhoward@roomag.org>
parents:
328
diff
changeset
|
60 | if [ -d .ndenv ]; then |
459
efa21f0b1dca
Remove rbenv & ndenv transition stuff
Meredith Howard <mhoward@roomag.org>
parents:
383
diff
changeset
|
61 | echo 'ndenv is still installed' >&2 |
328 | 62 | fi |