aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Schanzenbach <schanzen@gnunet.org>2023-05-18 15:49:47 +0200
committerMartin Schanzenbach <schanzen@gnunet.org>2023-05-18 15:49:47 +0200
commit60d5ea0f444d65021cb452063207e2a1acc24b13 (patch)
treea56ca9080dba298d2a0523fcb9cacc218806d24d
parent7b3eff948255f815ecc5e9878f3823fb3cc06bba (diff)
downloadgnunet-rpm-60d5ea0f444d65021cb452063207e2a1acc24b13.tar.gz
gnunet-rpm-60d5ea0f444d65021cb452063207e2a1acc24b13.zip
update taler exchange
-rw-r--r--rpmbuild/SPECS/taler-exchange.spec172
1 files changed, 169 insertions, 3 deletions
diff --git a/rpmbuild/SPECS/taler-exchange.spec b/rpmbuild/SPECS/taler-exchange.spec
index c40b003..ea1add0 100644
--- a/rpmbuild/SPECS/taler-exchange.spec
+++ b/rpmbuild/SPECS/taler-exchange.spec
@@ -24,21 +24,80 @@ BuildRequires: libsodium-devel
24BuildRequires: libargon2-devel 24BuildRequires: libargon2-devel
25BuildRequires: jansson-devel 25BuildRequires: jansson-devel
26BuildRequires: libpq-devel 26BuildRequires: libpq-devel
27BuildRequires: gnupg2
27Recommends: postgresql-server 28Recommends: postgresql-server
29Recommends: taler-exchange-offline
28BuildRequires: libmicrohttpd-devel 30BuildRequires: libmicrohttpd-devel
29BuildRequires: libgnunetpq-devel 31BuildRequires: libgnunetpq-devel
30BuildRequires: python3-jinja2 32BuildRequires: python3-jinja2
31 33
32%description 34%description
33GNU Taler is an open protocol for an electronic payment system with a free software reference implementation. GNU Taler offers secure, fast and easy payment processing using well understood cryptographic techniques. GNU Taler allows customers to remain anonymous, while ensuring that merchants can be held accountable by governments. Hence, GNU Taler is compatible with anti-money-laundering (AML) and know-your-customer (KYC) regulation, as well as data protection regulation (such as GDPR). 35GNU Taler is the privacy-preserving digital payment
36system from the GNU project. This package contains the
37core logic that must be run by the payment service
38provider or bank to offer payments to consumers and
39merchants. At least one exchange must be operated
40per currency.
41In addition to the core logic, an exchange operator
42must also have a system running the "offline" logic
43which is packaged as taler-exchange-offline. It is
44recommended to keep the "offline" logic on a system
45that is never connected to the Internet. However, it
46is also possible to run the "offline" logic directly
47on the production system, especially for testing.
48Finally, an exchange operator should also be prepared
49to run a taler-auditor.
34 50
35GNU Taler is not yet production-ready, after following this manual you will have a backend that can process payments in “KUDOS”, but not regular currencies. This is not so much because of limitations in the backend, but because we are not aware of a Taler exchange operator offering regular currencies today.
36 51
37%package devel 52%package devel
38Summary: Taler exchange development headers 53Summary: Taler exchange development headers
39%description devel 54%description devel
40Files needed to develop Taler exchange applications and services. 55Files needed to develop Taler exchange applications and services.
41 56
57%package offline
58Requires: libtalerexchange%{?_isa} = %{version}-%{release}
59Summary: Tools for managing the GNU Taler exchange offline keys
60%description offline
61A GNU Taler exchange uses an offline key to sign its online
62keys, fee structure, bank routing information and other meta
63data. The offline signing key is the root of the Taler PKI
64that is then embedded in consumer wallets and merchant backends.
65This package includes the tool to download material to sign
66from the exchange, create signatures, and upload the resulting
67signatures to the exchange.
68
69
70%package database
71Summary: Programs and libraries to manage a GNU Taler exchange database.
72%description database
73This package contains only the code to setup the (Postgresql) database interaction (taler-exchange-dbinit and associated resource files).
74
75%package -n libtalerexchange
76Summary: Libraries to talk to a GNU Taler exchange
77%description -n libtalerexchange
78Libraries to talk to a GNU Taler exchange.
79The package also contains various files fundamental to all GNU Taler installations, such as the taler-config configuration command-line tool, various base configuration files and associated documentation.
80
81%package -n libtalerexchange-devel
82Requires: libtalerexchange%{?_isa} = %{version}-%{release}
83Summary: Development files to talk to a GNU Taler exchange
84%description -n libtalerexchange-devel
85Libraries to talk to a GNU Taler exchange (development).
86
87%package -n taler-auditor
88Requires: libtalerexchange%{?_isa} = %{version}-%{release}
89Requires: taler-exchange-database%{?_isa} = %{version}-%{release}
90Summary: GNU's payment system auditor.
91%description -n taler-auditor
92GNU Taler is the privacy-preserving digital payment
93system from the GNU project. This package contains the
94auditor logic. It verifies that the taler-exchange run
95by a payment service provider is correctly performing
96its bank transactions and thus has the correct balance
97in its escrow account. Each exchange operator is
98expected to make use of one or more auditors as part
99of its regulatory compliance.
100
42%prep 101%prep
43echo "%SHA512SUM0 %SOURCE0" | sha512sum -c - 102echo "%SHA512SUM0 %SOURCE0" | sha512sum -c -
44%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}' 103%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}'
@@ -46,12 +105,15 @@ echo "%SHA512SUM0 %SOURCE0" | sha512sum -c -
46%autosetup 105%autosetup
47 106
48%build 107%build
49%configure --with-gnunet=%{_prefix} 108%configure
50%{make_build} 109%{make_build}
51 110
52%install 111%install
53make install DESTDIR=%{buildroot} 112make install DESTDIR=%{buildroot}
54%find_lang %{name} 113%find_lang %{name}
114install debian/etc-libtalerexchange/* etc/
115install debian/etc-taler-auditor/* etc/
116install debian/etc-taler-exchange/* etc/
55#install -Dm644 "contrib/packages/fedora/%{name}.service" "%{buildroot}/%{_unitdir}/%{name}.service" 117#install -Dm644 "contrib/packages/fedora/%{name}.service" "%{buildroot}/%{_unitdir}/%{name}.service"
56#install -Dm644 "contrib/packages/fedora/%{name}-user.service" "%{buildroot}/%{_userunitdir}/%{name}-user.service" 118#install -Dm644 "contrib/packages/fedora/%{name}-user.service" "%{buildroot}/%{_userunitdir}/%{name}-user.service"
57#install -Dm644 "contrib/packages/fedora/gnunet-system.conf" %{buildroot}/%{_sysconfdir}/gnunet.conf 119#install -Dm644 "contrib/packages/fedora/gnunet-system.conf" %{buildroot}/%{_sysconfdir}/gnunet.conf
@@ -72,6 +134,110 @@ make check
72 134
73%files 135%files
74# AGPLv3 136# AGPLv3
137%{_bindir}/taler-exchange-aggregator
138%{_bindir}/taler-exchange-closer
139%{_bindir}/taler-exchange-dbinit
140%{_bindir}/taler-exchange-drain
141%{_bindir}/taler-exchange-expire
142%{_bindir}/taler-exchange-httpd
143%{_bindir}/taler-exchange-router
144%{_bindir}/taler-exchange-secmod-cs
145%{_bindir}/taler-exchange-secmod-eddsa
146%{_bindir}/taler-exchange-secmod-rsa
147%{_bindir}/taler-exchange-transfer
148%{_bindir}/taler-exchange-wirewatch
149%{_bindir}/taler-exchange-wire-gateway-client
150%{_libdir}/*/taler/libtaler_plugin_kyclogic_*.so
151%{_libdir}/*/taler/libtaler_extension_*.so
152%{_mandir}/man1/taler-exchange-aggregator*
153%{_mandir}/man1/taler-exchange-closer*
154%{_mandir}/man1/taler-exchange-dbinit*
155%{_mandir}/man1/taler-exchange-drain*
156%{_mandir}/man1/taler-exchange-expire*
157%{_mandir}/man1/taler-exchange-httpd*
158%{_mandir}/man1/taler-exchange-router*
159%{_mandir}/man1/taler-exchange-secmod-eddsa*
160%{_mandir}/man1/taler-exchange-secmod-rsa*
161%{_mandir}/man1/taler-exchange-secmod-cs*
162%{_mandir}/man1/taler-exchange-transfer*
163%{_mandir}/man1/taler-exchange-wirewatch*
164%{_mandir}/man1/taler-bank*
165%{_mandir}/man1/taler-exchange-wire-gateway-client*
166%{_infodir}/taler-bank*
167%{_infodir}/taler-exchange*
168%{_datadir}/taler/config.d/*
169%{_datadir}/taler/exchange/templates/*.must
170
171# FIXME configuration files in /etc/taler
172
173%{_datadir}/taler/exchange/pp/*/*
174%{_datadir}/taler/exchange/tos/*/*
175
176%files -n libtalerexchange
177%{_libdir}/*/libtaler*.so.*
178# FIXME: All this should eventually go into taler-base.
179%{_datadir}/taler/config.d/paths.conf
180%{_datadir}/taler/config.d/taler.conf
181%{_bindir}/taler-config
182%{_mandir}/man5/taler.conf.5
183%{_mandir}/man1/taler-config*
184
185%files -n libtalerexchange-devel
186# Benchmarks, only install them for the dev package.
187%{_bindir}/taler-aggregator-benchmark
188%{_bindir}/taler-exchange-benchmark
189%{_bindir}/taler-fakebank-run
190%{_bindir}/taler-bank-benchmark
191%{_bindir}/taler-exchange-kyc-tester
192# Only used in test cases. Maybe these
193# shouldn't even be installed?
194%{_bindir}/taler-nexus-prepare
195%{_bindir}/taler-bank-manage-testing
196# Man pages
197%{_mandir}/man1/taler-exchange-kyc-tester*
198# Headers
199%{_includedir}/taler/*
200# Plain .so symlinks
201%{_libdir}/*/libtaler*.so
202# Testing libraries
203%{_libdir}/*/libtalertesting.so.*
204%{_libdir}/*/libtalerfakebank.so.*
205%{_libdir}/*/libtalertesting.so
206%{_libdir}/*/libtalerfakebank.so
207# Documentation
208%{_mandir}/man1/taler-exchange-benchmark*
209%{_infodir}/taler-developer-manual*
210
211%files -n taler-auditor
212%{_bindir}/taler-auditor
213%{_bindir}/taler-auditor-dbinit
214%{_bindir}/taler-auditor-exchange
215%{_bindir}/taler-auditor-httpd
216%{_bindir}/taler-auditor-offline
217%{_bindir}/taler-auditor-sync
218%{_bindir}/taler-helper-auditor-*
219%{_bindir}/*/taler/libtaler_plugin_auditor*.so
220%{_bindir}/*/libauditor*
221%{_bindir}/*/libtalerauditordb*
222%{_mandir}/man1/taler-auditor*
223%{_mandir}/man1/taler-helper-auditor*
224%{_infodir}/taler-auditor*
225%{_datadir}/taler/config.d/auditor*
226%{_datadir}/taler/sql/auditor/*
227# FIXME Configuration
228%{_datadir}/taler/exchange/auditor-report.tex.j2
229
230%files database
231%{_bindir}/taler-exchange-dbinit
232%{_libdir}/*/taler/libtaler_plugin_exchange*.so
233%{_mandir}/man1/taler-exchange-dbinit.1
234%{_datadir}/taler/sql/exchange/*
235%{_datadir}/taler/config.d/exchangedb.conf
236%{_datadir}/taler/config.d/exchangedb-postgres.conf
237
238%files offline
239%{_bindir}/taler-exchange-offline
240%{_mandir}/man1/taler-exchange-offline*
75 241
76#%files doc 242#%files doc
77 243