Dockerfile 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. FROM ubuntu:24.04
  2. ENV DEBIAN_FRONTEND=noninteractive
  3. ENV LC_ALL C.UTF-8
  4. ARG VIM_VERSION=v9.1.0016
  5. ARG YCM_VIM_PYTHON=python3
  6. ARG NODE_MAJOR=18
  7. RUN apt-get update && \
  8. apt-get -y dist-upgrade && \
  9. apt-get -y --no-install-recommends install \
  10. gnupg \
  11. locales \
  12. tzdata \
  13. language-pack-en \
  14. sudo \
  15. libncurses5-dev libncursesw5-dev \
  16. git \
  17. build-essential \
  18. cmake \
  19. python3-dev \
  20. python3-pip \
  21. python3-setuptools \
  22. python3-wheel \
  23. openjdk-11-jdk-headless \
  24. nodejs \
  25. npm \
  26. vim-nox \
  27. zlib1g-dev && \
  28. apt-get -y autoremove
  29. RUN ln -fs /usr/share/zoneinfo/Europe/London /etc/localtime && \
  30. dpkg-reconfigure --frontend noninteractive tzdata
  31. ENV CONF_ARGS "--with-features=huge \
  32. --enable-${YCM_VIM_PYTHON}interp \
  33. --enable-terminal \
  34. --enable-multibyte \
  35. --enable-fail-if-missing"
  36. RUN mkdir -p $HOME/vim && \
  37. cd $HOME/vim && \
  38. git clone https://github.com/vim/vim && \
  39. cd vim && \
  40. git checkout ${VIM_VERSION} && \
  41. make -j 4 && \
  42. make install
  43. # clean up
  44. RUN rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* &&\
  45. rm -rf ~/.cache && \
  46. rm -rf $HOME/vim