View Issue Details

IDProjectCategoryView StatusLast Update
0006084Talerdeployment and operationspublic2021-08-24 16:23
ReporterMaverick Assigned ToChristian Grothoff  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Product Versiongit (master) 
Target Version0.8Fixed in Version0.8 
Summary0006084: Dependencies problem during installation of taler
DescriptionI Installing Taler GNU/Linux Ubuntu LTS When Running ./configure i got this error


<code>
 configure: WARNING: libopus not found (required to build conversation)
configure: WARNING: GStreamer not found (required to build conversation).
configure: WARNING: libextractor not found, but various file-sharing functions require it
configure: zbar not found, gnunet-qr will not be built.
configure: libgnurl not found, trying to use libcurl-gnutls instead.
configure: WARNING: ifconfig not found, some features will not work
configure: WARNING: upnpc binary not found, NAT traversal using UPnPc will not work
configure: bluetooth library not found, will not be able to use Bluetooth
configure: error: sqlite3 not found, but sqlite3 is required.

   </code>

and also when using docker how can i fix this error
can you help me please even though some of this dependencies is already installed
TagsNo tags attached.
Attached Files

Activities

Christian Grothoff

2020-02-08 17:49

manager   ~0015319

Maybe you installed libsqlite3, but not the libsqlite3-dev package? Usually the issue is that people install the library, but not the headers (-dev) which are needed for development with / compiling dependencies of the library.

Maverick

2020-02-09 15:28

reporter   ~0015324

Thanks for your reply Mr Christian

So how can i fix that on docker file its still missing even though all of this them already fixed on local machine

Christian Grothoff

2020-02-09 23:49

manager   ~0015327

Docker files also contain a dependency list, but I don't know which docker file you are talking about, so I cannot say how to fix it exactly.

Maverick

2020-02-12 13:26

reporter   ~0015350

I'm using Ubuntu LTS Img without virtual machine for installing and testing taller

And Full log error https://pastebin.com/rVNsi7Su

i hope you help Mr.Christian

Christian Grothoff

2020-02-25 00:10

manager   ~0015403

Ok, the only thing that is really wrong here is that in step 2/12 you need to install libsqlite3-dev. It's actually not (yet) needed for Taler, but GNUnet won't build without it. There is no need to install the other 'optional' dependencies of GNUnet, as Taler won't use those anyway.

Maverick

2020-02-27 18:34

reporter   ~0015414

i Fixed that by editing the docker file in base at it works perfect but i found a new error
errorsh.sh (518,734 bytes)

Christian Grothoff

2020-02-29 16:51

manager   ~0015415

Yes, taler-deployment-config-generate no longer exists. See

https://docs.taler.net/developers-manual.html#bootstrapping-an-environment

for the current deployment script incantation. The Docker spec clearly is quite outdated. Patches welcome...

Maverick

2020-03-12 12:36

reporter   ~0015446

envcfg.py is created and its backs that error


Please create ~/envcfg.py (template in deployment.git can help)

Christian Grothoff

2020-03-15 19:29

manager   ~0015457

I don't understand what you mean by "backs that error".

Maverick

2020-03-28 14:51

reporter   ~0015470

the same error above and when i try to bootstrap an environment this error appears

# ./deployment/bin/taler-deployment bootstrap
  File "./deployment/bin/taler-deployment", line 57
    name: str
        ^
SyntaxError: invalid syntax

Maverick

2020-04-11 15:08

reporter   ~0015622

Fixed The previous error and when bootstrapping the env found this error

https://pastebin.com/VgmbCr4L

i hope you help

Christian Grothoff

2020-04-11 18:22

manager   ~0015623

As the last line says, systemctl could not start the buildbot-worker-taler.service. You should ask journalctl / systemd for the logs to see why exactly it failed to start the worker. Oh, and the simplest reason might be that you didn't install buildbot.

Maverick

2020-04-11 23:57

reporter   ~0015627

already Installed buildbot

https://pastebin.com/FbQacQVz


 *** NOTE : Taler is an awesome project but its very difficult to install in to many methods and a bunch of Opreating Systems i Hope you can find a new better methods for this process , Thanks ***

Christian Grothoff

2020-04-12 15:41

manager   ~0015628

Then you need to consult the systemd logs to see why it fails to start the job.

Note that what you are building with the deployment.git is our rather complicated continuous integration setup on taler.net, this is NOT what a regular production deployment would look like at all.

Maverick

2020-04-26 23:24

reporter   ~0015783

Thanks
I have a problem with database From $ taler-deployment-prepare

