taler
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Taler] Taler issue with Nix


From: Christian Grothoff
Subject: Re: [Taler] Taler issue with Nix
Date: Tue, 10 Sep 2024 19:52:00 +0200
User-agent: Mozilla Thunderbird

Dear Fedi,

Pardon me for not having looked at your configurations, but I have one nagging suspicion: did you add the exchange to the merchant configuration as a trusted exchange?
For example, by default we include a configuration file 'kudos.conf':

$ cat kudos.conf
# Trust Taler project for "KUDOS" currency so that demos work out-of-the-box
[merchant-exchange-kudos]
EXCHANGE_BASE_URL = https://exchange.demo.taler.net/
MASTER_KEY = "F80MFRG8HVH6R9CQ47KRFQSJP3T6DBJ4K1D9B703RJY3Z39TBMJ0"
CURRENCY = KUDOS

which enables that specific exchange with that specific master public key to the list of exchanges this merchant will accept funds from. If you did not add the exchange you set up locally, well, then the merchant will tell the wallets that it doesn't trust that exchange, and then wallets will not consider that exchange when trying to pay the merchant --- and IIRC you should see basically that exact error message.
Anyway, if that is _not_ the case, we'll need to dig a bit deeper, but 
this seems the most likely explanation. Note that I'm not exactly sure 
that this is something Nix packages _should_ configure automatically, as 
which exchanges one does business with _beyond_ those that are shipped 
with the packages is intended to be a manual decision by each merchant. 
So this could well be a case of "need to improve documentation" and not 
"need to fix packaging" ;-).
Happy hacking!

Christian

On 9/10/24 6:14 PM, Fedi Jamoussi via Taler wrote:
Dear GNU Taler developers,

My name is Fedi Jamoussi (@eljamm <https://github.com/eljamm>) and I'm a Summer of Nix <https://github.com/ngi-nix/summer-of-nix> 2024 participant working with (@Atemu <https://github.com/Atemu>) on packaging Taler with Nix. Everything has been progressing smoothly since starting this endeavor, but we've recently run into a bit of a roadblock and we're hoping you can help us solve it.
So far, the core Taler components have already been packaged 
successfully in nixpkgs and have been recently updated to version 0.13 
<https://github.com/NixOS/nixpkgs/pull/338184>. Currently, we are 
working on a NixOS module <https://github.com/NixOS/nixpkgs/pull/332699> 
which will make setting up these components much easier and which 
already supports configuring the exchange, libeufin-{bank,nexus} and the 
merchant.
To showcase the capabilities of the module and provide an example of how 
it's configured, we've also made a NixOS test 
<https://github.com/NixOS/nixpkgs/blob/5a2a5aa3d700f795daa77d69451f06d4e4917a7c/nixos/tests/taler/basic.nix> where each component runs separately in a VM to simulate a real-world scenario in which multi-machine interactions are happening.
In this test, we're registering the services' accounts and instances, 
making a currency withdrawal to the CLI wallet and then using those 
coins to pay for a merchant's order.
The issue here is that the wallet is unable to pay for the order and 
instead prints an /"insufficient balance"/ message, even though the 
funds have been successfully withdrawn and are available. However, this 
doesn't happen when using the online bank <https://bank.demo.taler.net> 
and exchange <https://exchange.demo.taler.net> demos with the same 
wallet and merchant.
As such, this leads me to believe that something is wrong or missing in 
the configuration of these two components or in how they're handling the 
transaction. There might also have been a step that we missed to make 
the wallet's funds spendable.
In this regard, I hope the attached document 
<https://drive.proton.me/urls/2C675D921C#Wdi92BXuXZGB>, which contains 
the logs and configs, will help shed some light on the issue at hand and 
if you need any further information, I'll be happy to provide it.
That said, I'm unfortunately nearing the limit of hours I have left in 
the SoN program, but I'd really like to solve this issue and have a 
fully-working basic example by that time. If we can accomplish this, 
then perhaps the NixOS module can accompany Taler's launch as an easy 
way to configure and test the program.
Thank you for the amazing work that you're doing. We're looking forward 
to your support.
--
Best Regards,
Fedi Jamoussi


reply via email to

[Prev in Thread] Current Thread [Next in Thread]