forked from paulirish/dotfiles
-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup-a-new-machine.sh
executable file
·143 lines (89 loc) · 3.72 KB
/
setup-a-new-machine.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
# copy paste this file in bit by bit.
# don't run it.
echo "do not run this script in one go. hit ctrl-c NOW"
read -n 1
##
## migration from old machine
##
## grab the good stuff.
##
mkdir -p ~/migration/home
cd ~/migration
# what is worth reinstalling
brew leaves > brew-list.txt # all top-level brew installs
brew cask list > cask-list.txt
npm list -g --depth=0 > npm-g-list.txt
# then compare brew-list to what's in `brew.sh`
# comm <(sort brew-list.txt) <(sort brew.sh-cleaned-up)
# let's hold on to these
cp ~/.extra ~/migration/home
cp ~/.z ~/migration/home
cp -R ~/.ssh ~/migration/home
cp -R ~/.gnupg ~/migration/home
cp /Library/Preferences/SystemConfiguration/com.apple.airport.preferences.plist ~/migration # wifi
cp ~/Library/Preferences/net.limechat.LimeChat.plist ~/migration
cp -R ~/Library/Services ~/migration # automator stuff
cp -R ~/Documents ~/migration
cp ~/.bash_history ~/migration # back it up for fun?
# Timestats chrome extension stats
# chrome-extension://ejifodhjoeeenihgfpjijjmpomaphmah/options.html#_options
# gotta export into JSON through devtools:
# copy(JSON.stringify(localStorage, null, ' '))
# pbpaste > timestats-canary.json.txt
# Current Chrome tabs via OneTab
# iTerm settings.
# Prefs, General, Use settings from Folder
# Finder settings and TotalFinder settings
# Not sure how to do this yet. Really want to.
##
## new machine setup.
##
#
# homebrew!
#
# (google machines are funny so i have to do this. everyone else should use the regular thang)
mkdir $HOME/.homebrew && curl -L https://github.com/mxcl/homebrew/tarball/master | tar xz --strip 1 -C $HOME/.homebrew
export PATH=$HOME/.homebrew/bin:$HOME/.homebrew/sbin:$PATH
#
# install all the things
./brew.sh
./brew-cask.sh
# github.com/jamiew/git-friendly
# the `push` command which copies the github compare URL to my clipboard is heaven
bash < <( curl https://raw.github.com/jamiew/git-friendly/master/install.sh)
# Type `git open` to open the GitHub page or website for a repository.
npm install -g git-open
# github.com/rupa/z - oh how i love you
git clone https://github.com/rupa/z.git ~/code/z
chmod +x ~/code/z/z.sh
# consider reusing your current .z file if possible. it's painful to rebuild :)
# z hooked up in .bash_profile
# github.com/thebitguru/play-button-itunes-patch
# disable itunes opening on media keys
git clone https://github.com/thebitguru/play-button-itunes-patch ~/code/play-button-itunes-patch
# my magic photobooth symlink -> dropbox. I love it.
# + first move Photo Booth folder out of Pictures
# + then start Photo Booth. It'll ask where to put the library.
# + put it in Dropbox/public
# * Now… you can record photobooth videos quickly and they upload to dropbox DURING RECORDING
# * then you grab public URL and send off your video message in a heartbeat.
# for the c alias (syntax highlighted cat)
sudo easy_install Pygments
# change to bash 4 (installed by homebrew)
BASHPATH=$(brew --prefix)/bin/bash
sudo echo $BASHPATH >> /etc/shells
chsh -s $BASHPATH # will set for current user only.
echo $BASH_VERSION # should be 4.x not the old 3.2.X
# Later, confirm iterm settings aren't conflicting.
# iterm with more margin! http://hackr.it/articles/prettier-gutter-in-iterm-2/
# software licenses like sublimetext
# setting up the sublime symlink
ln -sf "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" ~/bin/subl
# go read mathias, paulmillr, gf3, alraa's dotfiles to see what to update with.
# set up osx defaults
# maybe something else in here https://github.com/hjuutilainen/dotfiles/blob/master/bin/osx-user-defaults.sh
sh .osx
# symlinks!
# put/move git credentials into ~/.gitconfig.local
# http://stackoverflow.com/a/13615531/89484
./symlink-setup.sh