diff options
author | Christian Grothoff <christian@grothoff.org> | 2022-06-28 22:01:16 +0200 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2022-06-28 22:01:16 +0200 |
commit | 4347ba3e734b3f8c762f74792f408a317da1ceea (patch) | |
tree | 1d62e66291f189edf8399cc14e7ba45c586b66f0 /packaging | |
parent | f3888d727a939a4b767e533ea5ed70cf26080046 (diff) | |
download | deployment-4347ba3e734b3f8c762f74792f408a317da1ceea.tar.gz deployment-4347ba3e734b3f8c762f74792f408a317da1ceea.tar.bz2 deployment-4347ba3e734b3f8c762f74792f408a317da1ceea.zip |
packs
Diffstat (limited to 'packaging')
-rw-r--r-- | packaging/ubuntu-docker/Dockerfile | 29 | ||||
-rw-r--r-- | packaging/ubuntu-docker/README | 9 | ||||
-rw-r--r-- | packaging/ubuntu-docker/debbuild.sh | 37 | ||||
-rwxr-xr-x | packaging/ubuntu-docker/run.sh | 16 | ||||
-rw-r--r-- | packaging/ubuntu-docker/taler-systems.gpg.key | 41 | ||||
-rw-r--r-- | packaging/ubuntu-docker/taler.list | 1 |
6 files changed, 133 insertions, 0 deletions
diff --git a/packaging/ubuntu-docker/Dockerfile b/packaging/ubuntu-docker/Dockerfile new file mode 100644 index 0000000..feb32bc --- /dev/null +++ b/packaging/ubuntu-docker/Dockerfile @@ -0,0 +1,29 @@ +FROM ubuntu:jammy +# 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 +RUN apt-get -y install libzbar-dev libmysqlclient-dev mandoc libpulse-dev libgstreamer1.0-dev libgstreamer-plugins-good1.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 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 + +COPY debbuild.sh /root +RUN chmod +x /root/debbuild.sh +RUN /root/debbuild.sh diff --git a/packaging/ubuntu-docker/README b/packaging/ubuntu-docker/README new file mode 100644 index 0000000..b10636a --- /dev/null +++ b/packaging/ubuntu-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! diff --git a/packaging/ubuntu-docker/debbuild.sh b/packaging/ubuntu-docker/debbuild.sh new file mode 100644 index 0000000..7c46f89 --- /dev/null +++ b/packaging/ubuntu-docker/debbuild.sh @@ -0,0 +1,37 @@ +#!/bin/sh +# This file is in the public domain. +# Helper script to build the latest DEB packages in the container. + +set -eu +unset LD_LIBRARY_PATH + +mkdir /build +cd /build + +# Fetch source +git clone git://git.gnunet.org/gnunet +git clone git://git.gnunet.org/gnunet-gtk +git clone git://git.taler.net/exchange +git clone git://git.taler.net/merchant +git clone git://git.taler.net/sync +git clone git://git.taler.net/anastasis +git clone git://git.taler.net/anastasis-gtk +git clone git://git.taler.net/wallet-core + +for n in gnunet gnunet-gtk exchange merchant sync anastasis anastasis-gtk +do + cd $n + ./bootstrap + dpkg-buildpackage -rfakeroot -b -uc -us + cd .. + dpkg -i *.deb +done + +cd wallet-core +./bootstrap +./configure --prefix=/usr +make install +dpkg-buildpackage -rfakeroot -b -uc -us +cd .. + +tar cvf packages.tgz *.deb diff --git a/packaging/ubuntu-docker/run.sh b/packaging/ubuntu-docker/run.sh new file mode 100755 index 0000000..44f35cc --- /dev/null +++ b/packaging/ubuntu-docker/run.sh @@ -0,0 +1,16 @@ +#!/bin/sh +set -eu +CONTAINER=$USER/debbuilder:latest +docker build -t $CONTAINER . +rm -rf dist +mkdir dist +docker run --name fx $CONTAINER sleep 5 & +DOCKPID=$! +sleep 1 +docker cp "fx:/build/packages.tgz" . +wait $DOCKPID +docker rm fx +cd dist +tar xvf ../packages.tgz +cd .. +rm packages.tgz diff --git a/packaging/ubuntu-docker/taler-systems.gpg.key b/packaging/ubuntu-docker/taler-systems.gpg.key new file mode 100644 index 0000000..149997b --- /dev/null +++ b/packaging/ubuntu-docker/taler-systems.gpg.key @@ -0,0 +1,41 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +H4p6tTVrJ0X8GPAs9cgCzkFVp3ZUh1zoJl2Z3A== +=uVVb +-----END PGP PUBLIC KEY BLOCK----- diff --git a/packaging/ubuntu-docker/taler.list b/packaging/ubuntu-docker/taler.list new file mode 100644 index 0000000..29cea42 --- /dev/null +++ b/packaging/ubuntu-docker/taler.list @@ -0,0 +1 @@ +deb https://deb.taler.net/apt/ubuntu jammy main |