commit 87d6a679f44ad905a345be4c6fd934ab2e937ae7
parent 0c3a266beb732d36a68980e630e2cf089d70c27f
Author: Florian Dold <florian@dold.me>
Date: Thu, 30 Nov 2023 15:16:24 +0100
-packaging ng
Diffstat:
6 files changed, 95 insertions(+), 33 deletions(-)
diff --git a/packaging/ng/Dockerfile.debian-bookworm b/packaging/ng/Dockerfile.debian-bookworm
@@ -0,0 +1,37 @@
+FROM debian:bookworm
+# 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 libmariadb-dev-compat libmariadb-dev mandoc libpulse-dev libgstreamer1.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 policykit-1
+RUN apt-get -y install dbconfig-no-thanks
+RUN apt-get -y install devscripts equivs
+# For libeufin:
+RUN apt-get -y install python3-click python3-requests python3
+
+RUN apt-get -y install \
+ openjdk-17-jre-headless \
+ openjdk-17-jdk-headless \
+ default-jre-headless \
+ ;
+
+
+RUN pip install sphinx_rtd_theme --break-system-packages
+#RUN npm install -g npm
+RUN npm install -g pnpm
+
+RUN apt-get update
+RUN apt-get -y upgrade
+RUN apt-get -y dist-upgrade
diff --git a/packaging/ng/build-debian-bookworm.sh b/packaging/ng/build-debian-bookworm.sh
@@ -0,0 +1,25 @@
+#!/usr/bin/env bash
+
+# Build debian packages.
+
+set -eu
+
+DISTRO=debian
+DISTRO_VERNAME=bookworm
+LABEL=$DISTRO-$DISTRO_VERNAME
+
+IMAGE_TAG=taler-packaging-$LABEL:latest
+DOCKERFILE=Dockerfile.$LABEL
+PKGDIR=packages/$LABEL
+
+echo "Building $IMAGE_TAG from $DOCKERFILE"
+
+# Build the base image. Usually fast because it's cached.
+docker build -t $IMAGE_TAG -f $DOCKERFILE .
+
+mkdir -p $PKGDIR
+
+# echo docker run -it --mount type=bind,source="$(pwd)"/buildscripts,target=/buildscripts,readonly --mount type=bind,source="$(pwd)"/$PKGDIR,target=/pkgdir $IMAGE_TAG /bin/bash
+#docker run -it --entrypoint=/bin/bash --mount type=bind,source="$(pwd)"/buildscripts,target=/buildscripts,readonly --mount type=bind,source="$(pwd)"/$PKGDIR,target=/pkgdir $IMAGE_TAG /buildscripts/build-gnunet.sh
+docker run -it --entrypoint=/bin/bash --mount type=bind,source="$(pwd)"/buildscripts,target=/buildscripts,readonly --mount type=bind,source="$(pwd)"/$PKGDIR,target=/pkgdir $IMAGE_TAG /buildscripts/libeufin-build.sh master
+docker run -it --entrypoint=/bin/bash --mount type=bind,source="$(pwd)"/buildscripts,target=/buildscripts,readonly --mount type=bind,source="$(pwd)"/$PKGDIR,target=/pkgdir $IMAGE_TAG /buildscripts/wallet-build.sh master
diff --git a/packaging/ng/build-ubuntu-kinetic.sh b/packaging/ng/build-ubuntu-kinetic.sh
@@ -0,0 +1,23 @@
+#!/usr/bin/env bash
+
+# Build debian packages.
+
+set -eu
+
+DISTRO=ubuntu
+DISTRO_VERNAME=kinetic
+LABEL=$DISTRO-$DISTRO_VERNAME
+
+IMAGE_TAG=taler-packaging-$LABEL:latest
+DOCKERFILE=Dockerfile.$LABEL
+PKGDIR=packages/$LABEL
+
+echo "Building $IMAGE_TAG from $DOCKERFILE"
+
+# Build the base image. Usually fast because it's cached.
+docker build -t $IMAGE_TAG -f $DOCKERFILE .
+
+mkdir -p $PKGDIR
+
+# echo docker run -it --mount type=bind,source="$(pwd)"/buildscripts,target=/buildscripts,readonly --mount type=bind,source="$(pwd)"/$PKGDIR,target=/pkgdir $IMAGE_TAG /bin/bash
+#docker run -it --entrypoint=/bin/bash --mount type=bind,source="$(pwd)"/buildscripts,target=/buildscripts,readonly --mount type=bind,source="$(pwd)"/$PKGDIR,target=/pkgdir $IMAGE_TAG /buildscripts/build-gnunet.sh
diff --git a/packaging/ng/build.sh b/packaging/ng/build.sh
@@ -1,23 +0,0 @@
-#!/usr/bin/env bash
-
-# Build debian packages.
-
-set -eu
-
-DISTRO=ubuntu
-DISTRO_VERNAME=kinetic
-LABEL=$DISTRO-$DISTRO_VERNAME
-
-IMAGE_TAG=taler-packaging-$LABEL:latest
-DOCKERFILE=Dockerfile.$LABEL
-PKGDIR=packages/$LABEL
-
-echo "Building $IMAGE_TAG from $DOCKERFILE"
-
-# Build the base image. Usually fast because it's cached.
-docker build -t $IMAGE_TAG -f $DOCKERFILE .
-
-mkdir -p $PKGDIR
-
-# echo docker run -it --mount type=bind,source="$(pwd)"/buildscripts,target=/buildscripts,readonly --mount type=bind,source="$(pwd)"/$PKGDIR,target=/pkgdir $IMAGE_TAG /bin/bash
-docker run -it --entrypoint=/bin/bash --mount type=bind,source="$(pwd)"/buildscripts,target=/buildscripts,readonly --mount type=bind,source="$(pwd)"/$PKGDIR,target=/pkgdir $IMAGE_TAG /buildscripts/build-gnunet.sh
diff --git a/packaging/ng/buildscripts/libeufin-build.sh b/packaging/ng/buildscripts/libeufin-build.sh
@@ -4,8 +4,8 @@
set -eu
unset LD_LIBRARY_PATH
-mkdir -p /build/libeufin
-cd /build/libeufin
+mkdir -p /build
+cd /build
# Fetch source
rm -rf *
@@ -15,8 +15,9 @@ git checkout $1
./bootstrap
./configure --prefix=/usr/local
make deb
-cd ..
-dpkg -i *.deb
-tar uvf ../packages.tgz *.deb
-cd ..
+cp /build/*.deb /pkgdir/
+
+dpkg -i /build/*.deb
+
+
diff --git a/packaging/ng/buildscripts/wallet-build.sh b/packaging/ng/buildscripts/wallet-build.sh
@@ -5,8 +5,8 @@
set -eu
unset LD_LIBRARY_PATH
-mkdir -p /build/wallet
-cd /build/wallet
+mkdir -p /build
+cd /build
# Fetch source
rm -rf *
@@ -27,6 +27,5 @@ make install
dpkg-buildpackage -rfakeroot -b -uc -us
cd ..
-tar uvf ../../../packages.tgz *.deb
-cd ../../..
+cp /build/wallet-core/packages/*.deb /pkgdir/