forked from pivotus/glove
/
kur
executable file
·120 lines (101 loc) · 3.99 KB
/
kur
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
#!/bin/bash
set -e
say () {
green='\e[32m'
NC='\033[0m' # No Color
echo -e "${green}$1${NC}"
}
# sudo gerektiren işlemlerin öncesinde sudo parolası zaman aşımını tazele
sudostart() {
if [ $(id -u) -ne 0 ]; then
say "Yönetici hakları gerekecek; sudo parolası sorulabilir."
if ! sudo -v -p "Lütfen sudo parolanızı girin:"; then
say "Parolayı hatalı giriyorsunuz veya yönetici olma yetkiniz yok!"
exit 1
fi
fi
}
install_docker() {
say "docker kuruluyor..."
sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
sudo sh -c 'echo "deb https://apt.dockerproject.org/repo ubuntu-xenial main" > /etc/apt/sources.list.d/docker.list'
sudo apt-get update
sudo apt-get purge lxc-docker*
sudo apt-get install -y docker-engine
[ -e /var/lib/docker/devicemapper ] && sudo rm -rf /var/lib/docker/devicemapper
sudo usermod -aG docker $USER
}
install_docker-compose() {
type docker >/dev/null 2>&1 || install_docker
say "docker-compose kuruluyor..."
download_url=$(curl -k -s https://api.github.com/repos/docker/compose/releases | grep browser_download_url | grep `uname -s`-`uname -m` | head -n 1 | cut -d '"' -f 4)
sudo sh -c "curl -kL $download_url > /usr/local/bin/docker-compose"
sudo chmod +x /usr/local/bin/docker-compose
}
install_virtualbox() {
say "virtualbox-5.0 kuruluyor..."
sudo sh -c 'echo "deb http://download.virtualbox.org/virtualbox/debian xenial contrib" > /etc/apt/sources.list.d/virtualbox.list'
wget --no-check-certificate -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add -
sudo apt-get update
sudo apt-get install -y virtualbox-5.0 dkms
}
install_docker_machine() {
type docker >/dev/null 2>&1 || install_docker
type virtualbox >/dev/null 2>&1 || install_virtualbox
say "docker-machine kuruluyor..."
download_url=$(curl -k -s https://api.github.com/repos/docker/machine/releases | grep browser_download_url | grep amd64 | head -n 1 | cut -d '"' -f 4)
sudo sh -c "curl -kL $download_url > /usr/local/bin/docker-machine"
sudo chmod +x /usr/local/bin/docker-machine
}
install_ruby() {
say "ruby2.3 kuruluyor..."
sudo apt-get install -y build-essential ruby2.3 ruby2.3-dev libssl-dev libxml2-dev libyaml-dev ca-certificates
# ruby komutu yoksa ruby2.3'i ruby olarak sisteme tanıt
type ruby >/dev/null 2>&1 || sudo update-alternatives \
--install /usr/bin/ruby ruby /usr/bin/ruby2.3 50 \
--slave /usr/bin/irb irb /usr/bin/irb2.3 \
--slave /usr/bin/rake rake /usr/bin/rake2.3 \
--slave /usr/bin/gem gem /usr/bin/gem2.3 \
--slave /usr/bin/rdoc rdoc /usr/bin/rdoc2.3 \
--slave /usr/bin/testrb testrb /usr/bin/testrb2.3 \
--slave /usr/bin/erb erb /usr/bin/erb2.3 \
--slave /usr/bin/ri ri /usr/bin/ri2.3
# rubygems ssl hatası: https://gist.github.com/luislavena/f064211759ee0f806c88
wget --no-check-certificate https://github.com/rubygems/rubygems/releases/download/v2.2.3/rubygems-update-2.2.3.gem
sudo gem install rubygems-update-2.2.3.gem
sudo update_rubygems
sudo gem uninstall rubygems-update -x
# pry gerekebilir
sudo gem install pry --no-ri --no-rdoc
sudo gem install rubocop --no-ri --no-rdoc
}
install_go() {
say "Go kuruluyor..."
cd /tmp && wget --no-check-certificate https://storage.googleapis.com/golang/go1.6.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.6.linux-amd64.tar.gz
sudo rm -f /usr/bin/go
sudo ln -s /usr/local/go/bin/go /usr/bin/go
}
install_crystal() {
say "Crystal kuruluyor..."
sudo apt-key adv --keyserver keys.gnupg.net --recv-keys 09617FD37CC06B54
sudo sh -c 'echo "deb http://dist.crystal-lang.org/apt crystal main" > /etc/apt/sources.list.d/crystal.list'
sudo apt-get update
sudo apt-get install crystal
}
usage() {
echo -e "Kullanım: \n\n $ kur araç_adı \n"
echo "Kurulabilir araçlar:"
say "- docker\n- docker-compose\n- docker-machine\n- virtualbox\n- ruby\n- go\n- Crystal"
exit 1
}
[ $# -eq 0 ] && usage
case $1 in
docker|docker-compose|docker-machine|virtualbox|ruby|go|crystal)
sudostart
install_$1
;;
*)
usage
;;
esac