summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2023-01-11 21:18:33 +0100
committerChristian Grothoff <christian@grothoff.org>2023-01-11 21:18:33 +0100
commitbabdd8ed7ca2d6894da1ac4891f2a90231f0eb33 (patch)
tree39f5b9361c0821f4705d2bf1b6dd64d3805d8712
parente3da5213fb0add61f7266a3f115c330df3e581d3 (diff)
downloaddeployment-babdd8ed7ca2d6894da1ac4891f2a90231f0eb33.tar.gz
deployment-babdd8ed7ca2d6894da1ac4891f2a90231f0eb33.tar.bz2
deployment-babdd8ed7ca2d6894da1ac4891f2a90231f0eb33.zip
add Dockerfile that should have been added many months ago...
-rw-r--r--packaging/debian-docker/Dockerfile48
-rw-r--r--packaging/debian-docker/README9
2 files changed, 57 insertions, 0 deletions
diff --git a/packaging/debian-docker/Dockerfile b/packaging/debian-docker/Dockerfile
new file mode 100644
index 0000000..181bbd9
--- /dev/null
+++ b/packaging/debian-docker/Dockerfile
@@ -0,0 +1,48 @@
+FROM debian:bullseye
+# This file is in the public domain.
+#
+# Docker image to build Ubuntu packages of
+# GNUnet, GNU Taler and GNU Anastasis.
+
+ARG DEBIAN_FRONTEND=noninteractive
+
+# Install dependencies
+RUN apt-get update
+RUN apt-get -y upgrade
+RUN apt-get -y install build-essential zip jq python3 python3-pip nodejs npm
+RUN apt-get -y install autoconf automake gcc make libtool libltdl-dev libmicrohttpd-dev libpq-dev libsqlite3-dev libunistring-dev libqrencode-dev libgcrypt-dev libsodium-dev libargon2-dev libjansson-dev recutils libgmp-dev texinfo pkgconf zlib1g-dev libopus-dev libextractor-dev libnss3-dev libcurl4-gnutls-dev autopoint linux-libc-dev python3-sphinx python3-sphinxcontrib.httpdomain policykit-1
+RUN apt-get -y install libzbar-dev default-libmysqlclient-dev mandoc libpulse-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libbluetooth-dev iptables miniupnpc libpng-dev
+RUN apt-get -y install python3-jinja2 doxygen libjose-dev iproute2 sudo
+RUN apt-get -y install wget zile
+RUN apt-get -y install libogg-dev gettext net-tools po-debconf debhelper-compat dbconfig-pgsql nginx
+RUN apt-get -y install libgtk-3-dev libgladeui-dev libmagic-dev
+RUN apt-get -y install dbconfig-no-thanks
+RUN apt-get -y install apt-utils
+
+RUN pip install sphinx_rtd_theme
+RUN npm install -g npm
+RUN /usr/local/bin/npm install -g npm pnpm node
+
+COPY taler.list /etc/apt/sources.list.d/
+COPY taler-systems.gpg.key /root
+RUN apt-key add /root/taler-systems.gpg.key
+
+RUN apt-get update
+RUN apt-get -y upgrade
+RUN apt-get -y dist-upgrade
+
+COPY gnunet-build.sh /root/
+RUN chmod +x /root/gnunet-build.sh
+RUN /root/gnunet-build.sh v0.18.1-deb
+COPY taler-build.sh /root/
+RUN chmod +x /root/taler-build.sh
+RUN /root/taler-build.sh v0.9.0
+COPY sync-build.sh /root/
+RUN chmod +x /root/sync-build.sh
+RUN /root/sync-build.sh master
+COPY anastasis-build.sh /root/
+RUN chmod +x /root/anastasis-build.sh
+RUN /root/anastasis-build.sh master
+COPY wallet-build.sh /root/
+RUN chmod +x /root/wallet-build.sh
+RUN /root/wallet-build.sh master
diff --git a/packaging/debian-docker/README b/packaging/debian-docker/README
new file mode 100644
index 0000000..b10636a
--- /dev/null
+++ b/packaging/debian-docker/README
@@ -0,0 +1,9 @@
+Scripts to build Ubuntu packages from source.
+
+TODO:
+- check build for warnings/missing dependencies
+ (espcially GNUnet!)
+- break up into separate build for GNUnet/Taler/Anastasis
+- integrate with buildbot (integrationtests?)
+ to build-on-tag
+- support other architectures!