summaryrefslogtreecommitdiff
path: root/gnu/packages/messaging.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/messaging.scm')
-rw-r--r--gnu/packages/messaging.scm188
1 files changed, 127 insertions, 61 deletions
diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index f1c5e0796c..b68a798715 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -25,7 +25,7 @@
;;; Copyright © 2020 Jonathan Brielmaier <[email protected]>
;;; Copyright © 2020 Mason Hock <[email protected]>
;;; Copyright © 2020, 2021 Michael Rohleder <[email protected]>
-;;; Copyright © 2020 Raghav Gururajan <[email protected]>
+;;; Copyright © 2020, 2022 Raghav Gururajan <[email protected]>
;;; Copyright © 2020, 2021 Robert Karszniewicz <[email protected]>
;;; Copyright © 2020 Giacomo Leidi <[email protected]>
;;; Copyright © 2021 Denis 'GNUtoo' Carikli <[email protected]>
@@ -89,6 +89,7 @@
#:use-module (gnu packages icu4c)
#:use-module (gnu packages image)
#:use-module (gnu packages kde)
+ #:use-module (gnu packages kde-frameworks)
#:use-module (gnu packages kerberos)
#:use-module (gnu packages less)
#:use-module (gnu packages libcanberra)
@@ -1175,7 +1176,7 @@ of xmpppy.")
(define-public gajim
(package
(name "gajim")
- (version "1.4.5")
+ (version "1.4.6")
(source
(origin
(method url-fetch)
@@ -1184,7 +1185,7 @@ of xmpppy.")
(version-major+minor version)
"/gajim-" version ".tar.gz"))
(sha256
- (base32 "08a7kkc8vzjr5jxjkb96vs1bqnrgmmmcc5spy308z0zfxbpamsin"))
+ (base32 "0ks25hh7ksx0nfydixpixcli556w7qcylxp2z2xsx8mgzqv7c9la"))
(patches (search-patches "gajim-honour-GAJIM_PLUGIN_PATH.patch"))))
(build-system python-build-system)
(arguments
@@ -1198,6 +1199,12 @@ of xmpppy.")
(guix build utils))
#:phases
(modify-phases %standard-phases
+ (add-after 'unpack 'disable-failing-tests
+ (lambda _
+ ;; XXX Gajim builds fine on some (my) machines but fails elsewhere:
+ ;; ModuleNotFoundError: No module named 'gajim.gui.emoji_data'
+ ;; https://dev.gajim.org/gajim/gajim/-/issues/11041
+ (delete-file "test/no_gui/test_styling.py")))
(replace 'check
(lambda _
;; Tests require a running X server.
@@ -1269,6 +1276,7 @@ of xmpppy.")
("gtk+" ,gtk+)
("gtksourceview" ,gtksourceview)
("gupnp-igd" ,gupnp-igd)
+ ("libappindicator" ,libappindicator)
("libnice" ,libnice)
("libsecret" ,libsecret)
("libsoup" ,libsoup)
@@ -1297,16 +1305,16 @@ and OpenPGP) and available in 29 languages.")
(define-public gajim-omemo
(package
(name "gajim-omemo")
- (version "2.8.13")
+ (version "2.8.15")
(source
(origin
(method url-fetch/zipbomb)
(uri
(string-append
- "https://ftp.gajim.org/plugins_releases/omemo_"
+ "https://ftp.gajim.org/plugins/master/omemo/omemo_"
version ".zip"))
(sha256
- (base32 "10ym9abvlfpi6llpsqc0691xdnqp9hrwnl361fnwb1nx2zw6bjbd"))))
+ (base32 "1hf148ywr8knk5y3y5xvvwgw74ld1pcfjkp78g514ikcnzfycfcn"))))
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils))
@@ -1314,7 +1322,7 @@ and OpenPGP) and available in 29 languages.")
(begin
(use-modules (guix build utils))
(let* ((out (assoc-ref %outputs "out"))
- (share (in-vicinity out "share/gajim/plugins"))
+ (share (in-vicinity out "share/gajim/plugins/omemo"))
(source (assoc-ref %build-inputs "source")))
(mkdir-p share)
(copy-recursively source share)
@@ -1333,16 +1341,16 @@ multi-client end-to-end encryption.")
(define-public gajim-openpgp
(package
(name "gajim-openpgp")
- (version "1.4.8")
+ (version "1.4.9")
(source
(origin
(method url-fetch/zipbomb)
(uri
(string-append
- "https://ftp.gajim.org/plugins_releases/openpgp_"
+ "https://ftp.gajim.org/plugins/master/openpgp/openpgp_"
version ".zip"))
(sha256
- (base32 "05kgcrxalxsc034kq1i6nriqjb6sdlgf3yb2mani8vk9p00v3j90"))))
+ (base32 "1xwmf6ai1z7z9x6p1ysglxji73r7d27c0gzc8ykab29cjhjyv0dq"))))
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils))
@@ -1350,7 +1358,7 @@ multi-client end-to-end encryption.")
(begin
(use-modules (guix build utils))
(let* ((out (assoc-ref %outputs "out"))
- (share (in-vicinity out "share/gajim/plugins"))
+ (share (in-vicinity out "share/gajim/plugins/openpgp"))
(source (assoc-ref %build-inputs "source")))
(mkdir-p share)
(copy-recursively source share)
@@ -1378,58 +1386,64 @@ Encryption to Gajim.")
(build-system cmake-build-system)
(outputs '("out" "debug"))
(arguments
- `(#:tests? #f
- #:parallel-build? #f ; not supported
- #:modules ((guix build cmake-build-system)
- ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:)
- (guix build utils))
- #:imported-modules (,@%gnu-build-system-modules
- (guix build cmake-build-system)
- (guix build glib-or-gtk-build-system))
- #:phases
- (modify-phases %standard-phases
- ;; For A/V support.
- (add-after 'install 'wrap
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (dino (string-append out "/bin/dino"))
- (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH")))
- (wrap-program dino
- `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))))))
- (add-after 'install 'glib-or-gtk-wrap
- (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)))))
+ (list #:configure-flags #~(list "-DBUILD_TESTS=true")
+ #:parallel-build? #f ; not supported
+ #:modules '((guix build cmake-build-system)
+ ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:)
+ (guix build utils))
+ #:imported-modules `(,@%gnu-build-system-modules
+ (guix build cmake-build-system)
+ (guix build glib-or-gtk-build-system))
+ #:phases
+ #~(modify-phases %standard-phases
+ ;; For A/V support.
+ (add-after 'install 'wrap
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (dino (string-append out "/bin/dino"))
+ (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH")))
+ (wrap-program dino
+ `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))))))
+ (add-after 'install 'glib-or-gtk-wrap
+ (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap))
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke "./libdino-test")
+ (invoke "./signal-protocol-vala-test")
+ (invoke "./xmpp-vala-test")))))))
(native-inputs
- `(("gettext" ,gettext-minimal)
- ("glib:bin" ,glib "bin")
- ("gobject-introspection" ,gobject-introspection)
- ("gtk+:bin" ,gtk+ "bin")
- ("pkg-config" ,pkg-config)
- ("vala" ,vala)))
+ (list gettext-minimal
+ `(,glib "bin")
+ gobject-introspection
+ `(,gtk+ "bin")
+ pkg-config
+ vala))
(inputs
- `(("atk" ,atk)
- ("cairo" ,cairo)
- ("librsvg" ,librsvg)
- ("glib" ,glib)
- ("glib-networking" ,glib-networking)
- ("gpgme" ,gpgme)
- ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
- ("gspell" ,gspell) ;for spell-check support
- ("gstreamer" ,gstreamer) ;for A/V support
- ("gst-plugins-base" ,gst-plugins-base)
- ("gst-plugins-good" ,gst-plugins-good)
- ("gtk+" ,gtk+)
- ("icu4c" ,icu4c) ;for emoji support
- ("libcanberra" ,libcanberra) ;for sound-notification support
- ("libgcrypt" ,libgcrypt)
- ("libgee" ,libgee)
- ("libnice" ,libnice)
- ("libsignal-protocol-c" ,libsignal-protocol-c)
- ("libsoup" ,libsoup-minimal-2)
- ("libsrtp" ,libsrtp) ;for calls support
- ("pango" ,pango)
- ("qrencode" ,qrencode)
- ("sqlite" ,sqlite)
- ("webrtc-audio-processing" ,webrtc-audio-processing))) ;for A/V support
+ (list atk
+ cairo
+ librsvg
+ glib
+ glib-networking
+ gpgme
+ gsettings-desktop-schemas
+ gspell ;for spell-check support
+ gstreamer ;for A/V support
+ gst-plugins-base
+ gst-plugins-good
+ gtk+
+ icu4c ;for emoji support
+ libcanberra ;for sound-notification support
+ libgcrypt
+ libgee
+ libnice
+ libsignal-protocol-c
+ libsoup-minimal-2
+ libsrtp ;for calls support
+ pango
+ qrencode
+ sqlite
+ webrtc-audio-processing)) ;for A/V support
(synopsis "Graphical Jabber/XMPP Client using GTK+/Vala")
(description "Dino is a chat client for the desktop. It focuses on providing
a minimal yet reliable Jabber/XMPP experience and having encryption enabled by
@@ -1437,6 +1451,58 @@ default.")
(home-page "https://dino.im")
(license license:gpl3+)))
+(define-public kaidan
+ (package
+ (name "kaidan")
+ (version "0.8.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/unstable/kaidan/" version
+ "/kaidan-" version ".tar.xz"))
+ (modules '((guix build utils)))
+ (snippet
+ #~(begin
+ (delete-file-recursively "3rdparty")))
+ (sha256
+ (base32 "195iddv35gc3k83r226y17avsab2b9bszgd7z7ynbddsgbf75rx7"))))
+ (build-system qt-build-system)
+ (arguments
+ (list #:configure-flags #~(list "-DBUILD_TESTS=true")))
+ (native-inputs (list extra-cmake-modules
+ perl
+ pkg-config
+ python-wrapper))
+ (inputs (list kirigami
+ knotifications
+ qtbase-5
+ qtdeclarative
+ qtgraphicaleffects
+ qtlocation
+ qtquickcontrols2
+ qtsvg
+ qtmultimedia
+ qtxmlpatterns
+ qqc2-desktop-style
+ qxmpp
+ zxing-cpp))
+ (home-page "https://www.kaidan.im/")
+ (synopsis "Qt-based XMPP/Jabber Client")
+ (description "Kaidan is a chat client. It uses the open communication
+protocol XMPP (Jabber). The user interface makes use of Kirigami and QtQuick,
+while the back-end of Kaidan is entirely written in C++ using Qt and the
+Qt-based XMPP library QXmpp.")
+ (license (list
+ ;; Graphics
+ license:cc-by-sa4.0
+ ;; Files:
+ ;; src/{StatusBar.cpp|StatusBar.h|singleapp/*|hsluv-c/*}
+ ;; utils/generate-license.py
+ license:expat
+ ;; QrCodeVideoFrame
+ license:asl2.0
+ ;; Others
+ license:gpl3+))))
+
(define-public prosody
(package
(name "prosody")