Louis Maillard | 31d31f8 | 2024-07-26 10:09:38 -0400 | [diff] [blame] | 1 | FROM ubuntu:20.04 |
| 2 | |
| 3 | WORKDIR /build |
| 4 | |
| 5 | ENV EMAIL="contact@savoirfairelinux.com" |
| 6 | ENV DEBFULLNAME="Savoir-faire Linux" |
| 7 | |
| 8 | RUN apt-get update && \ |
| 9 | echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections && \ |
| 10 | apt-get install -y \ |
| 11 | dialog apt-utils make devscripts build-essential debmake lintian \ |
| 12 | && apt-get clean && \ |
Louis Maillard | cd1117c | 2024-09-03 13:42:35 -0400 | [diff] [blame^] | 13 | mkdir -p /build/artifacts |
Louis Maillard | 31d31f8 | 2024-07-26 10:09:38 -0400 | [diff] [blame] | 14 | |
| 15 | RUN apt-get update && apt-get install -y \ |
| 16 | build-essential pkg-config cmake dpkg-dev gcc g++ git wget \ |
| 17 | libtool autotools-dev autoconf automake sbuild autopkgtest debhelper debhelper-compat \ |
| 18 | cython3 python3-dev python3-setuptools python3-virtualenv \ |
| 19 | # replacement for python3-build: |
| 20 | python3 python3-pip python-is-python3 python3-distutils python3-distutils-extra \ |
| 21 | libncurses5-dev libreadline-dev nettle-dev libcppunit-dev \ |
| 22 | libgnutls28-dev libuv1-dev libjsoncpp-dev libargon2-dev libunistring-dev \ |
| 23 | libssl-dev libfmt-dev libasio-dev libmsgpack-dev libyaml-cpp-dev \ |
Louis Maillard | b3eb73a | 2024-07-30 16:13:25 -0400 | [diff] [blame] | 24 | libupnp-dev libnatpmp-dev \ |
Louis Maillard | 31d31f8 | 2024-07-26 10:09:38 -0400 | [diff] [blame] | 25 | systemd \ |
| 26 | && apt-get clean && rm -rf /var/lib/apt/lists/* /var/cache/apt/* && \ |
| 27 | pip install build |
| 28 | |
| 29 | ARG PKG_NAME |
| 30 | COPY deb-${PKG_NAME}.tar.gz /build/${PKG_NAME}.tar.gz |
| 31 | |
| 32 | CMD tar -xzf ${PKG_NAME}.tar.gz && \ |
| 33 | cd ${PKG_NAME} && \ |
| 34 | debmake -b "dhtnet:bin" -y && \ |
| 35 | debuild && \ |
| 36 | cd .. && \ |
| 37 | rm -Rf ${PKG_NAME} ${PKG_NAME}.tar.gz && \ |
Louis Maillard | cd1117c | 2024-09-03 13:42:35 -0400 | [diff] [blame^] | 38 | cp /build/*.deb /build/artifacts/ |