summaryrefslogtreecommitdiffstats
path: root/test/docker/debian10
diff options
context:
space:
mode:
Diffstat (limited to 'test/docker/debian10')
-rw-r--r--test/docker/debian10/Dockerfile20
-rwxr-xr-xtest/docker/debian10/install-packages.sh113
2 files changed, 133 insertions, 0 deletions
diff --git a/test/docker/debian10/Dockerfile b/test/docker/debian10/Dockerfile
new file mode 100644
index 0000000..1a19fa3
--- /dev/null
+++ b/test/docker/debian10/Dockerfile
@@ -0,0 +1,20 @@
+FROM debian:10
+
+RUN export DEBIAN_FRONTEND=noninteractive \
+ && apt-get update \
+ && apt-get -y upgrade \
+ && apt-get -y --no-install-recommends install \
+ autoconf \
+ automake \
+ make \
+ python3-pexpect \
+ python3-pytest-xdist \
+ xvfb xauth \
+ && ln -s $(bash -c "type -P pytest-3") /usr/local/bin/pytest
+
+ADD test-cmd-list.txt \
+ docker/debian10/install-packages.sh \
+ /tmp/
+
+RUN /tmp/install-packages.sh </tmp/test-cmd-list.txt \
+ && rm -r /tmp/* /var/lib/apt/lists/*
diff --git a/test/docker/debian10/install-packages.sh b/test/docker/debian10/install-packages.sh
new file mode 100755
index 0000000..20d6556
--- /dev/null
+++ b/test/docker/debian10/install-packages.sh
@@ -0,0 +1,113 @@
+#!/bin/bash
+set -xeuo pipefail
+
+cd "${TMPDIR:-/tmp}"
+
+shopt -s extglob
+export DEBIAN_FRONTEND=noninteractive
+
+dpkg --add-architecture i386 # for wine
+
+apt-get update
+apt-get -y upgrade
+
+apt-get -y --no-install-recommends install \
+ apt-file \
+ software-properties-common
+
+apt-add-repository contrib
+apt-add-repository non-free
+
+apt-get -y --no-install-recommends install \
+ npm
+
+npm install -g jshint
+npm cache clean --force
+
+apt-file update
+
+excluded=$(
+ cat <<\EOF
+arping
+bcron
+bison++
+fuse
+gdb-minimal
+gnat-7
+ifupdown
+inetutils-ping
+lpr
+lprng
+make-guile
+netscript-2.4
+ntpsec-ntpdate
+openresolv
+pkg-config
+strongswan-starter
+sudo-ldap
+systemd-cron
+EOF
+)
+
+# https://github.com/moby/moby/issues/1297
+echo "resolvconf resolvconf/linkify-resolvconf boolean false" |
+ debconf-set-selections
+
+# Work around https://bugs.debian.org/1040925
+apt-get -y --no-install-recommends install \
+ ca-certificates-java
+
+while read -r file; do
+ case $file in
+ /*) printf "%s\n" "$file" ;;
+ *) printf "%s\n" {/usr,}/{,s}bin/"$file" ;;
+ esac
+done |
+ apt-file -lFf search - |
+ grep -vF "$excluded" |
+ xargs apt-get -y --no-install-recommends install
+
+# Required but not pulled in by dependencies:
+apt-get -y --no-install-recommends install \
+ postgresql-client
+
+# Build some *BSD tools for testing
+
+apt-get -y --no-install-recommends install \
+ build-essential
+
+install -dm 755 /usr/local/lib/bsd-bin
+apt-get -y --no-install-recommends install bison libbsd-dev subversion
+
+svn co https://svn.freebsd.org/base/release/11.1.0/usr.bin/sed bsd-sed
+cd bsd-sed
+sed -i -e 's,^__FBSDID.*,#include <bsd/bsd.h>,' ./*.c
+cc -O2 -g -Wall -Wno-unused-const-variable -D_GNU_SOURCE ./*.c \
+ -lbsd -o /usr/local/lib/bsd-bin/sed
+cd ..
+rm -r bsd-sed
+
+svn co https://svn.freebsd.org/base/release/11.1.0/contrib/one-true-awk
+cd one-true-awk
+sed -i -e /^__FBSDID/d ./*.c
+make YACC="bison -d -y"
+install a.out /usr/local/lib/bsd-bin/awk
+cd ..
+rm -r one-true-awk
+
+# Install slapt-get and slapt-src
+
+cd /
+curl --fail https://software.jaos.org/slackpacks/slackware64-14.2/slapt-get/slapt-get-0.11.3-x86_64-1.txz |
+ tar xvJ
+bash -x install/doinst.sh
+mkdir -p var/lib/pkgtools/packages # 0.11.3 --available empty without this dir
+rm -r install
+curl --fail https://software.jaos.org/slackpacks/slackware64-14.2/slapt-src/slapt-src-0.3.6-x86_64-1.txz |
+ tar xvJ
+bash -x install/doinst.sh
+rm -r install
+cp -a usr/lib64/* usr/lib/
+ln -s libcrypto.so.1.1 usr/lib/x86_64-linux-gnu/libcrypto.so.1
+rm -r usr/lib64
+cd -