tryton.scm 6.7 KB

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