>Failed to initialize database.

Christian Grothoff

2020-04-29 12:37

manager   ~0015804

Did you add the $USER running the prepare-script to the list of (super?)users that are allowed to create Postgres databases/tables? I suspect taler-exchange-dbinit fails, and that tool expects that the current $USER has the right to create tables in the exchange's database (and the database and access permissions must have been setup by the 'postgres' user first).

LUG

2020-05-22 11:26

reporter   ~0015943

Last edited: 2020-05-22 11:27

I feel @Maverick's struggle, having unsuccessfully attempted to install a complete Taler development setup multiple times over the last year.

@Christian, you say that "building with the deployment.git is our rather complicated continuous integration setup on taler.net, this is NOT what a regular production deployment would look like at all. "
Does this mean that this process is unsuitable for setting up a working (local) deployment or development environment? If so, would you kindly point us to the relevant bit of documentation about how to get there?
In case Docker is not your game, that's ok, but then naming the specific OS distribution and high level dependencies, that are required but aren't automatically installed, is crucial.

A side not about continuous integration: One big potential that CI setups have is that they can represent a way to document for new devs how setting up components and deploying a service can look like. I'm not sure if its due to my lack of experience with Buildbot or what factors are at play, but I don't seem to be able to trace the CI steps in the first place because they seem to rely on some specific, potentially undocument configuration of the build server.

I understand that there is little time in general, given all the challenges Taler is solving. However, in case Taler wants to become a more approachable open source project, I'm offering an afternoon or two to join a call with one of the maintainers or core devs and discuss my onboarding experience, ask questions and make proposals (gladly in form of pull requests to the docs) for how to improve the situation.

Just for reference, in case this helps @Maverick at least a few steps forward (even though it also isn't yielding a successful Taler deployment; fails at "make[2]: Entering directory '/home/taler/sources/sync/src/syncdb'"), here is the furthest I got with the deployment.git process in form of a Dockerfile:
```
FROM debian:buster

ENV ENVCFGFILE = "envcfg-demo-2019-12-09-01.py"

SHELL ["/bin/bash", "-c"]

RUN apt-get update --assume-yes
# GNUnet dependencies
RUN apt-get install --assume-yes git libtool autoconf autopoint build-essential libgcrypt-dev libidn11-dev zlib1g-dev libunistring-dev libglpk-dev miniupnpc libextractor-dev libjansson-dev libcurl4-gnutls-dev gnutls-bin libsqlite3-dev openssl libnss3-tools libopus-dev libpulse-dev libogg-dev
RUN apt-get install --assume-yes python3 python3-click libtool autopoint libgnutls28-dev build-essential texinfo libgcrypt-dev zlib1g-dev pkg-config sqlite libpq-dev libsqlite3-dev libjansson-dev

RUN groupadd -r taler && useradd -r -g taler taler
RUN mkdir /home/taler && chown -R taler: /home/taler
USER taler
WORKDIR /home/taler

RUN git clone https://git.taler.net/deployment.git ~/deployment
RUN cp ~/deployment/envcfg/envcfg-demo-2019-12-09-01.py ~/envcfg.py && echo "tag_sync = \"v0.7.0\"" >> ~/envcfg.py
RUN ./deployment/bin/taler-deployment bootstrap
RUN source ~/activate && taler-deployment build && taler-deployment-prepare && taler-deployment-start && taler-deployment-arm -I # check everything works
```

Christian Grothoff

2020-05-22 12:23

manager   ~0015944

Installing via deployment.git is really not recommended. deployment.git is ONLY there to help the Taler core team quickly setup its own server after disasters and to manage our deployment on taler.net as a team. As for the buildserver/CI, I think you may need to look at deployment.git/buildbot/master.cfg, that's the buildbot master configuration. And of course the server must already have all of the dependencies installed (apt install ...), the list is quite long for _all_ of the tasks the CI does. And yes, the full configuration of the underlying OS is in a private Git, as it contains some personal information (like e-mail addresses, /etc/shadow, etc.)

Regular installations should follow the instructions in the exchange installation manual at:
https://docs.taler.net/taler-exchange-manual.html#installation

We do want to support a broad range of platforms, so the instructions are generic. If there is a problem at any step in that documentation, it would be good to let us know about it, and we will fix it! If you want to tell us in a Mumble (gnunet.org), we can do that as well. Just propose a time with a bit of advance notice.

Finally, please use the term "Free software" and not "open source" with respect to GNU Taler.

LUG

2020-05-23 18:25

reporter   ~0015950

Last edited: 2020-05-23 18:26

Apologies for the OSS / FS misnomer.

When I first started attempting to contribute to GNU Taler it was focusing on the demos over at demo.taler.net because I thought the best application of my skills would be to improve the first impression potential users get from GNU Taler which for many is demos. Trying to connect that with the pointer to running the exchange documentation, two things come to mind:

Not restricting the docs to a single environment is good and empowers people to use the environments they know best. I feel like it is still beneficial for newcomers to have one reference environment thoroughly documented so that curious folks can easily play around with the API locally in a single afternoon. It seems to me like this could have such a strong effect on getting people hooked beyond the idea, on a technical level. And with thoroughly documented I'm thinking e.g. a Dockerfile (for which regular CI runs ensure it's working), an operating system recommendation + Makefile including all system level dependencies, or in prose the recommended operating system, specific required dependencies and (pointers to) setup instructions for these.

