# # Debian Sid Base # # A number of our guests exist as ports only. We can either use the # ports repo or get everything from Sid. However Sid is a rolling # distro which may be broken at any particular time. If you are # unlucky and try and build your images while gcc is in the process of # being uploaded this can fail. Your only recourse is to try again in # a few hours when the repos have re-synced. Once built however you # won't be affected by repo changes unless the docker recipies are # updated and trigger a re-build. # # This must be earlier than the snapshot date we are aiming for FROM debian:sid-20181011-slim # Use a snapshot known to work (see http://snapshot.debian.org/#Usage) ENV DEBIAN_SNAPSHOT_DATE "20181030" RUN sed -i "s%^deb \(https\?://\)deb.debian.org/debian/\? \(.*\)%deb [check-valid-until=no] \1snapshot.debian.org/archive/debian/${DEBIAN_SNAPSHOT_DATE} \2%" /etc/apt/sources.list # Use a snapshot known to work (see http://snapshot.debian.org/#Usage) ENV DEBIAN_SNAPSHOT_DATE "20181030" RUN sed -i "s%^deb \(https\?://\)deb.debian.org/debian/\? \(.*\)%deb [check-valid-until=no] \1snapshot.debian.org/archive/debian/${DEBIAN_SNAPSHOT_DATE} \2%" /etc/apt/sources.list # Duplicate deb line as deb-src RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >> /etc/apt/sources.list # Install common build utilities RUN apt update && \ DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \ DEBIAN_FRONTEND=noninteractive eatmydata \ apt install -y --no-install-recommends \ bison \ build-essential \ ca-certificates \ flex \ git \ pkg-config \ psmisc \ python \ texinfo || { echo "Failed to build - see debian-sid.docker notes"; exit 1; }