gnu: ruby-pandoc-ruby: Use pandoc instead of ghc-pandoc.
[jackhill/guix/guix.git] / gnu / packages / tryton.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2017 Adriano Peluso <catonano@gmail.com>
3 ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
4 ;;;
5 ;;; This file is part of GNU Guix.
6 ;;;
7 ;;; GNU Guix is free software; you can redistribute it and/or modify it
8 ;;; under the terms of the GNU General Public License as published by
9 ;;; the Free Software Foundation; either version 3 of the License, or (at
10 ;;; your option) any later version.
11 ;;;
12 ;;; GNU Guix is distributed in the hope that it will be useful, but
13 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
14 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 ;;; GNU General Public License for more details.
16 ;;;
17 ;;; You should have received a copy of the GNU General Public License
18 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
19
20 (define-module (gnu packages tryton)
21 #:use-module ((guix licenses) #:prefix license:)
22 #:use-module (gnu packages)
23 #:use-module (gnu packages check)
24 #:use-module (gnu packages databases)
25 #:use-module (gnu packages finance)
26 #:use-module (gnu packages glib)
27 #:use-module (gnu packages gnome)
28 #:use-module (gnu packages gtk)
29 #:use-module (gnu packages python)
30 #:use-module (gnu packages python-crypto)
31 #:use-module (gnu packages python-web)
32 #:use-module (gnu packages python-xyz)
33 #:use-module (gnu packages time)
34 #:use-module (gnu packages xml)
35 #:use-module (guix packages)
36 #:use-module (guix download)
37 #:use-module (guix utils)
38 #:use-module (guix build-system python))
39
40 (define-public python-trytond
41 (package
42 (name "python-trytond")
43 (version "5.6.5")
44 (source
45 (origin
46 (method url-fetch)
47 (uri (pypi-uri "trytond" version))
48 (sha256
49 (base32 "1n76ccv2x5csz80p42dav8rhzg2m14wdi3bj1pizhw8x2hxxfwx3"))))
50 (build-system python-build-system)
51 (inputs
52 `(("python-dateutil" ,python-dateutil)
53 ("python-genshi" ,python-genshi)
54 ("python-lxml" ,python-lxml)
55 ("python-magic" ,python-magic)
56 ("python-passlib" ,python-passlib)
57 ("python-polib" ,python-polib)
58 ("python-psycopg2" ,python-psycopg2)
59 ("python-relatorio" ,python-relatorio)
60 ("python-sql" ,python-sql)
61 ("python-werkzeug" ,python-werkzeug)
62 ("python-wrapt" ,python-wrapt)))
63 (native-inputs
64 `(("python-mock" ,python-mock)))
65 (arguments
66 `(#:phases
67 (modify-phases %standard-phases
68 (add-before 'check 'preparations
69 (lambda _
70 (setenv "DB_NAME" ":memory:")
71 (setenv "HOME" "/tmp")
72 #t)))))
73 (home-page "https://www.tryton.org/")
74 (synopsis "Server component of Tryton")
75 (description "Tryton is a three-tier high-level general purpose
76 application platform using PostgreSQL as its main database engine. It is the
77 core base of a complete business solution providing modularity, scalability
78 and security.")
79 (license license:gpl3+)))
80
81 (define-public tryton
82 (package
83 (name "tryton")
84 (version "5.6.3")
85 (source
86 (origin
87 (method url-fetch)
88 (uri (pypi-uri "tryton" version))
89 (sha256
90 (base32 "1dghr6x5wga3sizjvj261xndpl38si5hwiz3llm2bhmg33nplfh7"))))
91 (build-system python-build-system)
92 (arguments
93 `(#:phases
94 (modify-phases %standard-phases
95 (add-before 'check 'change-home
96 (lambda _
97 ;; Change from /homeless-shelter to /tmp for write permission.
98 (setenv "HOME" "/tmp")))
99 (add-after 'install 'wrap-gi-python
100 (lambda* (#:key inputs outputs #:allow-other-keys)
101 (let ((out (assoc-ref outputs "out"))
102 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
103 (wrap-program (string-append out "/bin/tryton")
104 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
105 #t)))))
106 (native-inputs
107 `(("glib-compile-schemas" ,glib "bin")
108 ("gobject-introspection" ,gobject-introspection)))
109 (inputs
110 `(("gdk-pixbuf" ,gdk-pixbuf+svg)
111 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
112 ("gtk+" ,gtk+)
113 ("python-dateutil" ,python-dateutil)
114 ("python-pycairo" ,python-pycairo)
115 ("python-pygobject" ,python-pygobject)))
116 (home-page "https://www.tryton.org/")
117 (synopsis "Client component of Tryton")
118 (description
119 "This package is the client component of Tryton.")
120 (license license:gpl3+)))
121
122 (define-public python-trytond-country
123 (package
124 (name "python-trytond-country")
125 (version "5.6.0")
126 (source
127 (origin
128 (method url-fetch)
129 (uri (pypi-uri "trytond_country" version))
130 (sha256
131 (base32 "0k1xw5r2pfd5mvvg3pn3vavwjwpgmm5i6nsc8x421znk4gvvns78"))))
132 (build-system python-build-system)
133 (arguments
134 `(#:phases
135 (modify-phases %standard-phases
136 (replace 'check
137 (let ((runtest
138 (string-append
139 (assoc-ref %build-inputs "python-trytond")
140 "/lib/python"
141 ,(version-major+minor (package-version python))
142 "/site-packages/trytond/tests/run-tests.py")))
143 (lambda* (#:key inputs outputs #:allow-other-keys)
144 (add-installed-pythonpath inputs outputs)
145 ;; Doctest contains one test that requires internet access.
146 (invoke "python" runtest "-m" "country" "--no-doctest")))))))
147 (native-inputs
148 `(("python" ,python)
149 ("python-dateutil" ,python-dateutil)
150 ("python-genshi" ,python-genshi)
151 ("python-lxml" ,python-lxml)
152 ("python-magic" ,python-magic)
153 ("python-passlib" ,python-passlib)
154 ("python-polib" ,python-polib)
155 ("python-proteus" ,python-proteus)
156 ("python-relatorio" ,python-relatorio)
157 ("python-sql" ,python-sql)
158 ("python-werkzeug" ,python-werkzeug)
159 ("python-wrapt" ,python-wrapt)))
160 (propagated-inputs
161 `(("python-pycountry" ,python-pycountry)
162 ("python-trytond" ,python-trytond)))
163 (home-page "http://www.tryton.org/")
164 (synopsis "Tryton module with countries")
165 (description
166 "This package provides a Tryton module with countries.")
167 (license license:gpl3+)))
168
169 (define-public python-trytond-party
170 (package
171 (name "python-trytond-party")
172 (version "5.6.0")
173 (source
174 (origin
175 (method url-fetch)
176 (uri (pypi-uri "trytond_party" version))
177 (sha256
178 (base32 "0wh7g1g67g4vwxm797ra6fkfvmd3w77vl7nxj76y856cy217gbzp"))))
179 (build-system python-build-system)
180 (arguments
181 `(#:phases
182 (modify-phases %standard-phases
183 (replace 'check
184 (let ((runtest
185 (string-append
186 (assoc-ref %build-inputs "python-trytond")
187 "/lib/python"
188 ,(version-major+minor (package-version python))
189 "/site-packages/trytond/tests/run-tests.py")))
190 (lambda* (#:key inputs outputs #:allow-other-keys)
191 (add-installed-pythonpath inputs outputs)
192 ;; Doctest 'scenario_party_phone_number.rst' fails.
193 (invoke "python" runtest "-m" "party" "--no-doctest")))))))
194 (native-inputs
195 `(("python" ,python-minimal-wrapper)
196 ("python-dateutil" ,python-dateutil)
197 ("python-genshi" ,python-genshi)
198 ("python-lxml" ,python-lxml)
199 ("python-magic" ,python-magic)
200 ("python-passlib" ,python-passlib)
201 ("python-polib" ,python-polib)
202 ("python-proteus" ,python-proteus)
203 ("python-relatorio" ,python-relatorio)
204 ("python-werkzeug" ,python-werkzeug)
205 ("python-wrapt" ,python-wrapt)))
206 (propagated-inputs
207 `(("python-sql" ,python-sql)
208 ("python-stnum" ,python-stdnum)
209 ("python-trytond" ,python-trytond)
210 ("python-trytond-country" ,python-trytond-country)))
211 (home-page "https://www.tryton.org/")
212 (synopsis "Tryton module for parties and addresses")
213 (description
214 "This package provides a Tryton module for (counter)parties and
215 addresses.")
216 (license license:gpl3+)))
217
218 (define-public python-trytond-currency
219 (package
220 (name "python-trytond-currency")
221 (version "5.6.0")
222 (source
223 (origin
224 (method url-fetch)
225 (uri (pypi-uri "trytond_currency" version))
226 (sha256
227 (base32 "1x6ynxpbafjpky5vfir9favijj6v5gl62szshladlx14ng6qgm68"))))
228 (build-system python-build-system)
229 (arguments
230 `(#:phases
231 (modify-phases %standard-phases
232 (replace 'check
233 (let ((runtest
234 (string-append
235 (assoc-ref %build-inputs "python-trytond")
236 "/lib/python"
237 ,(version-major+minor (package-version python))
238 "/site-packages/trytond/tests/run-tests.py")))
239 (lambda* (#:key inputs outputs #:allow-other-keys)
240 (add-installed-pythonpath inputs outputs)
241 (invoke "python" runtest "-m" "currency")))))))
242 (native-inputs
243 `(("python" ,python-minimal-wrapper)
244 ("python-dateutil" ,python-dateutil)
245 ("python-genshi" ,python-genshi)
246 ("python-forex-python" ,python-forex-python)
247 ("python-lxml" ,python-lxml)
248 ("python-magic" ,python-magic)
249 ("python-passlib" ,python-passlib)
250 ("python-polib" ,python-polib)
251 ("python-proteus" ,python-proteus)
252 ("python-pycountry" ,python-pycountry)
253 ("python-relatorio" ,python-relatorio)
254 ("python-werkzeug" ,python-werkzeug)
255 ("python-wrapt" ,python-wrapt)))
256 (propagated-inputs
257 `(("python-sql" ,python-sql)
258 ("python-trytond" ,python-trytond)))
259 (home-page "https://www.tryton.org/")
260 (synopsis "Tryton module with currencies")
261 (description
262 "This package provides a Tryton module that defines the concepts of
263 currency and rate.")
264 (license license:gpl3+)))
265
266 (define-public python-trytond-company
267 (package
268 (name "python-trytond-company")
269 (version "5.6.0")
270 (source
271 (origin
272 (method url-fetch)
273 (uri (pypi-uri "trytond_company" version))
274 (sha256
275 (base32 "0fa2yswfal1fbmm0ml845lm6bwcm65fln6s1xq1wqi17xqbbx44x"))))
276 (build-system python-build-system)
277 (arguments
278 `(#:phases
279 (modify-phases %standard-phases
280 (replace 'check
281 (let ((runtest
282 (string-append
283 (assoc-ref %build-inputs "python-trytond")
284 "/lib/python"
285 ,(version-major+minor (package-version python))
286 "/site-packages/trytond/tests/run-tests.py")))
287 (lambda* (#:key inputs outputs #:allow-other-keys)
288 (add-installed-pythonpath inputs outputs)
289 (invoke "python" runtest "-m" "company")))))))
290 (native-inputs
291 `(("python" ,python-minimal-wrapper)
292 ("python-dateutil" ,python-dateutil)
293 ("python-genshi" ,python-genshi)
294 ("python-lxml" ,python-lxml)
295 ("python-magic" ,python-magic)
296 ("python-passlib" ,python-passlib)
297 ("python-polib" ,python-polib)
298 ("python-proteus" ,python-proteus)
299 ("python-relatorio" ,python-relatorio)
300 ("python-sql" ,python-sql)
301 ("python-werkzeug" ,python-werkzeug)
302 ("python-wrapt" ,python-wrapt)))
303 (propagated-inputs
304 `(("python-trytond" ,python-trytond)
305 ("python-trytond-currency"
306 ,python-trytond-currency)
307 ("python-trytond-party" ,python-trytond-party)))
308 (home-page "https://www.tryton.org/")
309 (synopsis "Tryton module with companies and employees")
310 (description
311 "This package provides a Tryton module that defines the concepts of
312 company and employee and extend the user model.")
313 (license license:gpl3+)))
314
315 (define-public python-trytond-product
316 (package
317 (name "python-trytond-product")
318 (version "5.6.1")
319 (source
320 (origin
321 (method url-fetch)
322 (uri (pypi-uri "trytond_product" version))
323 (sha256
324 (base32 "0k1sw1jfgsm9qhyhv4lzama31db6ccjx5f2a7xw96ypflfl9f1xz"))))
325 (build-system python-build-system)
326 (arguments
327 `(#:phases
328 (modify-phases %standard-phases
329 (replace 'check
330 (let ((runtest
331 (string-append
332 (assoc-ref %build-inputs "python-trytond")
333 "/lib/python"
334 ,(version-major+minor (package-version python))
335 "/site-packages/trytond/tests/run-tests.py")))
336 (lambda* (#:key inputs outputs #:allow-other-keys)
337 (add-installed-pythonpath inputs outputs)
338 (invoke "python" runtest "-m" "product")))))))
339 (native-inputs
340 `(("python" ,python-minimal-wrapper)
341 ("python-dateutil" ,python-dateutil)
342 ("python-genshi" ,python-genshi)
343 ("python-lxml" ,python-lxml)
344 ("python-magic" ,python-magic)
345 ("python-passlib" ,python-passlib)
346 ("python-polib" ,python-polib)
347 ("python-proteus" ,python-proteus)
348 ("python-relatorio" ,python-relatorio)
349 ("python-werkzeug" ,python-werkzeug)
350 ("python-wrapt" ,python-wrapt)))
351 (propagated-inputs
352 `(("python-sql" ,python-sql)
353 ("python-stdnum" ,python-stdnum)
354 ("python-trytond" ,python-trytond)
355 ("python-trytond-company"
356 ,python-trytond-company)))
357 (home-page "https://www.tryton.org/")
358 (synopsis "Tryton module with products")
359 (description
360 "This package provides a Tryton module that defines two concepts: Product
361 Template and Product.")
362 (license license:gpl3+)))
363
364 (define-public python-trytond-account
365 (package
366 (name "python-trytond-account")
367 (version "5.6.1")
368 (source
369 (origin
370 (method url-fetch)
371 (uri (pypi-uri "trytond_account" version))
372 (sha256
373 (base32 "17q0cxp3vkymbv62ir4c6kg9y8lx8xvz30p0asrbsnbgwl6sjm30"))))
374 (build-system python-build-system)
375 (arguments
376 `(#:phases
377 (modify-phases %standard-phases
378 (replace 'check
379 (let ((runtest
380 (string-append
381 (assoc-ref %build-inputs "python-trytond")
382 "/lib/python"
383 ,(version-major+minor (package-version python))
384 "/site-packages/trytond/tests/run-tests.py")))
385 (lambda* (#:key inputs outputs #:allow-other-keys)
386 (add-installed-pythonpath inputs outputs)
387 (invoke "python" runtest "-m" "account")))))))
388 (native-inputs
389 `(("python" ,python-minimal-wrapper)
390 ("python-genshi" ,python-genshi)
391 ("python-lxml" ,python-lxml)
392 ("python-magic" ,python-magic)
393 ("python-passlib" ,python-passlib)
394 ("python-polib" ,python-polib)
395 ("python-proteus" ,python-proteus)
396 ("python-relatorio" ,python-relatorio)
397 ("python-werkzeug" ,python-werkzeug)
398 ("python-wrapt" ,python-wrapt)))
399 (propagated-inputs
400 `(("python-dateutil" ,python-dateutil)
401 ("python-simpleeval" ,python-simpleeval)
402 ("python-sql" ,python-sql)
403 ("python-trytond" ,python-trytond)
404 ("python-trytond-company"
405 ,python-trytond-company)
406 ("python-trytond-currency"
407 ,python-trytond-currency)
408 ("python-trytond-party" ,python-trytond-party)))
409 (home-page "https://www.tryton.org/")
410 (synopsis "Tryton module for accounting")
411 (description
412 "This package provides a Tryton module that defines the fundamentals for
413 most of accounting needs.")
414 (license license:gpl3+)))
415
416 (define-public python-trytond-analytic-account
417 (package
418 (name "python-trytond-analytic-account")
419 (version "5.6.0")
420 (source
421 (origin
422 (method url-fetch)
423 (uri (pypi-uri "trytond_analytic_account" version))
424 (sha256
425 (base32 "02hv3mmhadz248vy4azrw8rs2mwgsixd4cnzsm82z15gjmfxl34q"))))
426 (build-system python-build-system)
427 (arguments
428 `(#:phases
429 (modify-phases %standard-phases
430 (replace 'check
431 (let ((runtest
432 (string-append
433 (assoc-ref %build-inputs "python-trytond")
434 "/lib/python"
435 ,(version-major+minor (package-version python))
436 "/site-packages/trytond/tests/run-tests.py")))
437 (lambda* (#:key inputs outputs #:allow-other-keys)
438 (add-installed-pythonpath inputs outputs)
439 (invoke "python" runtest "-m" "analytic_account")))))))
440 (native-inputs
441 `(("python" ,python-minimal-wrapper)
442 ("python-dateutil" ,python-dateutil)
443 ("python-genshi" ,python-genshi)
444 ("python-lxml" ,python-lxml)
445 ("python-magic" ,python-magic)
446 ("python-passlib" ,python-passlib)
447 ("python-polib" ,python-polib)
448 ("python-proteus" ,python-proteus)
449 ("python-relatorio" ,python-relatorio)
450 ("python-werkzeug" ,python-werkzeug)
451 ("python-wrapt" ,python-wrapt)))
452 (propagated-inputs
453 `(("python-sql" ,python-sql)
454 ("python-trytond" ,python-trytond)
455 ("python-trytond-account"
456 ,python-trytond-account)
457 ("python-trytond-company"
458 ,python-trytond-company)
459 ("python-trytond-currency"
460 ,python-trytond-currency)
461 ("python-trytond-party" ,python-trytond-party)))
462 (home-page "https://www.tryton.org/")
463 (synopsis "Tryton module for analytic accounting")
464 (description
465 "This package provides a Tryton module that adds the fundamentals
466 required to analyse accounting using multiple different axes.")
467 (license license:gpl3+)))
468
469 (define-public python-trytond-account-product
470 (package
471 (name "python-trytond-account-product")
472 (version "5.6.0")
473 (source
474 (origin
475 (method url-fetch)
476 (uri (pypi-uri "trytond_account_product" version))
477 (sha256
478 (base32 "0iyk07adixf37jlvn7n27ac12hk23zx09w4s78dr9sfp0lsf8vv8"))))
479 (build-system python-build-system)
480 (arguments
481 `(#:phases
482 (modify-phases %standard-phases
483 (replace 'check
484 (let ((runtest
485 (string-append
486 (assoc-ref %build-inputs "python-trytond")
487 "/lib/python"
488 ,(version-major+minor (package-version python))
489 "/site-packages/trytond/tests/run-tests.py")))
490 (lambda* (#:key inputs outputs #:allow-other-keys)
491 (add-installed-pythonpath inputs outputs)
492 (invoke "python" runtest "-m" "account_product")))))))
493 (native-inputs
494 `(("python" ,python-minimal-wrapper)
495 ("python-dateutil" ,python-dateutil)
496 ("python-genshi" ,python-genshi)
497 ("python-lxml" ,python-lxml)
498 ("python-magic" ,python-magic)
499 ("python-passlib" ,python-passlib)
500 ("python-polib" ,python-polib)
501 ("python-proteus" ,python-proteus)
502 ("python-relatorio" ,python-relatorio)
503 ("python-sql" ,python-sql)
504 ("python-werkzeug" ,python-werkzeug)
505 ("python-wrapt" ,python-wrapt)))
506 (propagated-inputs
507 `(("python-trytond" ,python-trytond)
508 ("python-trytond-account"
509 ,python-trytond-account)
510 ("python-trytond-analytic-account"
511 ,python-trytond-analytic-account)
512 ("python-trytond-company"
513 ,python-trytond-company)
514 ("python-trytond-product"
515 ,python-trytond-product)))
516 (home-page "https://www.tryton.org/")
517 (synopsis "Tryton module to add accounting on product")
518 (description
519 "This package provides a Tryton module that adds accounting on product
520 and category.")
521 (license license:gpl3+)))
522
523 (define-public python-trytond-account-invoice
524 (package
525 (name "python-trytond-account-invoice")
526 (version "5.6.1")
527 (source
528 (origin
529 (method url-fetch)
530 (uri (pypi-uri "trytond_account_invoice" version))
531 (sha256
532 (base32 "0ic5zghg50m6jwdr88y4vgzy58g1h17b63sbhh61brys1cp2dxhc"))))
533 (build-system python-build-system)
534 (arguments
535 `(#:phases
536 (modify-phases %standard-phases
537 (replace 'check
538 (let ((runtest
539 (string-append
540 (assoc-ref %build-inputs "python-trytond")
541 "/lib/python"
542 ,(version-major+minor (package-version python))
543 "/site-packages/trytond/tests/run-tests.py")))
544 (lambda* (#:key inputs outputs #:allow-other-keys)
545 (add-installed-pythonpath inputs outputs)
546 (invoke "python" runtest "-m" "account_invoice")))))))
547 (native-inputs
548 `(("python" ,python-minimal-wrapper)
549 ("python-genshi" ,python-genshi)
550 ("python-lxml" ,python-lxml)
551 ("python-magic" ,python-magic)
552 ("python-passlib" ,python-passlib)
553 ("python-polib" ,python-polib)
554 ("python-proteus" ,python-proteus)
555 ("python-relatorio" ,python-relatorio)
556 ("python-werkzeug" ,python-werkzeug)
557 ("python-wrapt" ,python-wrapt)))
558 (propagated-inputs
559 `(("python-dateutil" ,python-dateutil)
560 ("python-sql" ,python-sql)
561 ("python-trytond" ,python-trytond)
562 ("python-trytond-account"
563 ,python-trytond-account)
564 ("python-trytond-account-product"
565 ,python-trytond-account-product)
566 ("python-trytond-company"
567 ,python-trytond-company)
568 ("python-trytond-currency"
569 ,python-trytond-currency)
570 ("python-trytond-party" ,python-trytond-party)
571 ("python-trytond-product"
572 ,python-trytond-product)))
573 (home-page "https://www.tryton.org/")
574 (synopsis "Tryton module for invoicing")
575 (description
576 "This package provides a Tryton module that adds the invoice, payment
577 term.")
578 (license license:gpl3+)))
579
580 (define-public python-trytond-stock
581 (package
582 (name "python-trytond-stock")
583 (version "5.6.1")
584 (source
585 (origin
586 (method url-fetch)
587 (uri (pypi-uri "trytond_stock" version))
588 (sha256
589 (base32 "13m57absscks2advpjz0mmmp6c0c4ksf9aln1brqyd0js38arw76"))))
590 (build-system python-build-system)
591 (arguments
592 `(#:phases
593 (modify-phases %standard-phases
594 (replace 'check
595 (let ((runtest
596 (string-append
597 (assoc-ref %build-inputs "python-trytond")
598 "/lib/python"
599 ,(version-major+minor (package-version python))
600 "/site-packages/trytond/tests/run-tests.py")))
601 (lambda* (#:key inputs outputs #:allow-other-keys)
602 (add-installed-pythonpath inputs outputs)
603 (invoke "python" runtest "-m" "stock")))))))
604 (native-inputs
605 `(("python" ,python-minimal-wrapper)
606 ("python-genshi" ,python-genshi)
607 ("python-lxml" ,python-lxml)
608 ("python-magic" ,python-magic)
609 ("python-passlib" ,python-passlib)
610 ("python-polib" ,python-polib)
611 ("python-proteus" ,python-proteus)
612 ("python-relatorio" ,python-relatorio)
613 ("python-werkzeug" ,python-werkzeug)
614 ("python-wrapt" ,python-wrapt)))
615 (propagated-inputs
616 `(("python-simpleeval" ,python-simpleeval)
617 ("python-sql" ,python-sql)
618 ("python-trytond" ,python-trytond)
619 ("python-trytond-company"
620 ,python-trytond-company)
621 ("python-trytond-currency"
622 ,python-trytond-currency)
623 ("python-trytond-party" ,python-trytond-party)
624 ("python-trytond-product"
625 ,python-trytond-product)))
626 (home-page "https://www.tryton.org/")
627 (synopsis "Tryton module for stock and inventory")
628 (description
629 "This package provides a Tryton module that defines the fundamentals for
630 all stock management situations: Locations where products are stored, moves
631 between these locations, shipments for product arrivals and departures and
632 inventory to control and update stock levels.")
633 (license license:gpl3+)))
634
635 (define-public python-trytond-stock-lot
636 (package
637 (name "python-trytond-stock-lot")
638 (version "5.6.0")
639 (source
640 (origin
641 (method url-fetch)
642 (uri (pypi-uri "trytond_stock_lot" version))
643 (sha256
644 (base32 "0a0kc8dyx2zw244dhq6lm2jdp1kzpllhdhrmx7kkr9cjhp58rqip"))))
645 (build-system python-build-system)
646 (arguments
647 `(#:phases
648 (modify-phases %standard-phases
649 (replace 'check
650 (let ((runtest
651 (string-append
652 (assoc-ref %build-inputs "python-trytond")
653 "/lib/python"
654 ,(version-major+minor (package-version python))
655 "/site-packages/trytond/tests/run-tests.py")))
656 (lambda* (#:key inputs outputs #:allow-other-keys)
657 (add-installed-pythonpath inputs outputs)
658 (invoke "python" runtest "-m" "stock_lot")))))))
659 (native-inputs
660 `(("python" ,python)
661 ("python-dateutil" ,python-dateutil)
662 ("python-genshi" ,python-genshi)
663 ("python-lxml" ,python-lxml)
664 ("python-magic" ,python-magic)
665 ("python-passlib" ,python-passlib)
666 ("python-polib" ,python-polib)
667 ("python-proteus" ,python-proteus)
668 ("python-relatorio" ,python-relatorio)
669 ("python-sql" ,python-sql)
670 ("python-werkzeug" ,python-werkzeug)
671 ("python-wrapt" ,python-wrapt)))
672 (propagated-inputs
673 `(("python-trytond" ,python-trytond)
674 ("python-trytond-product"
675 ,python-trytond-product)
676 ("python-trytond-stock" ,python-trytond-stock)))
677 (home-page "https://www.tryton.org/")
678 (synopsis "Tryton module for lot of products")
679 (description
680 "This package provides a Tryton module that defines lot of products.")
681 (license license:gpl3+)))
682
683 (define-public python-trytond-account-invoice-stock
684 (package
685 (name "python-trytond-account-invoice-stock")
686 (version "5.6.0")
687 (source
688 (origin
689 (method url-fetch)
690 (uri (pypi-uri
691 "trytond_account_invoice_stock"
692 version))
693 (sha256
694 (base32 "1ky39ab8ax7hla5d9qgmp0p4ra4q6n29xc3wba5qdw3ij8wkn96f"))))
695 (build-system python-build-system)
696 (arguments
697 `(#:phases
698 (modify-phases %standard-phases
699 (replace 'check
700 (let ((runtest
701 (string-append
702 (assoc-ref %build-inputs "python-trytond")
703 "/lib/python"
704 ,(version-major+minor (package-version python))
705 "/site-packages/trytond/tests/run-tests.py")))
706 (lambda* (#:key inputs outputs #:allow-other-keys)
707 (add-installed-pythonpath inputs outputs)
708 (invoke "python" runtest "-m" "account_invoice_stock")))))))
709 (native-inputs
710 `(("python" ,python-minimal-wrapper)
711 ("python-dateutil" ,python-dateutil)
712 ("python-genshi" ,python-genshi)
713 ("python-lxml" ,python-lxml)
714 ("python-magic" ,python-magic)
715 ("python-passlib" ,python-passlib)
716 ("python-polib" ,python-polib)
717 ("python-proteus" ,python-proteus)
718 ("python-relatorio" ,python-relatorio)
719 ("python-sql" ,python-sql)
720 ("python-werkzeug" ,python-werkzeug)
721 ("python-wrapt" ,python-wrapt)))
722 (propagated-inputs
723 `(("python-trytond" ,python-trytond)
724 ("python-trytond-account-invoice"
725 ,python-trytond-account-invoice)
726 ("python-trytond-product"
727 ,python-trytond-product)
728 ("python-trytond-stock" ,python-trytond-stock)))
729 (home-page "https://www.tryton.org/")
730 (synopsis "Tryton module to link stock and invoice")
731 (description
732 "This package provides a Tryton module that adds link between invoice
733 lines and stock moves. The unit price of the stock move is updated with the
734 average price of the posted invoice lines that are linked to it.")
735 (license license:gpl3+)))
736
737 (define-public python-trytond-stock-supply
738 (package
739 (name "python-trytond-stock-supply")
740 (version "5.6.1")
741 (source
742 (origin
743 (method url-fetch)
744 (uri (pypi-uri "trytond_stock_supply" version))
745 (sha256
746 (base32 "0lw7qrg58k5pjpp3nz73rmlm8v086l49ri31ci75calm552zpfay"))))
747 (build-system python-build-system)
748 (arguments
749 `(#:phases
750 (modify-phases %standard-phases
751 (replace 'check
752 (let ((runtest
753 (string-append
754 (assoc-ref %build-inputs "python-trytond")
755 "/lib/python"
756 ,(version-major+minor (package-version python))
757 "/site-packages/trytond/tests/run-tests.py")))
758 (lambda* (#:key inputs outputs #:allow-other-keys)
759 (add-installed-pythonpath inputs outputs)
760 (invoke "python" runtest "-m" "stock_supply")))))))
761 (native-inputs
762 `(("python" ,python-minimal-wrapper)
763 ("python-dateutil" ,python-dateutil)
764 ("python-genshi" ,python-genshi)
765 ("python-lxml" ,python-lxml)
766 ("python-magic" ,python-magic)
767 ("python-passlib" ,python-passlib)
768 ("python-polib" ,python-polib)
769 ("python-proteus" ,python-proteus)
770 ("python-relatorio" ,python-relatorio)
771 ("python-werkzeug" ,python-werkzeug)
772 ("python-wrapt" ,python-wrapt)))
773 (propagated-inputs
774 `(("python-sql" ,python-sql)
775 ("python-trytond" ,python-trytond)
776 ("python-trytond-account"
777 ,python-trytond-account)
778 ("python-trytond-party" ,python-trytond-party)
779 ("python-trytond-product"
780 ,python-trytond-product)
781 ("python-trytond-purchase"
782 ,python-trytond-purchase)
783 ("python-trytond-purchase-request"
784 ,python-trytond-purchase-request)
785 ("python-trytond-stock" ,python-trytond-stock)))
786 (home-page "https://www.tryton.org/")
787 (synopsis "Tryton module for stock supply")
788 (description
789 "This package provides a Tryton module that adds automatic supply
790 mechanisms and introduces the concepts of order point.")
791 (license license:gpl3+)))
792
793 (define-public python-trytond-purchase
794 (package
795 (name "python-trytond-purchase")
796 (version "5.6.0")
797 (source
798 (origin
799 (method url-fetch)
800 (uri (pypi-uri "trytond_purchase" version))
801 (sha256
802 (base32 "0znjxhhwqlz4sq96ah9g28mvw4w83rhp022h6vihnz64z2ad3p3z"))))
803 (build-system python-build-system)
804 (arguments
805 `(#:phases
806 (modify-phases %standard-phases
807 (replace 'check
808 (let ((runtest
809 (string-append
810 (assoc-ref %build-inputs "python-trytond")
811 "/lib/python"
812 ,(version-major+minor (package-version python))
813 "/site-packages/trytond/tests/run-tests.py")))
814 (lambda* (#:key inputs outputs #:allow-other-keys)
815 (add-installed-pythonpath inputs outputs)
816 (invoke "python" runtest "-m" "purchase")))))))
817 (native-inputs
818 `(("python" ,python-minimal-wrapper)
819 ("python-dateutil" ,python-dateutil)
820 ("python-genshi" ,python-genshi)
821 ("python-lxml" ,python-lxml)
822 ("python-magic" ,python-magic)
823 ("python-passlib" ,python-passlib)
824 ("python-polib" ,python-polib)
825 ("python-proteus" ,python-proteus)
826 ("python-relatorio" ,python-relatorio)
827 ("python-werkzeug" ,python-werkzeug)
828 ("python-wrapt" ,python-wrapt)))
829 (propagated-inputs
830 `(("python-sql" ,python-sql)
831 ("python-trytond" ,python-trytond)
832 ("python-trytond-account"
833 ,python-trytond-account)
834 ("python-trytond-account-invoice"
835 ,python-trytond-account-invoice)
836 ("python-trytond-account-invoice-stock"
837 ,python-trytond-account-invoice-stock)
838 ("python-trytond-account-product"
839 ,python-trytond-account-product)
840 ("python-trytond-company"
841 ,python-trytond-company)
842 ("python-trytond-currency"
843 ,python-trytond-currency)
844 ("python-trytond-party" ,python-trytond-party)
845 ("python-trytond-product"
846 ,python-trytond-product)
847 ("python-trytond-stock" ,python-trytond-stock)))
848 (home-page "https://www.tryton.org/")
849 (synopsis "Tryton module for purchase")
850 (description
851 "This package provides a Tryton module that defines the Purchase model.")
852 (license license:gpl3+)))
853
854 (define-public python-trytond-purchase-request
855 (package
856 (name "python-trytond-purchase-request")
857 (version "5.6.0")
858 (source
859 (origin
860 (method url-fetch)
861 (uri (pypi-uri "trytond_purchase_request" version))
862 (sha256
863 (base32 "15r1x3jzr83rna1vfpans277785dpmgjr7989icav602nkyhhx0x"))))
864 (build-system python-build-system)
865 (arguments
866 `(#:phases
867 (modify-phases %standard-phases
868 (replace 'check
869 (let ((runtest
870 (string-append
871 (assoc-ref %build-inputs "python-trytond")
872 "/lib/python"
873 ,(version-major+minor (package-version python))
874 "/site-packages/trytond/tests/run-tests.py")))
875 (lambda* (#:key inputs outputs #:allow-other-keys)
876 (add-installed-pythonpath inputs outputs)
877 ;; Doctest 'scenario_purchase_request.rst' fails.
878 (invoke "python" runtest
879 "-m" "purchase_request" "--no-doctest")))))))
880 (native-inputs
881 `(("python" ,python-minimal-wrapper)
882 ("python-dateutil" ,python-dateutil)
883 ("python-genshi" ,python-genshi)
884 ("python-lxml" ,python-lxml)
885 ("python-magic" ,python-magic)
886 ("python-passlib" ,python-passlib)
887 ("python-polib" ,python-polib)
888 ("python-proteus" ,python-proteus)
889 ("python-relatorio" ,python-relatorio)
890 ("python-sql" ,python-sql)
891 ("python-werkzeug" ,python-werkzeug)
892 ("python-wrapt" ,python-wrapt)))
893 (propagated-inputs
894 `(("python-trytond" ,python-trytond)
895 ("python-trytond-product"
896 ,python-trytond-product)
897 ("python-trytond-purchase"
898 ,python-trytond-purchase)))
899 (home-page "https://www.tryton.org/")
900 (synopsis "Tryton module for purchase requests")
901 (description
902 "This package provides a Tryton module that introduces the concept of
903 Purchase Requests which are central points to collect purchase requests
904 generated by other process from Tryton.")
905 (license license:gpl3+)))
906
907 (define-public python-proteus
908 (package
909 (name "python-proteus")
910 (version "5.6.0")
911 (source
912 (origin
913 (method url-fetch)
914 (uri (pypi-uri "proteus" version))
915 (sha256
916 (base32 "0kxac5pkps243wf0xbmbd1g5bml96xl94j88y6yyzm093vyli150"))))
917 (build-system python-build-system)
918 ;; Tests require python-trytond-party which requires python-proteus.
919 (arguments
920 `(#:tests? #f))
921 (propagated-inputs
922 `(("python-dateutil" ,python-dateutil)))
923 (home-page "http://www.tryton.org/")
924 (synopsis "Library to access a Tryton server as a client")
925 (description
926 "This package provides a library to access Tryton server as a client.")
927 (license license:lgpl3+)))