summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Grothoff <grothoff@gnunet.org>2023-03-11 05:55:53 +0100
committerChristian Grothoff <grothoff@gnunet.org>2023-03-11 05:55:53 +0100
commite22371d0415098c07b07c016a37d18800b138827 (patch)
treefed73f253719e2062cdb6c29ddb0d67c0ae7e53a
parentb20910dcfb748c58bcea3b5eb22fef84a8e88251 (diff)
downloaddocs-e22371d0415098c07b07c016a37d18800b138827.tar.gz
docs-e22371d0415098c07b07c016a37d18800b138827.tar.bz2
docs-e22371d0415098c07b07c016a37d18800b138827.zip
remove duplicated chapters on taler-wallet
-rw-r--r--index.rst1
-rw-r--r--taler-developer-manual.rst40
-rw-r--r--taler-wallet-cli-manual.rst138
-rw-r--r--taler-wallet.rst160
4 files changed, 164 insertions, 175 deletions
diff --git a/index.rst b/index.rst
index 5ff11e4a..25d51f88 100644
--- a/index.rst
+++ b/index.rst
@@ -59,7 +59,6 @@ Documentation Overview
taler-exchange-manual
taler-exchange-setup-guide
taler-merchant-manual
- taler-wallet-cli-manual
taler-merchant-api-tutorial
taler-merchant-pos-terminal
taler-auditor-manual
diff --git a/taler-developer-manual.rst b/taler-developer-manual.rst
index c348a1d5..49ffa250 100644
--- a/taler-developer-manual.rst
+++ b/taler-developer-manual.rst
@@ -174,11 +174,12 @@ development.
Communication
-------------
-We use the #taler channel on the Freenode IRC network and the taler@gnu.org
-public mailinglist for discussions. Not all developers are active on IRC, but
-all developers should probably subscribe to the low-volume Taler mailinglist.
-There are separate low-volume mailinglists for gnunet-developers (@gnu.org)
-and for libmicrohttpd (@gnu.org).
+For public discussions we use the taler@gnu.org mailinglist. All developers
+should subscribe to the low-volume Taler mailinglist. There are separate
+low-volume mailinglists for gnunet-developers (@gnu.org) and for libmicrohttpd
+(@gnu.org). For internal discussions we use https://mattermost.taler.net/
+(invitation only, but also achieved).
+
What to put in bootstrap
------------------------
@@ -254,22 +255,19 @@ Language-Specific Guidelines
Taler Deployment on gv.taler.net
================================
-This section describes the GNU Taler deployment on ``gv.taler.net``.
-``gv`` is our server at BFH. It hosts the Git repositories, Web sites,
-CI and other services. Developers can receive an SSH account and
-e-mail alias for the system. As with Git, ask your primary team
-contact for shell access if you think you need it.
+This section describes the GNU Taler deployment on ``gv.taler.net``. ``gv``
+is our server at BFH. It hosts the Git repositories, Web sites, CI and other
+services. Developers can receive an SSH account and e-mail alias for the
+system, you should contact Javier, Christian or Florian. As with Git, ask
+your primary team contact for shell access if you think you need it.
-Our old server, ``tripwire``, is currently offline and will likely
-go back online to host ``production`` systems for operating real
-Taler payments at BFH in the future.
DNS
---
-DNS records for taler.net are controlled by the GNU Taler
-maintainers, specifically Christian and Florian. If you
-need a sub-domain to be added, please contact one of them.
+DNS records for taler.net are controlled by the GNU Taler maintainers,
+specifically Christian and Florian, and our system administrator, Javier. If
+you need a sub-domain to be added, please contact one of them.
User Acccounts
@@ -510,7 +508,7 @@ Database schema versioning
--------------------------
The PostgreSQL databases of the exchange and the auditor are versioned.
-See the 0000.sql file in the respective directory for documentation.
+See the ``versioning.sql`` file in the respective directory for documentation.
Every set of changes to the database schema must be stored in a new
versioned SQL script. The scripts must have contiguous numbers. After
@@ -518,7 +516,7 @@ any release (or version being deployed to a production or staging
environment), existing scripts MUST be immutable.
Developers and operators MUST NOT make changes to database schema
-outside of this versioning.
+outside of this versioning. All tables of a GNU Taler component should live in their own schema.
@@ -663,6 +661,8 @@ debian/changelog, and then run:
in the respective source directory (GNUnet, exchange, merchant) to create the
``.deb`` files. Note that they will be created in the parent directory. This
can be done on gv.taler.net, or on another (secure) machine.
+Actual release builds should be done via the Docker images
+that can be found in ``deployment.git`` under packaging.
On ``gv``, we use the ``aptbuilder`` user to manage the reprepro repository.
@@ -1472,7 +1472,9 @@ use when talking to end users or even system administrators.
key used by the exchange to sign online messages, other than coins
order
- FIXME: to be written!
+ offer made by the merchant to a wallet; pre-cursor to
+ a contract where the wallet is not yet fixed. Turns
+ into a :term:`contract` when a wallet claims the order.
owner
a coin is owned by the entity that knows the private key of the coin
diff --git a/taler-wallet-cli-manual.rst b/taler-wallet-cli-manual.rst
deleted file mode 100644
index 1a2efcb9..00000000
--- a/taler-wallet-cli-manual.rst
+++ /dev/null
@@ -1,138 +0,0 @@
-GNU Taler Wallet CLI Manual
-###########################
-
-This manual describes how to use the GNU Taler wallet command line
-interface (CLI).
-
-The the wallet CLI is targeted at developers and operators, but not meant to be
-used by customers. It exposes all functionality that the more user-friendly
-interfaces (Android app, browser extension) offer. However, it provides more
-diagnostics and advanced features as well.
-
-Installation
-------------
-
-The easiest way to install the wallet is via NPM. Note that a recent version of
-Node.JS (``>=12.20.1``) is required.
-
-We recommend to install the wallet package on a per-user basis.
-To do so, configure node and adjust your ``$PATH``:
-
-.. code-block:: console
-
- $ npm set prefix $HOME/.npm-global
- $ export PATH=$HOME/.npm-global:$PATH
-
-Now the wallet CLI can be installed without requiring elevated permissions:
-
-.. code-block:: console
-
- $ npm set prefix $HOME/.npm-global
- $ npm install -g @gnu-taler/taler-wallet-cli
- $ taler-wallet-cli --version
-
-
-Getting Help
-------------
-
-The wallet CLI comes with built-in help. Invoke the wallet CLI (or any subcommand) with the ``--help`` flag to get help:
-
-.. code-block:: console
-
- $ taler-wallet-cli --help
- Usage: taler-wallet-cli COMMAND
-
- Command line interface for the GNU Taler wallet.
-
- Options:
- -h, --help Show this message and exit.
- --wallet-db=VALUE location of the wallet database file
- --timetravel=VALUE modify system time by given offset in microseconds
- --inhibit=VALUE Inhibit running certain operations, useful for debugging and testing.
- --no-throttle Don't do any request throttling.
- -v, --version
- -V, --verbose Enable verbose output.
-
- Commands:
- advanced Subcommands for advanced operations (only use if you know what you're doing!).
- api Call the wallet-core API directly.
- backup Subcommands for backups
- balance Show wallet balance.
- deposit Subcommands for depositing money to payto:// accounts
- exchanges Manage exchanges.
- handle-uri Handle a taler:// URI.
- pending Show pending operations.
- run-pending Run pending operations.
- run-until-done Run until no more work is left.
- testing Subcommands for testing GNU Taler deployments.
- transactions Show transactions.
-
-Completing operations
----------------------
-
-Note that the CLI does not run as a background daemon. When starting
-operations that don't immediately finish, the wallet needs to be run explicitly
-to finish any pending tasks:
-
-
-.. code-block:: console
-
- # Do one attempt to finish all pending operations
- $ taler-wallet-cli run-pending
-
- # Run until all work is done
- $ taler-wallet-cli run-until-done
-
-Resetting the wallet
---------------------
-
-The wallet can be reset by deleting its database file. By default, the database file
-is ``$HOME/.talerwalletdb.json``.
-
-
-Handling taler:// URIs
-----------------------
-
-Many interactions with the Taler wallet happen by scanning QR codes or special
-headers on Websites. To emulate this with the command line interface, run the following
-command:
-
-.. code-block:: console
-
- $ taler-wallet-cli handle-uri $URI
-
-
-Testing an exchange deployment
-------------------------------
-
-The following series of commands can be used to check that an exchange deployment
-is functional:
-
-.. code-block:: console
-
- # This will now output a payto URI that money needs to be sent to in order to allow withdrawal
- # of taler coins
- $ taler-wallet-cli advanced withdraw-manually --exchange $EXCHANGE_URL --amount EUR:10.50
-
- # Show the status of the manual withdrawal operation
- $ taler-wallet-cli transactions
-
- # Once the transfer has been made, try completing the withdrawal
- $ taler-wallet-cli run-pending
-
- # Check status of transactions and show balance
- $ taler-wallet-cli transactions
- $ taler-wallet-cli balance
-
- # Now, directly deposit coins with the exchange into a target account
- # (Usually, a payment is made via a merchant. The wallet provides
- # this functionality for testing.)
- $ taler-wallet-cli deposit create EUR:5 payto://iban/$IBAN
-
- # Check if transaction was successful.
- # (If not, fix issue with exchange and run "run-pending" command again)
- $ taler-wallet-cli transactions
-
- # The wallet can also track if the exchange wired the money to the merchant account.
- # The "deposit group id" can be found in the output of the transactions list.
- $ taler-wallet-cli deposit track $DEPOSIT_GROUP_ID
diff --git a/taler-wallet.rst b/taler-wallet.rst
index 2fa41d9e..f9a7f763 100644
--- a/taler-wallet.rst
+++ b/taler-wallet.rst
@@ -1,18 +1,57 @@
-GNU Taler Wallet Developer Manual
-#################################
+GNU Taler Wallet Manual
+#######################
The GNU Taler wallet allows customers to withdraw and spend digital cash.
+
+WebExtension Wallet
+===================
+
+Building from source
+--------------------
+
+.. code-block:: console
+
+ $ git clone https://git.taler.net/wallet-core.git
+ $ cd wallet-core
+ $ ./configure
+ $ make webex-stable
+ # Packaged extension now available as:
+ # dist/taler-wallet-$VERSION.zip
+
+
+Android Wallet
+==============
+
+Please see :ref:`Build-apps-from-source` in the :doc:`taler-developer-manual`.
+
+
+iOS Wallet
+==========
+
+
.. _command-line-wallet:
Command-line Wallet
===================
-The command-line wallet is used primarily for testing by developers.
+This section describes how to use the GNU Taler wallet command line
+interface (CLI).
+
+The the wallet CLI is targeted at developers and operators, but not meant to be
+used by customers. It exposes all functionality that the more user-friendly
+interfaces (Android app, browser extension) offer. However, it provides more
+diagnostics and advanced features as well.
Building from source
--------------------
+The easiest way to install the wallet is via NPM. Note that a recent version of
+Node.JS (``>=12.20.1``) is required.
+
+We recommend to install the wallet package on a per-user basis,
+thus setting ``$INSTALL_PREFIX`` to a directory in ``$HOME``.
+
.. code-block:: console
$ git clone https://git.taler.net/wallet-core.git
@@ -52,8 +91,78 @@ To use the wallet as a library in your own project, run:
$ npm install taler-wallet
+Getting Help
+------------
+
+The wallet CLI comes with built-in help. Invoke the wallet CLI (or any subcommand) with the ``--help`` flag to get help:
+
+.. code-block:: console
+
+ $ taler-wallet-cli --help
+ Usage: taler-wallet-cli COMMAND
+
+ Command line interface for the GNU Taler wallet.
+
+ Options:
+ -h, --help Show this message and exit.
+ --wallet-db=VALUE location of the wallet database file
+ --timetravel=VALUE modify system time by given offset in microseconds
+ --inhibit=VALUE Inhibit running certain operations, useful for debugging and testing.
+ --no-throttle Don't do any request throttling.
+ -v, --version
+ -V, --verbose Enable verbose output.
+
+ Commands:
+ advanced Subcommands for advanced operations (only use if you know what you're doing!).
+ api Call the wallet-core API directly.
+ backup Subcommands for backups
+ balance Show wallet balance.
+ deposit Subcommands for depositing money to payto:// accounts
+ exchanges Manage exchanges.
+ handle-uri Handle a taler:// URI.
+ pending Show pending operations.
+ run-pending Run pending operations.
+ run-until-done Run until no more work is left.
+ testing Subcommands for testing GNU Taler deployments.
+ transactions Show transactions.
+
+Completing operations
+---------------------
+
+Note that the CLI does not run as a background daemon. When starting
+operations that don't immediately finish, the wallet needs to be run explicitly
+to finish any pending tasks:
+
+
+.. code-block:: console
+
+ # Do one attempt to finish all pending operations
+ $ taler-wallet-cli run-pending
+
+ # Run until all work is done
+ $ taler-wallet-cli run-until-done
+
+Resetting the wallet
+--------------------
+
+The wallet can be reset by deleting its database file. By default, the database file
+is ``$HOME/.talerwalletdb.json``.
+
+
+Handling taler:// URIs
+----------------------
+
+Many interactions with the Taler wallet happen by scanning QR codes or special
+headers on Websites. To emulate this with the command line interface, run the following
+command:
+
+.. code-block:: console
+
+ $ taler-wallet-cli handle-uri $URI
+
+
Manual withdrawing
-==================
+------------------
.. code-block:: console
@@ -61,26 +170,43 @@ Manual withdrawing
--exchange https://exchange.eurint.taler.net/ \
--amount EUR:5
-WebExtension Wallet
-===================
-Building from source
---------------------
+Testing an exchange deployment
+------------------------------
+
+The following series of commands can be used to check that an exchange deployment
+is functional:
.. code-block:: console
- $ git clone https://git.taler.net/wallet-core.git
- $ cd wallet-core
- $ ./configure
- $ make webex-stable
- # Packaged extension now available as:
- # dist/taler-wallet-$VERSION.zip
+ # This will now output a payto URI that money needs to be sent to in order to allow withdrawal
+ # of taler coins
+ $ taler-wallet-cli advanced withdraw-manually --exchange $EXCHANGE_URL --amount EUR:10.50
+ # Show the status of the manual withdrawal operation
+ $ taler-wallet-cli transactions
+
+ # Once the transfer has been made, try completing the withdrawal
+ $ taler-wallet-cli run-pending
+
+ # Check status of transactions and show balance
+ $ taler-wallet-cli transactions
+ $ taler-wallet-cli balance
+
+ # Now, directly deposit coins with the exchange into a target account
+ # (Usually, a payment is made via a merchant. The wallet provides
+ # this functionality for testing.)
+ $ taler-wallet-cli deposit create EUR:5 payto://iban/$IBAN
+
+ # Check if transaction was successful.
+ # (If not, fix issue with exchange and run "run-pending" command again)
+ $ taler-wallet-cli transactions
+
+ # The wallet can also track if the exchange wired the money to the merchant account.
+ # The "deposit group id" can be found in the output of the transactions list.
+ $ taler-wallet-cli deposit track $DEPOSIT_GROUP_ID
-Android Wallet
-==============
-Please see :ref:`Build-apps-from-source` in the :doc:`taler-developer-manual`.
APIs and Data Formats