donau

Donation authority for GNU Taler (experimental)
Log | Files | Refs | Submodules | README | LICENSE

README (3666B)


      1                        Welcome to GNU Taler
      2 
      3 
      4 What is Taler?
      5 ==============
      6 
      7 Taler is an electronic payment system providing the ability to pay
      8 anonymously using digital cash.  Taler consists of a network protocol
      9 definition (using a RESTful API over HTTP), a Donau (which creates
     10 digital coins), a Wallet (which allows donors to manage, store and
     11 spend digital coins), and a Charity website which allows donors to
     12 spend their digital coins.  Naturally, each Charity is different, but
     13 Taler includes code examples to help Charities integrate Taler as a
     14 payment system.
     15 
     16 Taler is currently developed by a worldwide group of independent free software
     17 developers and Taler Systems SA.  Taler is free software and an official GNU
     18 package (https://www.gnu.org/).
     19 
     20 This is an alpha release with a few known bugs, lacking a few important
     21 features, documentation, testing, performance tuning and an external security
     22 audit.  However, you can run the code and it largely works fine.  This package
     23 also only includes the Taler donau, not the other components of the system.
     24 
     25 Documentation about Taler can be found at https://taler.net/.
     26 Our bug tracker is at https://bugs.taler.net/.
     27 
     28 
     29 Joining GNU
     30 ===========
     31 
     32 This is a GNU program, developed by the GNU Project and part of the
     33 GNU Operating System. If you are the author of an awesome program and
     34 want to join us in writing Free Software, please consider making it an
     35 official GNU program and become a GNU maintainer.  You can find
     36 instructions on how to do so at http://www.gnu.org/help/evaluation.
     37 We are looking forward to hacking with you!
     38 
     39 
     40 Dependencies:
     41 =============
     42 
     43 These are the direct dependencies for running a Taler donau:
     44 
     45 - GNUnet            >= 0.19.0
     46 - GNU libmicrohttpd >= 0.9.71
     47 - PostgreSQL        >= 13.0
     48 
     49 
     50 
     51 Project structure is currently as follows:
     52 
     53 src/include/
     54   -- installed headers for public APIs
     55 
     56 src/util/
     57   -- common utility functions (currency representation,
     58      Taler-specific cryptography, Taler-specific json
     59      support)
     60 
     61 src/pq/
     62   -- Postgres-specific utility functions
     63 
     64 src/donaudb/
     65   -- Donau database backend (with database-specific plugins)
     66 
     67 src/donau/
     68   -- taler donau server
     69 
     70 src/donau-tools/
     71   -- taler donau helper programs
     72 
     73 src/lib/
     74   -- libdonau: C API to issue HTTP requests to donau
     75 
     76 src/json/
     77   -- helper functions for generating and parsing JSON
     78 
     79 src/mhd/
     80   -- helper functions for interacting with GNU libmicrohttpd
     81 
     82 src/curl/
     83   -- helper functions for interacting with libcurl
     84 
     85 
     86 Getting Started
     87 ===============
     88 
     89 For Debian:
     90 
     91 install depencendcies:
     92 
     93 sudo apt install autoconf automake autopoint debhelper-compat gettext libbluetooth-dev libcurl4-gnutls-dev libextractor-dev libgcrypt20-dev libgnutls28-dev libidn2-dev libjansson-dev libltdl-dev libmicrohttpd-dev libogg-dev libopus-dev libpq-dev libpulse-dev libsodium-dev libsqlite3-dev libunistring-dev libzbar-dev miniupnpc net-tools po-debconf python3-dev texinfo zlib1g-dev libjose-dev librec1 recutils python3-sphinx-book-theme python3-msmb-theme
     94 
     95 install GNUnet:
     96 
     97 git clone https://git.gnunet.org/gnunet.git
     98 cd gnunet
     99 ./bootstrap
    100 ./configure
    101 make -j 4
    102 sudo make install
    103 
    104 install exchange:
    105 
    106 git clone https://git.taler.net/exchange.git
    107 cd exchange
    108 ./bootstrap
    109 ./configure
    110 make -j 4
    111 sudo make install
    112 
    113 create psql database 'donaucheck':
    114 
    115 systemctl status postgresql
    116 systemctl start postgresql
    117 sudo su - postgres
    118 psql
    119 create user #hostname; 
    120 DROP DATABASE donaucheck;
    121 create database donaucheck with owner #hostname;
    122 
    123 install donau:
    124 
    125 ./bootstrap
    126 ./configure
    127 make
    128 sudo make install
    129 
    130 
    131 Validator App
    132 =============
    133 
    134 A validation app for donau donation statements
    135 is available at <git://git.taler.net/taler-android.git>.