gnu: python-babel: Update to 2.7.0.
[guix.git] / gnu / packages / tryton.scm
blob31a2d481e562c6a535d6d492484b31abd343b622
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2017 Adriano Peluso <catonano@gmail.com>
3 ;;;
4 ;;; This file is part of GNU Guix.
5 ;;;
6 ;;; GNU Guix is free software; you can redistribute it and/or modify it
7 ;;; under the terms of the GNU General Public License as published by
8 ;;; the Free Software Foundation; either version 3 of the License, or (at
9 ;;; your option) any later version.
10 ;;;
11 ;;; GNU Guix is distributed in the hope that it will be useful, but
12 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
13 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 ;;; GNU General Public License for more details.
15 ;;;
16 ;;; You should have received a copy of the GNU General Public License
17 ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
19 (define-module (gnu packages tryton)
20   #:use-module ((guix licenses) #:prefix license:)
21   #:use-module (gnu packages)
22   #:use-module (gnu packages check)
23   #:use-module (gnu packages databases)
24   #:use-module (gnu packages finance)
25   #:use-module (gnu packages gtk)
26   #:use-module (gnu packages python)
27   #:use-module (gnu packages python-web)
28   #:use-module (gnu packages python-xyz)
29   #:use-module (gnu packages time)
30   #:use-module (guix packages)
31   #:use-module (guix download)
32   #:use-module (guix build-system python))
34 (define-public python-trytond
35   (package
36     (name "python-trytond")
37     (version "4.6.2")
38     (source
39      (origin
40        (method url-fetch)
41        (uri (pypi-uri "trytond" version))
42        (sha256
43         (base32
44          "0asc3pd37h8ky8j66iqxr0fv0k6mpjcwxwm0xgm5hrdi32l5cdda"))))
45     (build-system python-build-system)
46     (inputs
47      `(("python-dateutil" ,python-dateutil)
48        ("python-genshi" ,python-genshi)
49        ("python-polib" ,python-polib)
50        ("python-magic" ,python-magic)
51        ;; there's no python-mysql in Guix right now
52        ;; so python-psycopg2 (postgresql) only for now
53        ("python-psycopg2" ,python-psycopg2)
54        ("python-relatorio" ,python-relatorio)
55        ("python-lxml" ,python-lxml)
56        ("python-sql" ,python-sql)
57        ("python-werkzeug" ,python-werkzeug)
58        ("python-wrapt" ,python-wrapt)))
59     (native-inputs
60      `(("python-mock" ,python-mock)))
61     (arguments
62      `(#:phases
63        (modify-phases %standard-phases
64          (add-before 'check 'preparations
65            (lambda _
66              (setenv "DB_NAME" ":memory:")
67              #t)))))
68     (home-page "https://www.tryton.org/")
69     (synopsis "Server component of Tryton")
70     (description "Tryton is a three-tier high-level general purpose
71 application platform using PostgreSQL as its main database engine.  It is the
72 core base of a complete business solution providing modularity, scalability
73 and security.")
74     (license license:gpl3+)))
76 (define-public tryton
77   (package
78     (name "tryton")
79     (version "4.6.2")
80     (source
81      (origin
82        (method url-fetch)
83        (uri (pypi-uri "tryton" version))
84        (sha256
85         (base32
86          "0bamr040np02gfjk8c734rw3mbgg75irfgpdcl2npgkdzyw1ksf9"))))
87     (build-system python-build-system)
88     (inputs
89      `(("python2-chardet" ,python2-chardet)
90        ("python2-dateutil" ,python2-dateutil)
91        ("python2-pygtk" ,python2-pygtk)))
92     (arguments
93      `(#:python ,python-2))
94     (home-page "https://www.tryton.org/")
95     (synopsis "Client component of Tryton")
96     (description "This package is the client component of Tryton.")
97     (license license:gpl3+)))
99 (define-public python-trytond-country
100   (package
101   (name "python-trytond-country")
102   (version "4.6.0")
103   (source
104     (origin
105       (method url-fetch)
106       (uri (pypi-uri "trytond_country" version))
107       (sha256
108         (base32
109           "11c9mw2scbjn7c6yhlwh5ml266f0s31lh4jwj6gh7vl1shs3isr3"))))
110   (build-system python-build-system)
111   (arguments
112    `(#:phases
113      (modify-phases %standard-phases
114        (add-before 'check 'preparations
115          (lambda _
116            (setenv "DB_NAME" ":memory:")
117            #t)))))
118   (propagated-inputs
119    `(("python-trytond" ,python-trytond)
120      ("python-wrapt" ,python-wrapt)
121      ("python-werkzeug" ,python-werkzeug)
122      ("python-sql" ,python-sql)
123      ("python-polib" ,python-polib)
124      ("python-dateutil" ,python-dateutil)
125      ("python-genshi" ,python-genshi)
126      ("python-relatorio" ,python-relatorio)
127      ("python-magic" ,python-magic)))
128   (home-page "http://www.tryton.org/")
129   (synopsis "Tryton module with countries")
130   (description "This package provides a Tryton module with countries.")
131   (license license:gpl3+)))
133 (define-public python-trytond-party
134   (package
135     (name "python-trytond-party")
136     (version "4.6.0")
137     (source
138      (origin
139        (method url-fetch)
140        (uri (pypi-uri "trytond_party" version))
141        (sha256
142         (base32
143          "0fbf4kxywiglcdsx9ppjg7nxw87915mb6bpn1jn652gk949rdww5"))))
144     (build-system python-build-system)
145     ;; XXX The tests seem to require Proteus. But Proteus tests seem to
146     ;; require trytond-party.
147     (arguments
148      '(#:tests? #f))
149     (propagated-inputs
150      `(("python-trytond" ,python-trytond)
151        ("python-trytond-country" ,python-trytond-country)
152        ("python-stdnum" ,python-stdnum)
153        ("python-sql" ,python-sql)
154        ("python-wrapt" ,python-wrapt)
155        ("python-werkzeug" ,python-werkzeug)
156        ("python-polib" ,python-polib)
157        ("python-dateutil" ,python-dateutil)
158        ("python-genshi" ,python-genshi)
159        ("python-relatorio" ,python-relatorio)
160        ("python-magic" ,python-magic)
161        ("python-phonenumbers" ,python-phonenumbers)))
162     (home-page "http://www.tryton.org/")
163     (synopsis
164      "Tryton module for parties and addresses")
165     (description
166      "This package provides a Tryton module for (counter)parties and
167 addresses.")
168     (license license:gpl3+)))
170 (define-public python-proteus
171   (package
172     (name "python-proteus")
173     (version "4.6.0")
174     (source
175      (origin
176        (method url-fetch)
177        (uri (pypi-uri "proteus" version))
178        (sha256
179         (base32
180          "0flkf1vxbhz51b7bq31dn7q9mlkli3pmpbzfhsxfqpf6laghbkqg"))))
181     (build-system python-build-system)
182     (propagated-inputs
183      `(("python-dateutil" ,python-dateutil)
184        ("python-trytond-party" ,python-trytond-party)
185        ("python-trytond-country" ,python-trytond-country)
186        ("python-trytond" ,python-trytond)
187        ("python-stdnum" ,python-stdnum)
188        ("python-sql" ,python-sql)
189        ("python-wrapt" ,python-wrapt)
190        ("python-werkzeug" ,python-werkzeug)
191        ("python-polib" ,python-polib)
192        ("python-genshi" ,python-genshi)
193        ("python-relatorio" ,python-relatorio)
194        ("python-magic" ,python-magic)))
195     (home-page "http://www.tryton.org/")
196     (synopsis
197      "Library to access a Tryton server as a client")
198     (description
199      "This package provides a library to access Tryton server as a client.")
200     (license license:lgpl3+)))