mirror of https://github.com/kdabir/has.git
148 lines
6.0 KiB
Docker
148 lines
6.0 KiB
Docker
FROM ubuntu:bionic-20200311
|
|
|
|
# Updates path with node, npm, npx, and globally installed npm packages
|
|
ENV node=12.18.1
|
|
ENV PATH="${PATH}:/node-v${node}-linux-x64/bin"
|
|
|
|
# already contains
|
|
# apt=1.6.12
|
|
# apt-get=1.6.12
|
|
# awk
|
|
# bash=4.4.20
|
|
# bzip2=1.0.6
|
|
# gnu_coreutils=8.28
|
|
# grep=3.1
|
|
# gzip=1.6
|
|
# perl=26
|
|
# sed=4.4
|
|
# tar=1.29
|
|
# tput #todo
|
|
RUN apt-get update && DEBIAN_FRONTEND="noninteractive" apt-get install --no-install-recommends -y -qq \
|
|
ack=2.22* \
|
|
ant=1.10.5* \
|
|
apache2-utils=2.4* `# ab=2.3` \
|
|
apt-utils `# todo` \
|
|
aptitude=0.8.10* \
|
|
autojump=22.5.0* \
|
|
awscli=1.14.44* `# aws=1.14.44` \
|
|
build-essential zlib1g-dev libssl-dev libncurses-dev libffi-dev libsqlite3-dev libreadline-dev libbz2-dev `# required for eb` \
|
|
bzr=2.7.0+bzr6622-10 `# bzr=2.8.0` \
|
|
curl=7.58.0* \
|
|
docker.io=19.03.6* `# docker=19.03.6` \
|
|
emacs=47.0 `# emacs=25.2.2` \
|
|
file=1:5.32* \
|
|
gcc=4:7.4.0-1ubuntu2.3 `# gcc=7.5.0` \
|
|
git=1:2.17.1* \
|
|
gpg-agent `# todo:apt-key` \
|
|
gradle=4.4.1* \
|
|
groovy=2.4.16* \
|
|
httpie=0.9.8* `# http=0.9.8` \
|
|
hugo=0.40.1* \
|
|
jq=1.5* \
|
|
leiningen=2.8.1* `# lein=2.8.1` \
|
|
locales `# required for brew` \
|
|
make=4.1* \
|
|
maven=3.6.0* `# mvn=3.6.0` \
|
|
mercurial=4.5.3* `# hg=4.5.3` \
|
|
nano=2.9.3* \
|
|
openjdk-11-jdk-headless=11.0.7* `# java=11.0.7 # javac=11.0.7` \
|
|
perl6=6.c-1 `# perl6=2018.03` \
|
|
php=1:7.2+60ubuntu1 `# php=7.2.24` \
|
|
postgresql-client=10+190* `# psql=10.12` \
|
|
pv=1.6.6* \
|
|
python=2.7.15~rc1-1 `# python=2.7.17` \
|
|
python3=3.6.7-1~18.04 `# python3=3.6.9` \
|
|
r-cran-littler=0.3.3* `# R=3.4.4` \
|
|
rake=12.3.1* \
|
|
ruby=1:2.5.1 \
|
|
ruby-bundler=1.16.1* `# bundle=1.16.1` \
|
|
rubygems `# gem=2.7.6` \
|
|
scala=2.11.12* \
|
|
silversearcher-ag=2.1.0* `# ag=2.1.0` \
|
|
software-properties-common `# todo:add-apt-repository` \
|
|
subversion=1.9.7* `# svn=1.9.7` \
|
|
sudo=1.8.21* \
|
|
tree=1.7.0* \
|
|
unar=1.10.1* \
|
|
unzip=6.0-21ubuntu1 `# unzip=6.00` \
|
|
vim=2:8.0* \
|
|
wget=1.19.4* \
|
|
xz-utils=5.2.2* `# xz=5.2.2` \
|
|
yarn `# yarn=0.32` \
|
|
zip=3.0* \
|
|
zsh=5.4.2* && \
|
|
\
|
|
commit="87b16eb" `# bats=1.2.0` && \
|
|
curl -L "https://github.com/bats-core/bats-core/tarball/${commit}" | tar xz && \
|
|
"bats-core-bats-core-${commit}/install.sh" /usr/local && \
|
|
\
|
|
brew=2.2.13 && \
|
|
git clone --depth=1 --branch ${brew} https://github.com/Homebrew/brew && \
|
|
locale-gen en_US en_US.UTF-8 && \
|
|
eval $(brew/bin/brew shellenv) && \
|
|
ln -s /brew/bin/brew /usr/local/bin/brew && \
|
|
brew --version && \
|
|
\
|
|
code=1.44.2 && \
|
|
curl -L "https://az764295.vo.msecnd.net/stable/ff915844119ce9485abfe8aa9076ec76b5300ddd/code_${code}-1587059832_amd64.deb" --output code_${code}.deb && \
|
|
`# installing missing dependencies requires apt update which is the first done above` \
|
|
dpkg -i code_${code}.deb || apt-get install -f -y && \
|
|
rm -f code_${code}.deb && \
|
|
\
|
|
commit="102025c" `# eb=3.18.1` && \
|
|
curl -L "https://github.com/aws/aws-elastic-beanstalk-cli-setup/tarball/${commit}" | tar xz && \
|
|
"aws-aws-elastic-beanstalk-cli-setup-${commit}/scripts/bundled_installer" && \
|
|
ln -s /root/.ebcli-virtual-env/executables/eb /usr/local/bin/eb && \
|
|
\
|
|
gcloud=289.0.0 && \
|
|
curl -L "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-${gcloud}-linux-x86_64.tar.gz" | tar xz && \
|
|
ln -s /google-cloud-sdk/bin/gcloud /usr/local/bin/gcloud && \
|
|
\
|
|
gor=1.0.0 && \
|
|
curl -L "https://github.com/buger/goreplay/releases/download/v${gor}/gor_${gor}_x64.tar.gz" | tar xz --directory /usr/local/bin && \
|
|
\
|
|
hub=2.14.2 && \
|
|
curl -fsSL "https://github.com/github/hub/raw/master/script/get" | bash -s ${hub} && \
|
|
\
|
|
kotlin=1.3.72 && \
|
|
curl -L "https://github.com/JetBrains/kotlin/releases/download/v${kotlin}/kotlin-compiler-${kotlin}.zip" -o /kotlin.zip && \
|
|
unzip kotlin.zip && rm kotlin.zip && \
|
|
ln -s /kotlinc/bin/kotlin /usr/local/bin/kotlin && \
|
|
ln -s /kotlinc/bin/kotlinc /usr/local/bin/kotlinc && \
|
|
\
|
|
netlifyctl=0.4.0 && \
|
|
curl -L "https://github.com/netlify/netlifyctl/releases/download/v${netlifyctl}/netlifyctl-linux-amd64-${netlifyctl}.tar.gz" | tar xz --directory /usr/local/bin && \
|
|
\
|
|
rg=12.0.1 && \
|
|
curl -L "https://github.com/BurntSushi/ripgrep/releases/download/${rg}/ripgrep-${rg}-x86_64-unknown-linux-musl.tar.gz" | tar xz && \
|
|
ln -s "/ripgrep-${rg}-x86_64-unknown-linux-musl/rg" /usr/local/bin/rg && \
|
|
\
|
|
sbt=1.3.4 && \
|
|
curl -L "https://piccolo.link/sbt-${sbt}.tgz" | tar xz && \
|
|
ln -s /sbt/bin/sbt /usr/local/bin/sbt && \
|
|
sbt --version && sbt --version && \
|
|
\
|
|
add-apt-repository -y ppa:longsleep/golang-backports `#go` && \
|
|
add-apt-repository -y ppa:ondrej/php `#php5` && \
|
|
add-apt-repository -y ppa:projectatomic/ppa `#podman` && \
|
|
wget -qO - https://download.sublimetext.com/sublimehq-pub.gpg | sudo apt-key add - `#subl` && \
|
|
add-apt-repository -y "deb https://download.sublimetext.com/ apt/stable/" `#subl` && \
|
|
apt-get update && DEBIAN_FRONTEND="noninteractive" apt-get install --no-install-recommends -y -qq \
|
|
golang-go=2:1.14* `# go=1.14.2` \
|
|
php5.6=5.6.40* `# php5=5.6.40` \
|
|
podman=1.6.2* \
|
|
sublime-text=3211 `# subl=3211` && \
|
|
ln -s /usr/bin/php5.6 /usr/bin/php5 && \
|
|
\
|
|
curl -L "https://nodejs.org/dist/v${node}/node-v${node}-linux-x64.tar.gz" | tar xz && \
|
|
\
|
|
npm install --global --no-optional `# npm=6.14.5` \
|
|
brunch@"=3.0.0" \
|
|
grunt-cli@"=1.3.2" \
|
|
gulp-cli@"=2.2.0" \
|
|
heroku@"=7.39.3" \
|
|
netlify-cli@"=2.33.0" \
|
|
serverless@"=1.67.3" `# sls=1.67.3` && \
|
|
\
|
|
apt-get -y autoremove && apt-get -y clean && rm -rf /var/lib/apt/lists/*
|