gnunet-svn
[Top][All Lists]
Advanced

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

[libeufin] branch master updated: debian packaging


From: gnunet
Subject: [libeufin] branch master updated: debian packaging
Date: Mon, 27 Nov 2023 18:49:55 +0100

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

dold pushed a commit to branch master
in repository libeufin.

The following commit(s) were added to refs/heads/master by this push:
     new 42f005cc debian packaging
42f005cc is described below

commit 42f005cc20a5b794926260e5a40982b467805ac5
Author: Florian Dold <florian@dold.me>
AuthorDate: Mon Nov 27 11:57:59 2023 +0100

    debian packaging
---
 Makefile                                           | 43 ++++++++++++----------
 contrib/{libeufin-bank.conf => bank.conf}          |  0
 {debian/usr/bin => contrib}/libeufin-bank-dbconfig |  0
 {debian/usr/bin => contrib}/libeufin-bank-dbinit   |  0
 contrib/{libeufin-nexus.conf => nexus.conf}        |  0
 debian/control                                     | 27 ++++++++++++--
 debian/etc/libeufin/libeufin-bank.conf             |  2 +-
 .../{libeufin-bank.conf => libeufin-nexus.conf}    |  4 +-
 debian/libeufin-bank.install                       | 18 ++++++++-
 debian/libeufin-common.install                     |  2 +
 debian/libeufin-nexus.install                      | 10 +++++
 ...beufin-nexus.libeufin-nexus-ebics-fetch.service | 11 ++++++
 ...eufin-nexus.libeufin-nexus-ebics-submit.service | 11 ++++++
 debian/libeufin-nexus.postinst                     | 37 +++++++++++++++++++
 debian/libeufin-nexus.tmpfiles                     |  2 +
 debian/rules                                       |  8 +++-
 debian/usr/share/libeufin-bank/spa/settings.js     |  1 -
 17 files changed, 144 insertions(+), 32 deletions(-)

diff --git a/Makefile b/Makefile
index e9652b02..2a5b4e8b 100644
--- a/Makefile
+++ b/Makefile
@@ -15,13 +15,9 @@ endef
 # Absolute DESTDIR or empty string if DESTDIR unset/empty
 abs_destdir=$(abspath $(DESTDIR))
 
-bank_sql_dir=$(abs_destdir)$(prefix)/share/libeufin-bank/sql
-bank_config_dir=$(abs_destdir)$(prefix)/share/libeufin-bank/config.d
-spa_dir=$(abs_destdir)$(prefix)/share/libeufin-bank/spa
-
-# NOT installyed yet along "make install"
-nexus_sql_dir=$(abs_destdir)$(prefix)/share/libeufin-nexus/sql
-nexus_config_dir=$(abs_destdir)$(prefix)/share/libeufin-nexus/config.d
+spa_dir=$(abs_destdir)$(prefix)/share/libeufin/spa
+sql_dir=$(abs_destdir)$(prefix)/share/libeufin/sql
+config_dir=$(abs_destdir)$(prefix)/share/libeufin/config.d
 
 .PHONY: dist
 dist:
@@ -34,31 +30,38 @@ deb:
        dpkg-buildpackage -rfakeroot -b -uc -us
 
 .PHONY: install
-install: install-bank
+install: install-bank install-nexus
+
+
+.PHONY: install-common
+install-common:
+       install -D -t $(config_dir) contrib/currencies.conf 
+       install -D -t $(sql_dir) database-versioning/versioning.sql 
 
+.PHONY: install-bank-files
 install-bank-files:
-       install -d $(bank_config_dir)
-       install contrib/libeufin-bank.conf $(bank_config_dir)/
-       install contrib/currencies.conf $(bank_config_dir)/
-       install -D database-versioning/libeufin-bank*.sql -t $(bank_sql_dir)
-       install -D database-versioning/libeufin-conversion*.sql -t 
$(bank_sql_dir)
-       install -D database-versioning/versioning.sql -t $(bank_sql_dir)
+       install -D -t $(config_dir) contrib/bank.conf
+       install -D -t $(sql_dir) database-versioning/libeufin-bank*.sql
+       install -D -t $(sql_dir) database-versioning/libeufin-conversion*.sql
 
 .PHONY: install-bank
