-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathubuntu.sh
executable file
·88 lines (73 loc) · 2.71 KB
/
ubuntu.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
#!/bin/bash
# Install PreReqs
echo -e "\n>> Installing PreReqs"
sudo apt-get install -y git vim make gnome-tweak-tool curl build-essential libssl-dev \
zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget llvm libncurses5-dev \
htop git shellcheck bison gcc mercurial
sudo apt autoremove -y
# Install pyenv
echo -e "\n>> Installing pyenv"
curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bash
git clone https://github.com/yyuu/pyenv-virtualenvwrapper.git ~/.pyenv/plugins/pyenv-virtualenvwrapper
# Install tfenv
echo -e "\n>> Installing tfenv"
git clone https://github.com/kamatama41/tfenv.git ~/.tfenv
sudo ln -s ~/.tfenv/bin/* /usr/local/bin
tfenv install 0.8
tfenv install 0.9
# Cloning dotfiles repo
echo -e "\n>> Cloning dotfiles"
git clone https://github.com/jasonamyers/dotfiles.git
git clone https://github.com/nojhan/liquidprompt.git
# Init symlinks for config files
echo -e "\n>> Creating symlinks"
pushd dotfiles
for file in [a-zA-Z]* ; do
if [[ "$file" != "setup.sh" && "$file" != "README.md" && "$file" != "env" && "$file" != "LICENSE.txt" ]] ; then
if [[ -h ~/."$file" ]] ; then
# symlink, remove it since it will be re-created anyway
echo " Removing symbolic link ~/.$file"
rm ~/."$file"
elif [[ -a ~/."$file" ]] ; then
# an actual file, create backup
echo " ~/.$file exists. Moving it to ~/.$file.backup"
mv ~/."$file" ~/."$file".backup || echo " Couldn't move ~/.$file to ~/.$file.backup!"
fi
ln -s `pwd`/"$file" ~/."$file" && echo " Linked ~/.$file to `pwd`/$file" || echo " Couldn't link ~/.$file to `pwd`/$file!"
fi
done
popd
# Sourcing bashrc
echo -e "\n>> Sourcing bashrc"
source ~/.bashrc
# Installing Python 2 and 3
echo -e "\n>> Installing Python 2 and 3"
pyenv install 2.7.14
pyenv install 3.6.3
pyenv global 3.6.3
# Building neovim virtualenvs
pyenv virtualenv 2.7.13 neovim2
pyenv activate neovim2
pip install neovim
pyenv virtualenv 3.6.3 neovim3
pyenv activate neovim3
pip install neovim
pip install flake8
ln -s `pyenv which flake8` ~/bin/flake8
# Installing GVM
echo -e "\n>> Installing GVM (Golang) and GOLANG 1.9"
bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
source /home/jasonamyers/.gvm/scripts/gvm
gvm install go1.4 -B
gvm use go1.4
export GOROOT_BOOTSTRAP=$GOROOT
gvm install go1.9
# Installing Portray
echo -e "\n>> Installing Portray"
sudo curl -o /usr/local/bin/portray -L https://github.com/jasonamyers/portray/releases/download/v0.2/portray
sudo chmod a+x /usr/local/bin/portray
echo -e "\n>> Initializing Fonts"
fc-cache
echo -e "\n>> Installing NVM (Node) and NodeJS "
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash
nvm install v6.11