gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-deployment] branch master updated: add jammy


From: gnunet
Subject: [taler-deployment] branch master updated: add jammy
Date: Wed, 13 Sep 2023 12:18:05 +0200

This is an automated email from the git hooks/post-receive script.

grothoff pushed a commit to branch master
in repository deployment.

The following commit(s) were added to refs/heads/master by this push:
     new c4b04b1  add jammy
c4b04b1 is described below

commit c4b04b1d1f7af458b63548cf4566fb58bd45b9ce
Author: Christian Grothoff <christian@grothoff.org>
AuthorDate: Wed Sep 13 12:17:57 2023 +0200

    add jammy
---
 packaging/ubuntu-jammy-docker/Dockerfile          | 56 +++++++++++++++++++++++
 packaging/ubuntu-jammy-docker/README              | 19 ++++++++
 packaging/ubuntu-jammy-docker/anastasis-build.sh  | 27 +++++++++++
 packaging/ubuntu-jammy-docker/exchange-build.sh   | 24 ++++++++++
 packaging/ubuntu-jammy-docker/gnunet-build.sh     | 29 ++++++++++++
 packaging/ubuntu-jammy-docker/gnunet-gtk-build.sh | 27 +++++++++++
 packaging/ubuntu-jammy-docker/libeufin-build.sh   | 22 +++++++++
 packaging/ubuntu-jammy-docker/mdb-build.sh        | 22 +++++++++
 packaging/ubuntu-jammy-docker/merchant-build.sh   | 24 ++++++++++
 packaging/ubuntu-jammy-docker/run.sh              | 21 +++++++++
 packaging/ubuntu-jammy-docker/sync-build.sh       | 27 +++++++++++
 packaging/ubuntu-jammy-docker/taler.list          |  1 +
 packaging/ubuntu-jammy-docker/wallet-build.sh     | 32 +++++++++++++
 13 files changed, 331 insertions(+)

