sandbox/run.sh

173 lines
3.2 KiB
Bash

#!/bin/bash
export DEBIAN_FRONTEND=noninteractive
set -x
exec 1> >(tee -a /var/log/sandboxbuild.log) 2>&1
PKGS="
apt-utils
bash-completion
bind9-host
bonnie++
build-essential
byobu
command-not-found
daemontools
debmirror
default-jre
fonts-indic
fonts-ipafont-gothic
fonts-ipafont-mincho
fortune
git
golang-go
irssi
jq
ldap-auth-client
ldap-utils
libboost-all-dev
libdb++-dev
libnss-mdns
libxml2
libxml2-dev
libxslt1-dev
lsof
mailutils
make
man-db
mosh
mutt
netcat-openbsd
nmap
nodejs
npm
nscd
openssh-server
pbzip2
pkg-config
pv
pwgen
python
python-dev
python-pip
python-software-properties
rbenv
rsync
rsyslog
rsyslog-gnutls
rsyslog-relp
runit
screen
snmp
snmpd
software-properties-common
telnet
texlive-latex-base
tmux
ttf-wqy-microhei
ttf-wqy-zenhei
vagrant
vim
wamerican-insane
wget
"
apt-get update
apt-get -y upgrade
for PKG in $PKGS ; do
apt-get install -y $PKG
done
# install docker
apt-get install -y docker
#apt-get install apt-transport-https ca-certificates
#apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 \
# --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
#echo "deb https://apt.dockerproject.org/repo ubuntu-xenial main" > \
# /etc/apt/sources.list.d/docker.list
#apt-get update
#apt-get install docker-engine
# install docker machine (this is gross):
curl -L \
https://github.com/docker/machine/releases/download/v0.6.0/docker-machine-`uname -s`-`uname -m` > \
/usr/local/bin/docker-machine && \
chmod +x /usr/local/bin/docker-machine
# install docker compose (also gross):
curl -L \
https://github.com/docker/compose/releases/download/1.6.2/docker-compose-`uname -s`-`uname -m` > \
/usr/local/bin/docker-compose && \
chmod +x /usr/local/bin/docker-compose
# and completion
curl -L \
https://raw.githubusercontent.com/docker/compose/$(docker-compose version --short)/contrib/completion/bash/docker-compose > \
/etc/bash_completion.d/docker-compose
# install neovim
add-apt-repository ppa:neovim-ppa/unstable
apt-get update
apt-get install neovim
# install ruby-build for rbenv install
git clone https://github.com/rbenv/ruby-build.git /root/.rbenv/plugins/ruby-build
# install some rbenv versions
rbenv install 2.3.0
rbenv install jruby-9.0.5.0
# install some gems
GEMS="
bundler
"
for GEM in $GEMS ; do
gem install -V $GEM
done
# install ppss, paralell processing shell script
cd /usr/local/bin
wget https://raw.githubusercontent.com/sneak/ppss/master/ppss
chmod +x ./ppss
# update npm
npm update -g --loglevel info npm
# install some npm packages
NPM_PKGS="
yarn
"
for PKG in $NPM_PKGS ; do
npm install -g --loglevel info $PKG
done
# upgrade pip and install bare essentials
# update other packages as possible
pip install --upgrade pip
pip install setuptools
pip install pip-review
pip-review --verbose --auto
# install other python packages
PIP_PKGS="
virtualenv
pylint
awscli
"
for PKG in $PIP_PKGS; do
pip install $PKG
done
# cleanup filesystem after build
rm -rf \
/root/.cache \
/var/cache/* \
/var/lib/apt/lists/* \
/core