aboutsummaryrefslogtreecommitdiff
path: root/taler-exchange/README
diff options
context:
space:
mode:
Diffstat (limited to 'taler-exchange/README')
-rw-r--r--taler-exchange/README59
1 files changed, 56 insertions, 3 deletions
diff --git a/taler-exchange/README b/taler-exchange/README
index 2ea3751..de731fe 100644
--- a/taler-exchange/README
+++ b/taler-exchange/README
@@ -1,6 +1,59 @@
The exchange for the Taler payment system.
-The development version is used for this build. Taler also requires some
-bootstrapping in order to follow the usual build steps.
+Building this package on Slackware 15.0 requires:
-Download and create the expected sourcecode into a tar file by running ./download.sh.
+ - Postgres 15.x or greater, slackbuilds.org has version 14.x.
+ - Build a newer version of llvm, by setting CC=clang, and installing llvm from Slackware Current.
+ - The pre-release version of Gnunet.
+
+Installing this package automatically creates a number of supporting system
+users for the exchange. All are listed in the 'taler-exchange' user group.
+
+The taler exchange runs in a system of services, and a postgres database must
+be configured to service them. The setup described here assumes postgres was
+installed with using 'Peer authentication' by default (omitting '-A md5' when
+running 'initdb' after postgres installation).
+
+Create the database and its users for system users which require it:
+
+```
+sudo -u postgres -- createuser taler-exchange-httpd
+sudo -u postgres -- createuser taler-exchange-aggregator
+sudo -u postgres -- createuser taler-exchange-closer
+sudo -u postgres -- createuser taler-exchange-transfer
+sudo -u postgres -- createuser taler-exchange-wirewatch
+sudo -u postgres -- createdb taler-exchange --owner taler-exchange-httpd
+```
+
+Initialize the database schema, which should also be done after upgrades:
+
+```
+sudo -u taler-exchange-httpd -- taler-exchange-dbinit
+```
+
+Grant the user access to their tables in the database:
+
+```
+sudo -u taler-exchange-httpd psql taler-exchange << EOF
+ GRANT SELECT,INSERT,UPDATE ON ALL TABLES IN SCHEMA exchange TO "taler-exchange-aggregator";
+ GRANT SELECT,INSERT,UPDATE ON ALL TABLES IN SCHEMA exchange TO "taler-exchange-closer";
+ GRANT SELECT,INSERT,UPDATE ON ALL TABLES IN SCHEMA exchange TO "taler-exchange-transfer";
+ GRANT SELECT,INSERT,UPDATE ON ALL TABLES IN SCHEMA exchange TO "taler-exchange-wirewatch";
+ GRANT USAGE ON ALL SEQUENCES IN SCHEMA exchange TO "taler-exchange-aggregator";
+ GRANT USAGE ON ALL SEQUENCES IN SCHEMA exchange TO "taler-exchange-closer";
+ GRANT USAGE ON ALL SEQUENCES IN SCHEMA exchange TO "taler-exchange-transfer";
+ GRANT USAGE ON ALL SEQUENCES IN SCHEMA exchange TO "taler-exchange-wirewatch";
+EOF
+```
+
+To have the taler system start and stop with your host, add to /etc/rc.d/rc.local:
+
+ if [ -x /etc/rc.d/rc.taler-exchange ]; then
+ /etc/rc.d/rc.taler-exchange start
+ fi
+
+And to /etc/rc.d/rc.local_shutdown (creating if needed):
+
+ if [ -x /etc/rc.d/rc.taler-exchange ]; then
+ /etc/rc.d/rc.taler-exchange stop
+ fi