summaryrefslogtreecommitdiff
path: root/gnu/packages/matrix.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/matrix.scm')
-rw-r--r--gnu/packages/matrix.scm141
1 files changed, 74 insertions, 67 deletions
diff --git a/gnu/packages/matrix.scm b/gnu/packages/matrix.scm
index c8edaf5d5a..5bd4e515f6 100644
--- a/gnu/packages/matrix.scm
+++ b/gnu/packages/matrix.scm
@@ -46,7 +46,6 @@
#:use-module (gnu packages xml)
#:use-module (guix build-system go)
#:use-module (guix build-system pyproject)
- #:use-module (guix build-system python)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
@@ -68,7 +67,6 @@
(build-system go-build-system)
(arguments
(list
- #:go go-1.23
#:install-source? #f
#:tests? #f ; no tests provided
#:import-path "go.mau.fi/mautrix-whatsapp/cmd/mautrix-whatsapp"
@@ -132,18 +130,17 @@ on @url{https://github.com/tulir/whatsmeow, whatsmeow}.")
(version "0.3.2")
(source
(origin
- (method url-fetch)
- (uri (pypi-uri "matrix-client" version))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/matrix-org/matrix-python-sdk")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
- (base32
- "1mgjd0ymf9mvqjkvgx3xjhxap7rzdmpa21wfy0cxbw2xcswcrqyw"))))
- (build-system python-build-system)
- (propagated-inputs
- (list python-requests))
- (native-inputs
- (list python-pytest python-pytest-runner python-responses))
- (home-page
- "https://github.com/matrix-org/matrix-python-sdk")
+ (base32 "01ppn2vxyd7c01ww9bicj7qlyycdyf89b2wbikdb9d2k1h03rfml"))))
+ (build-system pyproject-build-system)
+ (propagated-inputs (list python-requests))
+ (native-inputs (list python-pytest python-responses python-setuptools))
+ (home-page "https://github.com/matrix-org/matrix-python-sdk")
(synopsis "Client-Server SDK for Matrix")
(description "This package provides client-server SDK for Matrix.")
(license license:asl2.0)))
@@ -154,18 +151,22 @@ on @url{https://github.com/tulir/whatsmeow, whatsmeow}.")
(version "0.1.4")
(source
(origin
- (method url-fetch)
- (uri (pypi-uri "matrix-synapse-ldap3" version))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/matrix-org/matrix-synapse-ldap3")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
- (base32
- "01bms89sl16nyh9f141idsz4mnhxvjrc3gj721wxh1fhikps0djx"))))
- (build-system python-build-system)
+ (base32 "1p49h4k216iwap3axws7ffz94zn25j85f7kkv3wky1fvsb8i1r4h"))))
+ (build-system pyproject-build-system)
(arguments
- ;; tests require synapse, creating a circular dependency.
- '(#:tests? #f
- #:phases (modify-phases %standard-phases
- ;; Also, auth_provider.py attempts to import synapse.
- (delete 'sanity-check))))
+ (list
+ #:tests? #f ; tests require synapse, creating a circular dependency.
+ #:phases
+ #~(modify-phases %standard-phases
+ ;; Also, auth_provider.py attempts to import synapse.
+ (delete 'sanity-check))))
+ (native-inputs (list python-setuptools))
(propagated-inputs
(list python-twisted python-ldap3 python-service-identity))
(home-page "https://github.com/matrix-org/matrix-synapse-ldap3")
@@ -180,16 +181,19 @@ an LDAP server.")
(package
(name "synapse")
(version "1.29.0")
- (source (origin
- (method url-fetch)
- (uri (pypi-uri "matrix-synapse" version))
- (sha256
- (base32
- "0if2yhpz8psg0661401mvxznldbfhk2j9rhbs25jdaqm9jsv6907"))))
- (build-system python-build-system)
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/matrix-org/synapse")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1m05fn5s0xfsnbvvv6089xkf7r8xmzvk9rp15hk9y3zk4fsqi5fw"))))
+ (build-system pyproject-build-system)
;; TODO Run tests with ‘PYTHONPATH=. trial3 tests’.
(propagated-inputs
- (list python-simplejson ; not attested but required
+ (list python-simplejson ;not attested but required
;; requirements (synapse/python_dependencies.py)
python-jsonschema
python-frozendict
@@ -220,7 +224,7 @@ an LDAP server.")
python-bleach
python-typing-extensions
;; conditional requirements (synapse/python_dependencies.py)
- ;;("python-hiredis" ,python-hiredis)
+ ;; ("python-hiredis" ,python-hiredis)
python-matrix-synapse-ldap3
python-psycopg2
python-jinja2
@@ -231,15 +235,15 @@ an LDAP server.")
;; sentry-sdk, jaeger-client, and opentracing could be included, but
;; all are monitoring aids and not essential.
python-pyjwt))
- (native-inputs
- (list python-mock python-parameterized))
+ (native-inputs (list python-mock python-parameterized python-setuptools))
(home-page "https://github.com/matrix-org/synapse")
(synopsis "Matrix reference homeserver")
- (description "Synapse is a reference \"homeserver\" implementation of
-Matrix from the core development team at matrix.org, written in
-Python/Twisted. It is intended to showcase the concept of Matrix and let
-folks see the spec in the context of a codebase and let you run your own
-homeserver and generally help bootstrap the ecosystem.")
+ (description
+ "Synapse is a reference \"homeserver\" implementation of Matrix from the
+core development team at matrix.org, written in Python/Twisted. It is
+intended to showcase the concept of Matrix and let folks see the spec in the
+context of a codebase and let you run your own homeserver and generally help
+bootstrap the ecosystem.")
(license license:asl2.0)))
(define-public python-matrix-nio
@@ -254,21 +258,31 @@ homeserver and generally help bootstrap the ecosystem.")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32
- "07prfdnkr13d0pvzhnicwnpn562fwq9zx05d6wza230s7vj0mmk4"))))
+ (base32 "07prfdnkr13d0pvzhnicwnpn562fwq9zx05d6wza230s7vj0mmk4"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
- ;; This test requires an Internet connection
- '(list "tests" "-k" "not test_connect_wrapper")
+ #~(list "tests"
+ "-k" (string-join
+ ;; This test requires an Internet connection
+ (list "not test_connect_wrapper"
+ ;; XXX: fixture 'event_loop' not found
+ "test_sync_forever"
+ "test_stop_sync_forever")
+ " and not "))
#:phases
- '(modify-phases %standard-phases
- (add-after 'unpack 'fix-tests
- (lambda _
- (substitute* "tests/helpers.py"
- (("from nio.crypto import OlmAccount, OlmDevice")
- "from nio.crypto.device import OlmDevice
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'relax-requirements
+ (lambda _
+ (substitute* "pyproject.toml"
+ (("\"cachetools~=.*\"")
+ "\"cachetools\""))))
+ (add-after 'unpack 'fix-tests
+ (lambda _
+ (substitute* "tests/helpers.py"
+ (("from nio.crypto import OlmAccount, OlmDevice")
+ "from nio.crypto.device import OlmDevice
from nio.crypto.sessions import OlmAccount")))))))
(native-inputs
(list python-aioresponses
@@ -276,17 +290,11 @@ from nio.crypto.sessions import OlmAccount")))))))
python-hpack
python-hyperframe
python-hypothesis
- python-mypy
- python-mypy-extensions
- python-poetry-core
python-pytest
python-pytest-aiohttp
python-pytest-asyncio
python-pytest-benchmark
- python-pytest-cov
- python-pytest-flake8
- python-setuptools
- python-wheel))
+ python-setuptools))
(propagated-inputs
(list python-aiofiles
python-aiohttp
@@ -324,9 +332,14 @@ fledged batteries-included asyncio layer using aiohttp.")
(file-name (git-file-name name version))
(sha256
(base32 "1i18mjlc143d2xwlha09i5ny06vipmy8fii05427zq5vjz8rysgx"))))
- (build-system python-build-system)
+ (build-system pyproject-build-system)
(arguments
(list
+ #:test-flags
+ #~(list "tests"
+ ;; These tests hang.
+ "--ignore=tests/proxy_test.py"
+ "-k" "not test_start_loop")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'relax-requirements
@@ -341,21 +354,15 @@ fledged batteries-included asyncio layer using aiohttp.")
(let ((man (string-append #$output "/share/man")))
(install-file "panctl.1" (string-append man "/man1"))
(install-file "pantalaimon.5" (string-append man "/man5"))
- (install-file "pantalaimon.8" (string-append man "/man8"))))))
- (replace 'check
- (lambda* (#:key tests? inputs outputs #:allow-other-keys)
- (when tests?
- (add-installed-pythonpath inputs outputs)
- (invoke "pytest" "-vv" "tests"
- ;; These tests hang.
- "--ignore=tests/proxy_test.py"
- "-k" "not test_start_loop")))))))
+ (install-file "pantalaimon.8"
+ (string-append man "/man8")))))))))
(native-inputs
(list python-aioresponses
python-faker
python-pytest
python-pytest-aiohttp
- python-pytest-asyncio))
+ python-pytest-asyncio
+ python-setuptools))
(propagated-inputs
(list python-aiohttp
python-attrs