76 lines
2.4 KiB
Docker
76 lines
2.4 KiB
Docker
FROM ubuntu:18.04
|
|
|
|
ENV DEBIAN_FRONTEND=noninteractive
|
|
ENV LC_ALL C.UTF-8
|
|
|
|
RUN apt-get update && \
|
|
apt-get install -y curl \
|
|
dirmngr \
|
|
apt-transport-https \
|
|
lsb-release \
|
|
ca-certificates \
|
|
software-properties-common && \
|
|
curl -sL https://deb.nodesource.com/setup_12.x | bash - && \
|
|
add-apt-repository ppa:bartbes/love-stable -y && \
|
|
apt-get update && \
|
|
apt-get -y dist-upgrade && \
|
|
apt-get -y install gcc-8 \
|
|
g++-8 \
|
|
python3-dev \
|
|
python3-pip \
|
|
python3-venv \
|
|
ca-cacert \
|
|
locales \
|
|
language-pack-en \
|
|
libncurses5-dev libncursesw5-dev \
|
|
git \
|
|
tcl-dev \
|
|
tcllib \
|
|
gdb \
|
|
lldb \
|
|
nodejs \
|
|
lua5.1 \
|
|
luajit \
|
|
love && \
|
|
apt-get -y autoremove
|
|
|
|
RUN ln -fs /usr/share/zoneinfo/Europe/London /etc/localtime && \
|
|
dpkg-reconfigure --frontend noninteractive tzdata
|
|
|
|
RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 1 \
|
|
--slave /usr/bin/g++ g++ /usr/bin/g++-8
|
|
|
|
## cleanup of files from setup
|
|
RUN rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
|
|
|
ARG VIM_VERSION=v8.2.0716
|
|
|
|
ENV CONF_ARGS "--with-features=huge \
|
|
--enable-python3interp \
|
|
--enable-terminal \
|
|
--enable-multibyte \
|
|
--enable-fail-if-missing"
|
|
|
|
RUN mkdir -p $HOME/vim && \
|
|
cd $HOME/vim && \
|
|
git clone https://github.com/vim/vim && \
|
|
cd vim && \
|
|
git checkout ${VIM_VERSION} && \
|
|
make -j 4 && \
|
|
make install
|
|
|
|
# linuxbrew (homebrew)
|
|
RUN mkdir -p /home/linuxbrew/.linuxbrew &&\
|
|
chmod -R go+rwx /home/linuxbrew && \
|
|
mkdir -p /home/linuxbrew/.linuxbrew/bin && \
|
|
git clone https://github.com/Homebrew/brew /home/linuxbrew/.linuxbrew/Homebrew && \
|
|
ln -s /home/linuxbrew/.linuxbrew/Homebrew/bin/brew /home/linuxbrew/.linuxbrew/bin && \
|
|
echo "eval \$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)" \
|
|
> /etc/bash.bashrc
|
|
|
|
RUN /home/linuxbrew/.linuxbrew/bin/brew install golang
|
|
|
|
# clean up
|
|
RUN /home/linuxbrew/.linuxbrew/bin/brew cleanup && \
|
|
rm -rf ~/.cache && \
|
|
rm -rf $HOME/vim
|