taler-rust

GNU Taler code in Rust. Largely core banking integrations.
Log | Files | Refs | Submodules | README | LICENSE

README.md (2079B)


      1 # Taler Rust
      2 
      3 GNU Taler utils in Rust and some third parties adapters.
      4 
      5 ## Adapters
      6 
      7 ### taler-magnet-bank
      8 
      9 GNU Taler adapter for the [Magnet Bank](https://www.magnetbank.hu/) API. Support
     10 the [Taler Wire Gateway API](https://docs.taler.net/core/api-bank-wire.html) and
     11 the [Taler Bank Revenue API](https://docs.taler.net/core/api-bank-revenue.html).
     12 
     13 Setup documentation can be found [here](https://docs.taler.net/taler-magnet-bank-manual.html).
     14 
     15 ### taler-cyclos
     16 
     17 GNU Taler adapter for the [Cyclos](https://www.cyclos.org/) API. Support
     18 the [Taler Wire Gateway API](https://docs.taler.net/core/api-bank-wire.html) and
     19 the [Taler Bank Revenue API](https://docs.taler.net/core/api-bank-revenue.html).
     20 
     21 Setup documentation can be found [here](https://docs.taler.net/taler-cyclos-manual.html).
     22 
     23 ## Project structure
     24 
     25 - **adapters**: GNU Taler adapters
     26   - **taler-magnet-bank**: Magnet Bank adapter
     27   - **taler-cyclos**: Cyclos network adapter
     28 - **common**: Rust GNU Taler libraries
     29   - **failure-injection**: Test utils to test failures paths
     30   - **taler-api**: GNU Taler API implementation
     31   - **taler-build**: GNU Taler build time constants
     32   - **taler-common**: GNU Taler component logic and types
     33   - **taler-test-utils**: Test utils for GNU Taler adapter written in Rust GNU
     34 - **taler-apns-relay**: APNs relay
     35 
     36 ## Getting Started for Development
     37 
     38 Any Rust toolchain on `$PATH` will do, distribution packages included; `rustup`
     39 is not required. The tree needs **rustc >= 1.93**, so on Debian stable install
     40 it from backports (`sudo apt install -t trixie-backports rustc cargo`).
     41 
     42 ```sh
     43 sudo apt install cargo rustc   # or any other toolchain, e.g. via rustup
     44 ./bootstrap
     45 ./configure
     46 make check
     47 ```
     48 
     49 `./configure` reports the cargo and rustc it found and records them in
     50 `build-system/config.mk`; override the choice with `CARGO=` / `RUSTC=`:
     51 
     52 ```sh
     53 CARGO=$HOME/.cargo/bin/cargo RUSTC=$HOME/.cargo/bin/rustc ./configure
     54 ```
     55 
     56 `make check` needs a PostgreSQL cluster it can reach as the current user, with a
     57 `taler_rust_check` database it can create further test databases from.