Once I figure out my issues installing the exchange, I still only have the server and none of the demos that utilize this server. So with my intention to contribute to demos, what's my way of getting a fully integrated deployment of all the demos locally? I thought the answer to that question is deployment.git because installing them all individually didn't work out for me due to missing or outdated instructions (of which I reported as many as I could stomach, e.g. 5723, 5699, 5537, 5706, 5693). And if these individual instructions are stellar now, let me know and I'll try again once more.

I hope I'm not coming across as presumptuous, asking for this kind of approachability from GNU Taler or misjudging already present approachability; if I do, please let me know. It seems like all the information is available for the current core devs, evidently demo.taler.net is running, but it is not as transparent for the free software community. I hope that me being here, trying to work this out, is enough of a sign that I'm no random drive by but genuinely supportive.

[1] zlib, libdin, sqlite3, libextractor, gnutls, makeinfo

Christian Grothoff

2020-05-23 21:43

manager   ~0015951

Hi LUG, first of all, thanks for indeed reporting consistently the various build issues you had. I can't claim that they are all "stellar" now, but I can say you for sure were not ignored and we tried to improve the instructions / documentation where you pointed our issues (and pointing those out is appreciated).

Improving the CI is indeed an important task on my list, and I am hoping that Buck will be able to help me with this. The problem is simply that there are really still too many moving pieces. Now, for people working on frontends (like the demo page), we usually recommend to simply use the demo.taler.net auditor/exchange/merchant backends, in part because we know they are not as easy to setup as they should be (yet). I am myself right now working on improving the merchant backend, and once I'm done I expect to go back to exchange/auditor, with one goal actually being to change the C code to make it easier to setup.

LUG

2020-05-24 11:41

reporter   ~0015952

@Christian, I appreciate your patience, explaining the current state and I acknowledge that this state rarely is stellar everywhere in any project that is still growing and progressing.
I'll bring up any separate ideas as individual issues to discuss.

@Maverick, you are cordially invited to answer here what your original intention was, what were you trying to set up and for which purpose? Even though people might be able to help you fix the specific issue you were reporting, it helps the project in the grander scheme to know on which paths to contribution people were struggling.
In case you wanted to build the exchange, maybe we can collaborate on creating an example Docker as one reference setup. Or in case you had something else in mind, let us know, so we can think about how to improve the structure and content of the documentation so that curious community members can easily achieve their goals.

Maverick

2020-05-27 17:24

reporter   ~0015976

@LUG First i wanna heavily thank you so much . you said everything that i wanted to say about how bad is Taler Docs i had tried every method to install Taler but all of them failed (deployment.git , Docker) the process was a big mess and nothing worked at all . All of us respect the efforts that GNU Taler team to keep developing cycle but when you try to install GNU Taler (as same as the official demo) locally its too hard and i felt its totally impossible to do that the reference is misleading me and i can not install GNU Taler Demo locally and test it and its so much struggling to did that and at the end i gave up finally ( i was really sad to quit ) and its impossible and left the process and thats why i'm replying too late .

Second : The purpose of installing GNU Taler Demo for making a small libre payment system

I'm So Happy for your comments @LUG maybe your comment change the Taler Community forever and make it much better than it was .. Thanks

Christian Grothoff

2021-01-03 23:43

manager   ~0017299

