1 { lib, stdenv, fetchgit, curl, gnunet, jansson, libgcrypt, libmicrohttpd
2 , qrencode, libsodium, libtool, libunistring, pkg-config, postgresql
3 , autoreconfHook, python3, recutils, wget, jq, gettext, texinfo
9 taler-wallet-core = fetchgit {
10 url = "https://git.taler.net/wallet-core.git";
12 hash = "sha256-sgiJd1snN9JDqS7IUeORKL60Gcm7XwL/JCX3sNRDTdY=";
15 taler-exchange = stdenv.mkDerivation {
16 pname = "taler-exchange";
20 url = "https://git.taler.net/exchange.git";
22 fetchSubmodules = true;
23 hash = "sha256-SKnMep8bMQaJt4r3u0SrzwYSuFbzv4RnflbutSqwtPg=";
25 # When fetching submodules without the .git folder we get the following error:
26 # "Server does not allow request for unadvertised object"
46 texinfo # Fix 'makeinfo' is missing on your system.
49 # jq is necessary for some tests and is checked by configure script
52 propagatedBuildInputs = [ gnunet ];
56 ./contrib/gana-generate.sh
58 find wallet-core/aml-backoffice/ -type f -printf ' %p \\\n' | sort > Makefile.am.ext
59 truncate -s -2 Makefile.am.ext
60 cat Makefile.am.in Makefile.am.ext >> Makefile.am
64 enableParallelBuilding = true;
66 nativeCheckInputs = [ wget curl ];
67 doInstallCheck = true;
68 checkTarget = "check";
72 Taler is an electronic payment system providing the ability to pay
73 anonymously using digital cash. Taler consists of a network protocol
74 definition (using a RESTful API over HTTP), a Exchange (which creates
75 digital coins), a Wallet (which allows customers to manage, store and
76 spend digital coins), and a Merchant website which allows customers to
77 spend their digital coins. Naturally, each Merchant is different, but
78 Taler includes code examples to help Merchants integrate Taler as a
81 homepage = "https://taler.net/";
82 license = licenses.agpl3Plus;
83 maintainers = with maintainers; [ astro ];
84 platforms = platforms.linux;
88 taler-merchant = stdenv.mkDerivation {
89 pname = "taler-merchant";
93 url = "https://git.taler.net/merchant.git";
95 fetchSubmodules = true;
96 hash = "sha256-8VpoyloLpd/HckSIRU6IclWUXQyEHqlcNdoJI9U3t0Y=";
99 ln -s ${taler-wallet-core}/spa.html $sourceRoot/contrib/
102 nativeBuildInputs = [ pkg-config autoreconfHook ];
103 buildInputs = taler-exchange.buildInputs ++ [
109 propagatedBuildInputs = [ gnunet ];
114 find wallet-core/backoffice/ -type f -printf ' %p \\\n' | sort > Makefile.am.ext
115 truncate -s -2 Makefile.am.ext
116 cat Makefile.am.in Makefile.am.ext >> Makefile.am
120 "--with-gnunet=${gnunet}"
121 "--with-exchange=${taler-exchange}"
124 enableParallelBuilding = true;
126 nativeCheckInputs = [ jq ];
127 doInstallCheck = true;
128 checkTarget = "check";
132 This is the GNU Taler merchant backend. It provides the logic that should run
133 at every GNU Taler merchant. The GNU Taler merchant is a RESTful backend that
134 can be used to setup orders and process payments. This component allows
135 merchants to receive payments without invading the customers' privacy. Of
136 course, this applies mostly for digital goods, as the merchant does not need
137 to know the customer's physical address.
139 homepage = "https://taler.net/";
140 license = licenses.agpl3Plus;
141 maintainers = with maintainers; [ astro ];
142 platforms = platforms.linux;
146 inherit taler-exchange taler-merchant;