-install-bank: install-bank-files
+install-bank: install-common install-bank-files
        install -d $(spa_dir)
        cp contrib/wallet-core/demobank/* $(spa_dir)/
        ./gradlew bank:installShadowDist
        install -d $(abs_destdir)$(prefix)
+       rm -f bank/build/install/bank-shadow/bin/*.bat
        cp -r bank/build/install/bank-shadow/* -d $(abs_destdir)$(prefix)
        cp -r contrib/libeufin-tan-*.sh -d $(abs_destdir)$(prefix)/bin
+       cp contrib/libeufin-bank-dbinit -d $(abs_destdir)$(prefix)/bin
+       cp contrib/libeufin-bank-dbconfig -d $(abs_destdir)$(prefix)/bin
 
-install-nexus:
-       install -d $(nexus_config_dir)
-       install contrib/libeufin-nexus.conf $(nexus_config_dir)/
-       install -D database-versioning/libeufin-nexus*.sql -t $(nexus_sql_dir)
-       install -D database-versioning/versioning.sql -t $(nexus_sql_dir)
+.PHONY: install-nexus
+install-nexus: install-common
+       install -D -t $(config_dir) contrib/nexus.conf
+       install -D -t $(sql_dir) database-versioning/libeufin-nexus*.sql
        ./gradlew nexus:installShadowDist
+       rm -f nexus/build/install/nexus-shadow/bin/*.bat
        cp -r nexus/build/install/nexus-shadow/* -d $(abs_destdir)$(prefix)
 
 .PHONY: assemble
diff --git a/contrib/libeufin-bank.conf b/contrib/bank.conf
similarity index 100%
rename from contrib/libeufin-bank.conf
rename to contrib/bank.conf
diff --git a/debian/usr/bin/libeufin-bank-dbconfig 
b/contrib/libeufin-bank-dbconfig
similarity index 100%
rename from debian/usr/bin/libeufin-bank-dbconfig
rename to contrib/libeufin-bank-dbconfig
diff --git a/debian/usr/bin/libeufin-bank-dbinit b/contrib/libeufin-bank-dbinit
similarity index 100%
rename from debian/usr/bin/libeufin-bank-dbinit
rename to contrib/libeufin-bank-dbinit
diff --git a/contrib/libeufin-nexus.conf b/contrib/nexus.conf
similarity index 100%
rename from contrib/libeufin-nexus.conf
rename to contrib/nexus.conf
diff --git a/debian/control b/debian/control
index 80edaf37..694e995d 100644
--- a/debian/control
+++ b/debian/control
@@ -11,10 +11,29 @@ Standards-Version: 4.1.0
 Vcs-Git: https://git.taler.net/libeufin.git
 Homepage: https://taler.net/
 
+Package: libeufin-common
+Architecture: all
+Depends: ${misc:Depends}
+Description: Common files for other libeufin packages.
+
 Package: libeufin-bank
 Architecture: all
-Depends: openjdk-17-jdk-headless | openjdk-17-jdk | openjdk-18-jdk-headless | 
openjdk-18-jdk | openjdk-19-jdk-headless | openjdk-19-jdk | 
openjdk-20-jdk-headless | openjdk-20-jdk | openjdk-21-jdk-headless | 
openjdk-21-jdk,
-         ${misc:Depends}
-Recommends: apache2 | nginx | httpd,
-        postgresql (>= 13.0)
+Depends:
+ openjdk-17-jdk-headless | openjdk-17-jdk | openjdk-18-jdk-headless | 
openjdk-18-jdk | openjdk-19-jdk-headless | openjdk-19-jdk | 
openjdk-20-jdk-headless | openjdk-20-jdk | openjdk-21-jdk-headless | 
openjdk-21-jdk,
+ libeufin-common (= ${binary:Version}),
+ ${misc:Depends}
+Recommends:
+ apache2 | nginx | httpd,
+ postgresql (>= 13.0)
 Description: Software package to provide a regional bank with optional EBICS 
access.
+
+Package: libeufin-nexus
+Architecture: all
+Depends:
+ openjdk-17-jdk-headless | openjdk-17-jdk | openjdk-18-jdk-headless | 
openjdk-18-jdk | openjdk-19-jdk-headless | openjdk-19-jdk | 
openjdk-20-jdk-headless | openjdk-20-jdk | openjdk-21-jdk-headless | 
openjdk-21-jdk,
+ libeufin-common (= ${binary:Version}),
+ ${misc:Depends}
+Recommends:
+ apache2 | nginx | httpd,
+ postgresql (>= 13.0)
+Description: Software package to access a bank accounts via the EBICS protocol.
diff --git a/debian/etc/libeufin/libeufin-bank.conf 
b/debian/etc/libeufin/libeufin-bank.conf
index 509b6017..f041a8b7 100644
--- a/debian/etc/libeufin/libeufin-bank.conf
+++ b/debian/etc/libeufin/libeufin-bank.conf
@@ -3,4 +3,4 @@
 # FIXME: provide sane template here with
 # all applicable options and make sure it is
 # consistent with the reverse proxy configuration
-# deployed by the Debian package
\ No newline at end of file
+# deployed by the Debian package
diff --git a/debian/etc/libeufin/libeufin-bank.conf 
b/debian/etc/libeufin/libeufin-nexus.conf
similarity index 57%
copy from debian/etc/libeufin/libeufin-bank.conf
copy to debian/etc/libeufin/libeufin-nexus.conf
index 509b6017..d45b4a99 100644
--- a/debian/etc/libeufin/libeufin-bank.conf
+++ b/debian/etc/libeufin/libeufin-nexus.conf
@@ -1,6 +1,6 @@
-# This is the main configuration entrypoint for the libeufin-bank.
+# This is the main configuration entrypoint for the libeufin-nexus.
 
 # FIXME: provide sane template here with
 # all applicable options and make sure it is
 # consistent with the reverse proxy configuration
-# deployed by the Debian package
\ No newline at end of file
+# deployed by the Debian package
diff --git a/debian/libeufin-bank.install b/debian/libeufin-bank.install
index 2bb670e2..eb6483be 100644
--- a/debian/libeufin-bank.install
+++ b/debian/libeufin-bank.install
@@ -1,3 +1,17 @@
-debian/etc/* etc/
-debian/usr/* usr/
+debian/etc/libeufin/libeufin-bank.conf etc/libeufin/libeufin-bank.conf
+debian/etc/libeufin/settings.json etc/libeufin/settings.json
 
+usr/bin/libeufin-bank
+usr/bin/libeufin-bank-dbinit
+usr/bin/libeufin-bank-dbconfig
+usr/bin/libeufin-tan-*.sh
+
+usr/share/libeufin/sql/libeufin-bank-*.sql
+usr/share/libeufin/sql/libeufin-conversion-*.sql
+
+usr/share/libeufin/spa
+
+usr/share/libeufin/config.d/bank.conf
+
+# FIXME: This name should be prefixed!
+usr/lib/bank-*.jar
diff --git a/debian/libeufin-common.install b/debian/libeufin-common.install
new file mode 100644
index 00000000..f786e3fc
--- /dev/null
+++ b/debian/libeufin-common.install
@@ -0,0 +1,2 @@
+usr/share/libeufin/config.d/currencies.conf
+usr/share/libeufin/sql/versioning.sql
diff --git a/debian/libeufin-nexus.install b/debian/libeufin-nexus.install
new file mode 100644
index 00000000..c8204378
--- /dev/null
+++ b/debian/libeufin-nexus.install
@@ -0,0 +1,10 @@
+debian/etc/libeufin/libeufin-nexus.conf etc/libeufin/libeufin-nexus.conf
+
+usr/bin/libeufin-nexus
+
+usr/share/libeufin/sql/libeufin-nexus-*.sql
+
+usr/share/libeufin/config.d/nexus.conf
+
+# FIXME: This name should be prefixed!
+usr/lib/nexus-*.jar
diff --git a/debian/libeufin-nexus.libeufin-nexus-ebics-fetch.service 
b/debian/libeufin-nexus.libeufin-nexus-ebics-fetch.service
new file mode 100644
index 00000000..ba0abd0d
--- /dev/null
+++ b/debian/libeufin-nexus.libeufin-nexus-ebics-fetch.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=LibEuFin Nexus EBICS fetch service.
+
+[Service]
+User=libeufin-nexus
+ExecStart=/usr/bin/libeufin-nexus ebics-fetch -c 
/etc/libeufin/libeufin-nexus.conf
+Restart=on-failure
+RestartSec=1s
+
+[Install]
+WantedBy=multi-user.target
diff --git a/debian/libeufin-nexus.libeufin-nexus-ebics-submit.service 
b/debian/libeufin-nexus.libeufin-nexus-ebics-submit.service
new file mode 100644
index 00000000..212a3e93
--- /dev/null
+++ b/debian/libeufin-nexus.libeufin-nexus-ebics-submit.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=LibEuFin Nexus EBICS submit service.
+
+[Service]
+User=libeufin-nexus
+ExecStart=/usr/bin/libeufin-nexus ebics-submit -c 
/etc/libeufin/libeufin-nexus.conf
+Restart=on-failure
+RestartSec=1s
+
+[Install]
+WantedBy=multi-user.target
diff --git a/debian/libeufin-nexus.postinst b/debian/libeufin-nexus.postinst
new file mode 100644
index 00000000..454c1864
--- /dev/null
+++ b/debian/libeufin-nexus.postinst
@@ -0,0 +1,37 @@
+#!/bin/bash
+
+set -e
+
+. /usr/share/debconf/confmodule
+
+case "${1}" in
+configure)
+
+  if ! getent group libeufin-nexus >/dev/null; then
+    addgroup --quiet --system libeufin-nexus
+  fi
+
+  # Create users if needed
+  if ! getent passwd libeufin-nexus >/dev/null; then
+    adduser --quiet \
+      --system \
+      --disabled-password \
+      --no-create-home \
+      --shell /bin/bash \
+      --ingroup libeufin-nexus \
+      --home /var/lib/libeufin-nexus \
+      libeufin-nexus
+  fi
+  ;;
+
+abort-upgrade | abort-remove | abort-deconfigure) ;;
+
+*)
+  echo "postinst called with unknown argument \`${1}'" >&2
+  exit 1
+  ;;
+esac
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/libeufin-nexus.tmpfiles b/debian/libeufin-nexus.tmpfiles
new file mode 100644
index 00000000..eb23719e
--- /dev/null
+++ b/debian/libeufin-nexus.tmpfiles
@@ -0,0 +1,2 @@
+# Type Path        Mode UID  GID  Age Argument
+d /var/lib/libeufin-nexus 0700 libeufin-bank libeufin-nexus  - -
diff --git a/debian/rules b/debian/rules
index 8624d208..4c18c906 100755
--- a/debian/rules
+++ b/debian/rules
@@ -10,10 +10,11 @@ DEV =
 FULLVER = $(DEB_VERSION_UPSTREAM)$(DEV)
 
 %:
-       dh ${@}
+       dh ${@} --no-parallel
 
 clean:
        rm -rf libeufin-bank-$(FULLVER)
+       rm -rf libeufin-nexus-$(FULLVER)
 
 # Override the build step, because we current need to do it manually
 # outside the regular Debian package build.
@@ -22,7 +23,8 @@ override_dh_auto_build:
 override_dh_auto_test:
        true
 override_dh_auto_configure:
-       true
+       ./configure --prefix=/usr
+
 
 # Override this step because it's very slow and likely
 # unnecessary for us.
@@ -38,6 +40,8 @@ override_dh_installsystemd:
        # Need to specify units manually, since we have multiple
        # and dh_installsystemd by default only looks for "<package>.service".
        dh_installsystemd -plibeufin-bank --name=libeufin-bank --no-start 
--no-enable
+       dh_installsystemd -plibeufin-nexus --name=libeufin-nexus-ebics-submit 
--no-start --no-enable
+       dh_installsystemd -plibeufin-nexus --name=libeufin-nexus-ebics-fetch 
--no-start --no-enable
        # final invocation to generate daemon reload
        dh_installsystemd
 
diff --git a/debian/usr/share/libeufin-bank/spa/settings.js 
b/debian/usr/share/libeufin-bank/spa/settings.js
deleted file mode 120000
index eef4c7e7..00000000
--- a/debian/usr/share/libeufin-bank/spa/settings.js
+++ /dev/null
@@ -1 +0,0 @@
-../../../../etc/libeufin/settings.js
\ No newline at end of file

-- 
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]