mirror of
https://github.com/vyos/vyos-build.git
synced 2025-10-01 20:28:40 +02:00
Docker: Make OPAM system wide available
This commit is contained in:
parent
873cf3a68f
commit
b4dfb255ed
@ -23,6 +23,7 @@ RUN apt-get update && apt-get install -y \
|
|||||||
curl \
|
curl \
|
||||||
make \
|
make \
|
||||||
sudo \
|
sudo \
|
||||||
|
mc \
|
||||||
live-build \
|
live-build \
|
||||||
pbuilder \
|
pbuilder \
|
||||||
devscripts \
|
devscripts \
|
||||||
@ -191,10 +192,13 @@ RUN apt-get update && apt-get install -y \
|
|||||||
# Packages needed for libvyosconfig
|
# Packages needed for libvyosconfig
|
||||||
RUN curl https://raw.githubusercontent.com/ocaml/opam/2.0.2/shell/install.sh --output /tmp/opam_install.sh && \
|
RUN curl https://raw.githubusercontent.com/ocaml/opam/2.0.2/shell/install.sh --output /tmp/opam_install.sh && \
|
||||||
sed -i 's/read BINDIR/BINDIR=""/' /tmp/opam_install.sh && sh /tmp/opam_install.sh && \
|
sed -i 's/read BINDIR/BINDIR=""/' /tmp/opam_install.sh && sh /tmp/opam_install.sh && \
|
||||||
opam init --disable-sandboxing && \
|
opam init --root=/opt/opam --comp=4.07.0 --disable-sandboxing
|
||||||
eval $(opam env) && opam switch create 4.07.0 && \
|
|
||||||
eval $(opam env) && opam install -y oasis && \
|
RUN eval $(opam env --root=/opt/opam --set-root) && \
|
||||||
eval $(opam env) && opam install -y \
|
opam install -y \
|
||||||
|
oasis
|
||||||
|
|
||||||
|
RUN eval $(opam env --root=/opt/opam --set-root) && opam install -y \
|
||||||
fileutils \
|
fileutils \
|
||||||
lwt \
|
lwt \
|
||||||
lwt_ppx \
|
lwt_ppx \
|
||||||
@ -210,14 +214,14 @@ RUN curl https://raw.githubusercontent.com/ocaml/opam/2.0.2/shell/install.sh --o
|
|||||||
ocaml-protoc \
|
ocaml-protoc \
|
||||||
ctypes-foreign
|
ctypes-foreign
|
||||||
|
|
||||||
RUN eval $(opam env) && opam install -y \
|
RUN eval $(opam env --root=/opt/opam --set-root) && opam install -y \
|
||||||
ctypes
|
ctypes
|
||||||
|
|
||||||
# Build VyConf which is required to build libvyosconfig
|
# Build VyConf which is required to build libvyosconfig
|
||||||
RUN eval $(opam env) && \
|
RUN eval $(opam env --root=/opt/opam --set-root) && \
|
||||||
git clone https://github.com/vyos/vyconf.git && \
|
git clone https://github.com/vyos/vyconf.git /tmp/vyconf && \
|
||||||
cd vyconf && \
|
cd /tmp/vyconf && \
|
||||||
git checkout 0f121c12a84200 && \
|
git checkout v0.1 && \
|
||||||
./build-setup.sh && \
|
./build-setup.sh && \
|
||||||
./configure --enable-tests && \
|
./configure --enable-tests && \
|
||||||
make && \
|
make && \
|
||||||
@ -225,10 +229,10 @@ RUN eval $(opam env) && \
|
|||||||
make install
|
make install
|
||||||
|
|
||||||
# Build libvyosconfig
|
# Build libvyosconfig
|
||||||
RUN eval $(opam env) && \
|
RUN eval $(opam env --root=/opt/opam --set-root) && \
|
||||||
git clone https://github.com/vyos/libvyosconfig && \
|
git clone https://github.com/vyos/libvyosconfig && \
|
||||||
cd libvyosconfig && \
|
cd libvyosconfig && \
|
||||||
git checkout e75e4ae638c49e && \
|
git checkout v0.0.4 && \
|
||||||
dpkg-buildpackage -uc -us -tc -b && \
|
dpkg-buildpackage -uc -us -tc -b && \
|
||||||
dpkg -i ../libvyosconfig0_*_amd64.deb
|
dpkg -i ../libvyosconfig0_*_amd64.deb
|
||||||
|
|
||||||
@ -236,6 +240,10 @@ RUN eval $(opam env) && \
|
|||||||
RUN apt-get update && apt-get install -y \
|
RUN apt-get update && apt-get install -y \
|
||||||
whois
|
whois
|
||||||
|
|
||||||
|
# Packages needed for vyos-xe-guest-utilities
|
||||||
|
RUN apt-get update && apt-get install -y \
|
||||||
|
golang
|
||||||
|
|
||||||
# Update live-build
|
# Update live-build
|
||||||
RUN echo 'deb http://ftp.debian.org/debian stretch main' | tee -a /etc/apt/sources.list.d/stretch.list && \
|
RUN echo 'deb http://ftp.debian.org/debian stretch main' | tee -a /etc/apt/sources.list.d/stretch.list && \
|
||||||
apt-get update && apt-get install -y -t stretch live-build && \
|
apt-get update && apt-get install -y -t stretch live-build && \
|
||||||
|
|||||||
@ -23,6 +23,10 @@ if ! grep -q $NEW_GID /etc/group; then
|
|||||||
groupadd --gid $NEW_GID $USER_NAME
|
groupadd --gid $NEW_GID $USER_NAME
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# libvyosconfig depends on OCaml/OPAM so we make sure
|
||||||
|
# we can use it
|
||||||
|
echo "eval \$(opam env --root=/opt/opam --set-root)" >> /etc/skel/.bashrc
|
||||||
|
|
||||||
useradd --shell /bin/bash --uid $NEW_UID --gid $NEW_GID --non-unique --create-home $USER_NAME
|
useradd --shell /bin/bash --uid $NEW_UID --gid $NEW_GID --non-unique --create-home $USER_NAME
|
||||||
usermod --append --groups sudo $USER_NAME
|
usermod --append --groups sudo $USER_NAME
|
||||||
sudo chown $NEW_UID:$NEW_GID /home/$USER_NAME
|
sudo chown $NEW_UID:$NEW_GID /home/$USER_NAME
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user