gnu: deutex: Update to 5.2.1.
[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 ;;;
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/>.
18
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))
33
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+)))
75
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+)))
98
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+)))
132
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+)))
169
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+)))