LUG/Maverick: the documentation has recently undergone substantial improvements, plus there are now Debian packages (binaries!) which might be useful. I would be interested in hearing about problems you encounter with the _current_ documentation (note that the documentation is for the code in Git, not a source release; we'll call it 0.9.0 when it is released).

LUG

2021-01-04 18:07

reporter   ~0017300

That's wonderful to hear, congrats and thanks for reaching out! I'd be happy to give it another go.

Just to be sure, we should use the master branches of the repos and build from source but we can follow the documentation that is available on the web at https://taler.net/en/docs.html, did I get that right or is the documentation to be found in the individual repos next to the code?
Do I remember correctly that the "Onboarding" documentation is only considered for internal taler.net admins and not for potential contributors? If so, is there an entry point you'd recommend for setting up an integrated local environment with all components like with demo.taler.net?

Christian Grothoff

2021-01-04 18:14

manager   ~0017301

You should use https://docs.taler.net/, Chapter 2 (exchange), Chapter 3 (merchant backend) and for very crazy Chapter 10 (auditor), and if you are absolutely insane and have a full banking license and regulatory permission to operate, Chapter 14 (LibEuFin). ;-)

LUG

2021-01-04 19:03

reporter   ~0017302

Thanks, will stick with the sane bits and keep you posted about the experience :)

Christian Grothoff

2021-01-29 22:48

manager   ~0017453

I think with the new Ubuntu and Debian packages, dependency problems should definitively be easily resolved.

Issue History

Date Modified Username Field Change
2020-02-08 13:38 Maverick New Issue
2020-02-08 17:49 Christian Grothoff Note Added: 0015319
2020-02-08 17:50 Christian Grothoff Status new => feedback
2020-02-09 15:28 Maverick Note Added: 0015324
2020-02-09 15:28 Maverick Status feedback => new
2020-02-09 23:49 Christian Grothoff Note Added: 0015327
2020-02-12 13:26 Maverick Note Added: 0015350
2020-02-25 00:10 Christian Grothoff Note Added: 0015403
2020-02-25 00:11 Christian Grothoff Status new => feedback
2020-02-27 18:34 Maverick File Added: errorsh.sh
2020-02-27 18:34 Maverick Note Added: 0015414
2020-02-27 18:34 Maverick Status feedback => new
2020-02-29 16:51 Christian Grothoff Note Added: 0015415
2020-02-29 16:51 Christian Grothoff Status new => feedback
2020-03-12 12:36 Maverick Note Added: 0015446
2020-03-12 12:36 Maverick Status feedback => new
2020-03-15 19:29 Christian Grothoff Note Added: 0015457
2020-03-28 14:51 Maverick Note Added: 0015470
2020-04-11 15:08 Maverick Note Added: 0015622
2020-04-11 18:22 Christian Grothoff Note Added: 0015623
2020-04-11 23:57 Maverick Note Added: 0015627
2020-04-12 15:41 Christian Grothoff Note Added: 0015628
2020-04-26 23:24 Maverick Note Added: 0015783
2020-04-29 12:37 Christian Grothoff Note Added: 0015804
2020-05-22 11:26 LUG Note Added: 0015943
2020-05-22 11:27 LUG Note Edited: 0015943
2020-05-22 12:23 Christian Grothoff Note Added: 0015944
2020-05-23 18:25 LUG Note Added: 0015950
2020-05-23 18:26 LUG Note Edited: 0015950
2020-05-23 21:43 Christian Grothoff Note Added: 0015951
2020-05-24 11:41 LUG Note Added: 0015952
2020-05-27 17:24 Maverick Note Added: 0015976
2021-01-01 16:46 Christian Grothoff Assigned To => Christian Grothoff
2021-01-01 16:46 Christian Grothoff Status new => assigned
2021-01-03 23:43 Christian Grothoff Note Added: 0017299
2021-01-04 18:07 LUG Note Added: 0017300
2021-01-04 18:14 Christian Grothoff Note Added: 0017301
2021-01-04 19:03 LUG Note Added: 0017302
2021-01-29 22:48 Christian Grothoff Status assigned => resolved
2021-01-29 22:48 Christian Grothoff Resolution open => fixed
2021-01-29 22:48 Christian Grothoff Fixed in Version => 0.9
2021-01-29 22:48 Christian Grothoff Note Added: 0017453
2021-01-29 22:48 Christian Grothoff Product Version => git (master)
2021-01-29 22:48 Christian Grothoff Target Version => 0.9
2021-07-30 13:57 Christian Grothoff Fixed in Version 0.9 => 0.8.1
2021-07-30 13:59 Christian Grothoff Target Version 0.9 => 0.8.1
2021-07-30 14:01 Christian Grothoff Fixed in Version 0.8.1 => 0.8
2021-07-30 14:02 Christian Grothoff Target Version 0.8.1 => 0.8
2021-08-24 16:23 Christian Grothoff Status resolved => closed