[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Taler] Taler issue with Nix
From: |
Florian Dold |
Subject: |
Re: [Taler] Taler issue with Nix |
Date: |
Tue, 10 Sep 2024 21:34:15 +0200 |
Looking at the logs:
client # "balanceReceiverAcceptable": "KUDOS:10",
client # "balanceReceiverDepositable": "KUDOS:0",
Means the merchant is configured to accept the exchange, but the
merchant doesn't have a bank account configured that the exchange can
deposit into.
(Don't know why the order could have been created in the first place
--- maybe the merchant instance has some other account configured that
is not x-taler-bank?)
- Florian
On Tue, Sep 10, 2024 at 8:16 PM Fedi Jamoussi via Taler <taler@gnu.org> wrote:
>
> Thank you for the swift reply, Christian.
>
> Indeed, we did add the exchange to the merchant's config:
>
> [merchant-exchange-test]
> CURRENCY=KUDOS
> EXCHANGE_BASE_URL=http://exchange:8081/
> MASTER_KEY=2TQSTPFZBC2MC4E52NHPA050YXYG02VC3AB50QESM6JX1QJEYVQ0
>
> Which reminds me that I forgot to include its config file previously since it
> was on a different VM (oops), but I'll add it here.
>
> > Note that I'm not exactly sure that this is something Nix packages _should_
> > configure automatically
>
> You're right and this is not set by default by the module. Rather, it's only
> configured for the purpose of the test, which is also the case for the
> account and instance registrations and the keys.
>
> Best Regards,
> Fedi
>
>
> Sent with Proton Mail secure email.
>
> On Tuesday, September 10th, 2024 at 6:52 PM, Christian Grothoff
> <grothoff@gnunet.org> wrote:
>
> > 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