gnu: Add emacs-evil-ediff.
[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 time)
29 #:use-module (guix packages)
30 #:use-module (guix download)
31 #:use-module (guix build-system python))
32
33 (define-public python-trytond
34 (package
35 (name "python-trytond")
36 (version "4.6.2")
37 (source
38 (origin
39 (method url-fetch)
40 (uri (pypi-uri "trytond" version))
41 (sha256
42 (base32
43 "0asc3pd37h8ky8j66iqxr0fv0k6mpjcwxwm0xgm5hrdi32l5cdda"))))
44 (build-system python-build-system)
45 (inputs
46 `(("python-dateutil" ,python-dateutil)
47 ("python-genshi" ,python-genshi)
48 ("python-polib" ,python-polib)
49 ("python-magic" ,python-magic)
50 ;; there's no python-mysql in Guix right now
51 ;; so python-psycopg2 (postgresql) only for now
52 ("python-psycopg2" ,python-psycopg2)
53 ("python-relatorio" ,python-relatorio)
54 ("python-lxml" ,python-lxml)
55 ("python-sql" ,python-sql)
56 ("python-werkzeug" ,python-werkzeug)
57 ("python-wrapt" ,python-wrapt)))
58 (native-inputs
59 `(("python-mock" ,python-mock)))
60 (arguments
61 `(#:phases
62 (modify-phases %standard-phases
63 (add-before 'check 'preparations
64 (lambda _
65 (setenv "DB_NAME" ":memory:")
66 #t)))))
67 (home-page "https://www.tryton.org/")
68 (synopsis "Server component of Tryton")
69 (description "Tryton is a three-tier high-level general purpose
70 application platform using PostgreSQL as its main database engine. It is the
71 core base of a complete business solution providing modularity, scalability
72 and security.")
73 (license license:gpl3+)))
74
75 (define-public tryton
76 (package
77 (name "tryton")
78 (version "4.6.2")
79 (source
80 (origin
81 (method url-fetch)
82 (uri (pypi-uri "tryton" version))
83 (sha256
84 (base32
85 "0bamr040np02gfjk8c734rw3mbgg75irfgpdcl2npgkdzyw1ksf9"))))
86 (build-system python-build-system)
87 (inputs
88 `(("python2-chardet" ,python2-chardet)
89 ("python2-dateutil" ,python2-dateutil)
90 ("python2-pygtk" ,python2-pygtk)))
91 (arguments
92 `(#:python ,python-2))
93 (home-page "https://www.tryton.org/")
94 (synopsis "Client component of Tryton")
95 (description "This package is the client component of Tryton.")
96 (license license:gpl3+)))
97
98 (define-public python-trytond-country
99 (package
100 (name "python-trytond-country")
101 (version "4.6.0")
102 (source
103 (origin
104 (method url-fetch)
105 (uri (pypi-uri "trytond_country" version))
106 (sha256
107 (base32
108 "11c9mw2scbjn7c6yhlwh5ml266f0s31lh4jwj6gh7vl1shs3isr3"))))
109 (build-system python-build-system)
110 (arguments
111 `(#:phases
112 (modify-phases %standard-phases
113 (add-before 'check 'preparations
114 (lambda _
115 (setenv "DB_NAME" ":memory:")
116 #t)))))
117 (propagated-inputs
118 `(("python-trytond" ,python-trytond)
119 ("python-wrapt" ,python-wrapt)
120 ("python-werkzeug" ,python-werkzeug)
121 ("python-sql" ,python-sql)
122 ("python-polib" ,python-polib)
123 ("python-dateutil" ,python-dateutil)
124 ("python-genshi" ,python-genshi)
125 ("python-relatorio" ,python-relatorio)
126 ("python-magic" ,python-magic)))
127 (home-page "http://www.tryton.org/")
128 (synopsis "Tryton module with countries")
129 (description "This package provides a Tryton module with countries.")
130 (license license:gpl3+)))
131
132 (define-public python-trytond-party
133 (package
134 (name "python-trytond-party")
135 (version "4.6.0")
136 (source
137 (origin
138 (method url-fetch)
139 (uri (pypi-uri "trytond_party" version))
140 (sha256
141 (base32
142 "0fbf4kxywiglcdsx9ppjg7nxw87915mb6bpn1jn652gk949rdww5"))))
143 (build-system python-build-system)
144 ;; XXX The tests seem to require Proteus. But Proteus tests seem to
145 ;; require trytond-party.
146 (arguments
147 '(#:tests? #f))
148 (propagated-inputs
149 `(("python-trytond" ,python-trytond)
150 ("python-trytond-country" ,python-trytond-country)
151 ("python-stdnum" ,python-stdnum)
152 ("python-sql" ,python-sql)
153 ("python-wrapt" ,python-wrapt)
154 ("python-werkzeug" ,python-werkzeug)
155 ("python-polib" ,python-polib)
156 ("python-dateutil" ,python-dateutil)
157 ("python-genshi" ,python-genshi)
158 ("python-relatorio" ,python-relatorio)
159 ("python-magic" ,python-magic)
160 ("python-phonenumbers" ,python-phonenumbers)))
161 (home-page "http://www.tryton.org/")
162 (synopsis
163 "Tryton module for parties and addresses")
164 (description
165 "This package provides a Tryton module for (counter)parties and
166 addresses.")
167 (license license:gpl3+)))
168
169 (define-public python-proteus
170 (package
171 (name "python-proteus")
172 (version "4.6.0")
173 (source
174 (origin
175 (method url-fetch)
176 (uri (pypi-uri "proteus" version))
177 (sha256
178 (base32
179 "0flkf1vxbhz51b7bq31dn7q9mlkli3pmpbzfhsxfqpf6laghbkqg"))))
180 (build-system python-build-system)
181 (propagated-inputs
182 `(("python-dateutil" ,python-dateutil)
183 ("python-trytond-party" ,python-trytond-party)
184 ("python-trytond-country" ,python-trytond-country)
185 ("python-trytond" ,python-trytond)
186 ("python-stdnum" ,python-stdnum)
187 ("python-sql" ,python-sql)
188 ("python-wrapt" ,python-wrapt)
189 ("python-werkzeug" ,python-werkzeug)
190 ("python-polib" ,python-polib)
191 ("python-genshi" ,python-genshi)
192 ("python-relatorio" ,python-relatorio)
193 ("python-magic" ,python-magic)))
194 (home-page "http://www.tryton.org/")
195 (synopsis
196 "Library to access a Tryton server as a client")
197 (description
198 "This package provides a library to access Tryton server as a client.")
199 (license license:lgpl3+)))