blob: b4c1a454407bc99c62f66ce3c503d9d587f0c685 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
|
(define-module (sigils packages xmpp)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix utils)
#:use-module (guix git-download)
#:use-module ((guix licenses)
#:prefix license:)
;; gajim
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (gnu packages gettext)
#:use-module (gnu packages avahi)
#:use-module (gnu packages glib)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gnome)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages xorg)
#:use-module (gnu packages databases)
#:use-module (gnu packages messaging)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages protobuf)
;; Psimedia
#:use-module (guix build-system qt)
#:use-module (gnu packages glib)
#:use-module (gnu packages pkg-config))
;; (define-public chatty-gnome
;; (package
;; (inherit chatty)
;; (name "chatty")
;; (version "0.8.5")
;; (source
;; (origin
;; (method url-fetch)
;; (uri (string-append "https://gitlab.gnome.org/World/Chatty/-/archive/v"
;; version "/Chatty-v" version ".tar.gz"))
;; (sha256
;; (base32 "1yc8rg07223p4icl99p4kg0zrwc66pw1zlgmmvr0zvxc49qhyyly"))))
;; (inputs (modify-inputs (package-inputs chatty)
;; (append cmatrix)))))
;;; Psimedia
(define-public psimedia
(let ((commit "478567ee3312b163eebd821b2081daa3c6158c14")
(revision "1"))
(package
(name "psimedia")
(version (git-version "0" revision commit))
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/psi-im/psimedia")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0pskjwdd8862hfncivk1hv42y4mscr5ycj2jiqaxpwi8w4106p4s"))))
(build-system qt-build-system)
(native-inputs (list pkgconf))
(inputs (list glib
gstreamer
gst-plugins-base
gst-plugins-good
gst-plugins-good-qt))
(arguments
'(#:configure-flags
'("-DUSE_PSI=OFF" "-DBUILD_DEMO=OFF")
#:tests? #f))
(home-page "https://github.com/psi-im/psimedia")
(synopsis "Abstraction layer over GStreamer")
(description "PsiMedia is a thick abstraction layer for providing audio and video RTP services to Psi-like IM clients. The implementation is based on GStreamer.")
(license license:lgpl2.1))))
;;; Gajim
(define-public python-protobuf
(package
(name "python-protobuf")
(version "5.27.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "protobuf" version))
(sha256
(base32 "0517bvr76daiwnz3jb099mckmklh5kzjg0pjfmh8bbxr4vrdxv7k"))))
(build-system python-build-system)
(inputs (list protobuf))
(arguments
;; There are no tests
'(#:tests? #f))
(home-page "https://github.com/google/protobuf")
(synopsis "Protocol buffers is a data interchange format")
(description
"Protocol buffers are a language-neutral, platform-neutral extensible
mechanism for serializing structured data.")
(license license:bsd-3)))
(define-public python-omemo-dr
(package
(name "python-omemo-dr")
(version "1.0.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "omemo-dr" version))
(sha256
(base32 "0qfk0b153cmc85icnlpfv8mjaqd2spa7hlipvndr8wqx4dvqr2ia"))))
(build-system python-build-system)
(home-page "https://pypi.org/project/omemo-dr/")
(synopsis "OMEMO Double Ratchet in Python")
(description
"Initial codebase was forked from
https://github.com/tgalal/python-axolotl but has since been heavily
rewritten.")
(license license:gpl3)
(native-inputs (list python-protobuf python-cryptography))))
(define-public python-nbxmpp
(package
(name "python-nbxmpp")
(version "5.0.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "nbxmpp" version))
(sha256
(base32 "06876pqs44apqflgv1ijqbd446j5dai1alq833miy900kr8wg9ba"))))
(build-system pyproject-build-system)
(arguments
(list
#:phases #~(modify-phases %standard-phases
;; XXX: This probably should be an option for pyproject-build-system
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "python" "-m" "unittest" "-v")))))))
(native-inputs (list `(,glib "bin")))
(inputs (list glib
glib-networking
libsoup-minimal
python-gssapi
python-idna
python-precis-i18n
python-pygobject))
(synopsis "Non-blocking XMPP Module")
(description
"Python-nbxmpp is a Python library that provides a way for
Python applications to use the XMPP network. This library was initially a fork
of xmpppy.")
(home-page "https://dev.gajim.org/gajim/python-nbxmpp")
(license license:gpl3+)))
(define-public gajim-2
(package
(inherit gajim)
(version "1.9.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://gajim.org/downloads/"
(version-major+minor version) "/gajim-" version
".tar.gz"))
(sha256
(base32 "10rz8pd43a9308kj6csixsmvdc6ccnqkw83adc5cggh1798b45ag"))))
(inputs (modify-inputs (package-inputs gajim)
(replace "python-nbxmpp" python-nbxmpp)
(append python-cryptography)
(append python-emoji)
(append python-omemo-dr)
(append python-protobuf)
(append python-qrcode)
(append python-sqlalchemy-2)))))
|