diff --git a/packaging/ubuntu-jammy-docker/Dockerfile 
b/packaging/ubuntu-jammy-docker/Dockerfile
new file mode 100644
index 0000000..a4a309b
--- /dev/null
+++ b/packaging/ubuntu-jammy-docker/Dockerfile
@@ -0,0 +1,56 @@
+FROM ubuntu:jammy
+# This file is in the public domain.
+#
+# Docker image to build Ubuntu packages of
+# GNUnet, GNU Taler and GNU Anastasis.
+#
+# We need 'kinetic' for a reasonably recent NodeJS version.
+
+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 
autoconf automake gcc-12 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 
libzbar-dev libmysqlclient-dev mandoc libpulse-dev libgstreamer1.0-dev 
libgstreamer-plugins-good1.0-dev libbluetoo [...]
+
+# For libeufin:
+RUN apt-get -y install openjdk-17-jdk
+# For wallet-core:
+RUN npm install -g node pnpm
+
+RUN apt-get update
+RUN apt-get -y upgrade
+RUN apt-get -y dist-upgrade
+
+# ADD "https://www.random.org/cgi-bin/randbyte?nbytes=10&format=h"; skipcache
+COPY gnunet-build.sh /root/
+RUN chmod +x /root/gnunet-build.sh
+RUN /root/gnunet-build.sh master
+
+COPY gnunet-gtk-build.sh /root/
+RUN chmod +x /root/gnunet-gtk-build.sh
+RUN /root/gnunet-gtk-build.sh master
+
+COPY libeufin-build.sh /root/
+RUN chmod +x /root/libeufin-build.sh
+RUN /root/libeufin-build.sh master
+
+COPY exchange-build.sh /root/
+RUN chmod +x /root/exchange-build.sh
+RUN /root/exchange-build.sh master
+
+COPY merchant-build.sh /root/
+RUN chmod +x /root/merchant-build.sh
+RUN /root/merchant-build.sh master
+
+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/ubuntu-jammy-docker/README 
b/packaging/ubuntu-jammy-docker/README
new file mode 100644
index 0000000..f4a4824
--- /dev/null
+++ b/packaging/ubuntu-jammy-docker/README
@@ -0,0 +1,19 @@
+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
+  => might be good to not run the entire pipeline only
+     because something changes in anastasis/wallet, as
+     that's not a good reason to re-build GNUnet ;-).
+- integrate with buildbot (integrationtests?)
+  to build-on-tag / build nightly and upload resulting
+  Deb packages to reprepro (fully automated for nightly,
+  but with explicit password-protected signature for tagged builds)
+- support other CPU architectures (by running in VM that emulates
+  other CPU architectures)
+- eventually: try to improve scripts to support older
+  Debian versions
+
diff --git a/packaging/ubuntu-jammy-docker/anastasis-build.sh 
b/packaging/ubuntu-jammy-docker/anastasis-build.sh
new file mode 100644
index 0000000..24643e1
--- /dev/null
+++ b/packaging/ubuntu-jammy-docker/anastasis-build.sh
@@ -0,0 +1,27 @@
+#!/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 -p /build/anastasis
+cd /build/anastasis
+
+# Fetch source
+rm -rf *
+
+for n in anastasis anastasis-gtk
+do
+    git clone git://git.taler.net/$n
+    cd $n
+    git checkout $1
+    ./bootstrap
+    dpkg-buildpackage -rfakeroot -b -uc -us
+    cd ..
+    dpkg -i *.deb
+done
+
+tar uvf ../packages.tgz *.deb
+
+cd ..
diff --git a/packaging/ubuntu-jammy-docker/exchange-build.sh 
b/packaging/ubuntu-jammy-docker/exchange-build.sh
new file mode 100644
index 0000000..36b9ede
--- /dev/null
+++ b/packaging/ubuntu-jammy-docker/exchange-build.sh
@@ -0,0 +1,24 @@
+#!/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 -p /build/taler
+cd /build/taler
+
+# Fetch source
+rm -rf *
+
+pip3 install htmlark
+
+git clone git://git.taler.net/exchange
+cd exchange
+git checkout $1
+./bootstrap
+dpkg-buildpackage -rfakeroot -b -uc -us
+cd ..
+dpkg -i *.deb
+
+tar uvf ../packages.tgz *.deb
+cd ..
diff --git a/packaging/ubuntu-jammy-docker/gnunet-build.sh 
b/packaging/ubuntu-jammy-docker/gnunet-build.sh
new file mode 100644
index 0000000..896bdcf
--- /dev/null
+++ b/packaging/ubuntu-jammy-docker/gnunet-build.sh
@@ -0,0 +1,29 @@
+#!/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 -p /build/gnunet
+cd /build/gnunet
+
+# Fetch source
+rm -rf *
+
+pip3 install sphinx-book-theme
+
+for n in gnunet
+do
+    git clone git://git.gnunet.org/$n
+    cd $n
+    git checkout $1
+    ./bootstrap
+    dpkg-buildpackage -rfakeroot -b -uc -us
+    cd ..
+    dpkg -i *.deb
+done
+
+tar cvf ../packages.tgz *.deb
+
+cd ..
diff --git a/packaging/ubuntu-jammy-docker/gnunet-gtk-build.sh 
b/packaging/ubuntu-jammy-docker/gnunet-gtk-build.sh
new file mode 100644
index 0000000..4414c3f
--- /dev/null
+++ b/packaging/ubuntu-jammy-docker/gnunet-gtk-build.sh
@@ -0,0 +1,27 @@
+#!/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 -p /build/gnunet
+cd /build/gnunet
+
+# Fetch source
+rm -rf *
+
+for n in gnunet-gtk
+do
+    git clone git://git.gnunet.org/$n
+    cd $n
+    git checkout $1
+    ./bootstrap
+    dpkg-buildpackage -rfakeroot -b -uc -us
+    cd ..
+    dpkg -i *.deb
+done
+
+tar uvf ../packages.tgz *.deb
+
+cd ..
diff --git a/packaging/ubuntu-jammy-docker/libeufin-build.sh 
b/packaging/ubuntu-jammy-docker/libeufin-build.sh
new file mode 100644
index 0000000..7229221
--- /dev/null
+++ b/packaging/ubuntu-jammy-docker/libeufin-build.sh
@@ -0,0 +1,22 @@
+#!/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 -p /build/libeufin
+cd /build/libeufin
+
+# Fetch source
+rm -rf *
+git clone git://git.taler.net/libeufin
+cd libeufin
+git checkout $1
+./bootstrap
+./configure --prefix=/usr/local
+make deb
+cd ..
+dpkg -i *.deb
+
+tar uvf ../packages.tgz *.deb
+cd ..
diff --git a/packaging/ubuntu-jammy-docker/mdb-build.sh 
b/packaging/ubuntu-jammy-docker/mdb-build.sh
new file mode 100644
index 0000000..d097240
--- /dev/null
+++ b/packaging/ubuntu-jammy-docker/mdb-build.sh
@@ -0,0 +1,22 @@
+#!/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 -p /build/taler
+cd /build/taler
+
+# Fetch source
+rm -rf *
+
+git clone git://git.taler.net/taler-mdb
+cd taler-mdb
+git checkout $1
+./bootstrap
+dpkg-buildpackage -rfakeroot -b -uc -us
+cd ..
+dpkg -i *.deb
+
+tar uvf ../packages.tgz *.deb
+cd ..
diff --git a/packaging/ubuntu-jammy-docker/merchant-build.sh 
b/packaging/ubuntu-jammy-docker/merchant-build.sh
new file mode 100644
index 0000000..5625198
--- /dev/null
+++ b/packaging/ubuntu-jammy-docker/merchant-build.sh
@@ -0,0 +1,24 @@
+#!/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 -p /build/taler
+cd /build/taler
+
+# Fetch source
+rm -rf *
+
+pip3 install htmlark
+
+git clone git://git.taler.net/merchant
+cd merchant
+git checkout $1
+./bootstrap
+dpkg-buildpackage -rfakeroot -b -uc -us
+cd ..
+dpkg -i *.deb
+
+tar uvf ../packages.tgz *.deb
+cd ..
diff --git a/packaging/ubuntu-jammy-docker/run.sh 
b/packaging/ubuntu-jammy-docker/run.sh
new file mode 100755
index 0000000..a6df3f0
--- /dev/null
+++ b/packaging/ubuntu-jammy-docker/run.sh
@@ -0,0 +1,21 @@
+#!/bin/sh
+set -eu
+CONTAINER=$USER/debbuilder:latest
+docker build -t $CONTAINER .
+rm -rf dist
+mkdir dist
+docker run --read-only $CONTAINER sleep 100 &
+sleep 1
+docker container ls
+ID=`docker container ls | grep $CONTAINER | head -n1 | awk '{print $1}'`
+echo "Extracting files from $ID"
+docker cp "$ID:/build/packages.tgz" .
+echo "Stopping $CONTAINER ($ID)"
+docker container stop $ID
+echo "Removing $CONTAINER"
+docker container rm $ID
+docker image rm $USER/debbuilder
+cd dist
+tar xvf ../packages.tgz
+cd ..
+rm packages.tgz
diff --git a/packaging/ubuntu-jammy-docker/sync-build.sh 
b/packaging/ubuntu-jammy-docker/sync-build.sh
new file mode 100644
index 0000000..e38a0ee
--- /dev/null
+++ b/packaging/ubuntu-jammy-docker/sync-build.sh
@@ -0,0 +1,27 @@
+#!/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 -p /build/sync
+cd /build/sync
+
+# Fetch source
+rm -rf *
+
+for n in sync
+do
+    git clone git://git.taler.net/$n
+    cd $n
+    git checkout $1
+    ./bootstrap
+    dpkg-buildpackage -rfakeroot -b -uc -us
+    cd ..
+    dpkg -i *.deb
+done
+
+tar uvf ../packages.tgz *.deb
+
+cd ..
diff --git a/packaging/ubuntu-jammy-docker/taler.list 
b/packaging/ubuntu-jammy-docker/taler.list
new file mode 100644
index 0000000..29cea42
--- /dev/null
+++ b/packaging/ubuntu-jammy-docker/taler.list
@@ -0,0 +1 @@
+deb https://deb.taler.net/apt/ubuntu jammy main
diff --git a/packaging/ubuntu-jammy-docker/wallet-build.sh 
b/packaging/ubuntu-jammy-docker/wallet-build.sh
new file mode 100644
index 0000000..bf3fa80
--- /dev/null
+++ b/packaging/ubuntu-jammy-docker/wallet-build.sh
@@ -0,0 +1,32 @@
+#!/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 -p /build/wallet
+cd /build/wallet
+
+# Fetch source
+rm -rf *
+git clone git://git.taler.net/wallet-core
+
+cd wallet-core
+git checkout $1
+./bootstrap
+./configure --prefix=/usr
+make
+cd packages/taler-wallet-cli
+./configure --prefix=/usr
+make install
+dpkg-buildpackage -rfakeroot -b -uc -us
+cd ../taler-harness
+./configure --prefix=/usr
+make install
+dpkg-buildpackage -rfakeroot -b -uc -us
+cd ..
+
+tar uvf ../../../packages.tgz *.deb
+
+cd ../../..

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]