Merge branch 'master' into core-updates
[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 gtk)
25 #:use-module (gnu packages python)
26 #:use-module (gnu packages python-web)
27 #:use-module (gnu packages time)
28 #:use-module (guix packages)
29 #:use-module (guix download)
30 #:use-module (guix build-system python))
31
32 (define-public trytond
33 (package
34 (name "trytond")
35 (version "4.4.1")
36 (source
37 (origin
38 (method url-fetch)
39 (uri (string-append
40 "https://downloads.tryton.org/4.4/trytond-"
41 version ".tar.gz"))
42 (sha256
43 (base32
44 "15gm34qwj5fpnkqvrxzndl8653zbczhsa76dm1gi4cqj1r29bbpr"))))
45 (build-system python-build-system)
46 (inputs
47 `(("python-dateutil" ,python-dateutil)
48 ("python-genshi" ,python-genshi)
49 ("python-polib" ,python-polib)
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 (home-page "https://www.tryton.org/")
67 (synopsis "Server component of Tryton")
68 (description "Tryton is a three-tier high-level general purpose
69 application platform using PostgreSQL as its main database engine. It is the
70 core base of a complete business solution providing modularity, scalability
71 and security.")
72 (license license:gpl3+)))
73
74 (define-public tryton
75 (package
76 (name "tryton")
77 (version "4.4.0")
78 (source
79 (origin
80 (method url-fetch)
81 (uri (string-append
82 "https://downloads.tryton.org/4.4/tryton-"
83 version ".tar.gz"))
84 (sha256
85 (base32
86 "1lklcz5fs6rkrd7z2m2f5gz4fdwzkgnhg2hyvzp20kdsvi33bq2j"))))
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+)))