diff options
Diffstat (limited to 'gnu/packages/messaging.scm')
-rw-r--r-- | gnu/packages/messaging.scm | 183 |
1 files changed, 148 insertions, 35 deletions
diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 9dc3e58ef9..f8bb673734 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -23,6 +23,7 @@ ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2020 Reza Alizadeh Majd <r.majd@pantherx.org> ;;; Copyright © 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de> +;;; Copyright © 2020 Mason Hock <chaosmonk@riseup.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -79,6 +80,7 @@ #:use-module (gnu packages lua) #:use-module (gnu packages man) #:use-module (gnu packages markup) + #:use-module (gnu packages mpd) #:use-module (gnu packages ncurses) #:use-module (gnu packages networking) #:use-module (gnu packages pcre) @@ -93,6 +95,7 @@ #:use-module (gnu packages python-xyz) #:use-module (gnu packages qt) #:use-module (gnu packages readline) + #:use-module (gnu packages sphinx) #:use-module (gnu packages sqlite) #:use-module (gnu packages tcl) #:use-module (gnu packages texinfo) @@ -119,6 +122,59 @@ #:use-module (guix packages) #:use-module (guix utils)) +(define-public poezio + (package + (name "poezio") + (version "0.13.1") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://lab.louiz.org/poezio/poezio.git") + (commit + (string-append "v" version)))) + (file-name + (git-file-name name version)) + (sha256 + (base32 "041y61pcbdb86s04qwp8s1g6bp84yskc7vdizwpi2hz18y01x5fy")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch + (lambda _ + (substitute* "setup.py" + (("'CC', 'cc'") + "'CC', 'gcc'")) + #t))))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("python-setuptools" ,python-setuptools) + ("python-sphinx" ,python-sphinx))) + (inputs + `(("python-mpd2" ,python-mpd2) + ("python-potr" ,python-potr) + ("python-pyasn1" ,python-pyasn1) + ("python-pyasn1-modules" ,python-pyasn1-modules) + ("python-pygments" ,python-pygments) + ("python-pyinotify" ,python-pyinotify) + ;("python" ,python) + ("python-qrcode" ,python-qrcode) + ("python-slixmpp" ,python-slixmpp))) + (synopsis "Console Jabber/XMPP Client") + (description "Poezio is a free console XMPP client (the protocol on which +the Jabber IM network is built). +Its goal is to let you connect very easily (no account creation needed) to the +network and join various chatrooms, immediately. It tries to look like the +most famous IRC clients (weechat, irssi, etc). Many commands are identical and +you won't be lost if you already know these clients. Configuration can be +made in a configuration file or directly from the client. +You'll find the light, fast, geeky and anonymous spirit of IRC while using a +powerful, standard and open protocol.") + (home-page "https://poez.io/en/") + (license license:zlib))) + (define-public libotr (package (name "libotr") @@ -227,6 +283,29 @@ identi.ca and status.net).") (home-page "https://www.bitlbee.org/") (license (list license:gpl2+ license:bsd-2)))) +(define-public bitlbee-purple + ;; This variant uses libpurple, which provides support for more protocols at + ;; the expense of a much bigger closure. + (package/inherit bitlbee + (name "bitlbee-purple") + (synopsis "IRC to instant messaging gateway (using Pidgin's libpurple)") + (inputs `(("purple" ,pidgin) + ,@(package-inputs bitlbee))) + (arguments + (substitute-keyword-arguments (package-arguments bitlbee) + ((#:phases phases '%standard-phases) + `(modify-phases ,phases + (replace 'configure ;add "--purple=1" + (lambda* (#:key outputs #:allow-other-keys) + (invoke "./configure" + (string-append "--prefix=" + (assoc-ref outputs "out")) + "--otr=1" "--purple=1"))))) + ((#:tests? _ #t) + ;; XXX: Tests fail to link, and ./configure says that it's "supported + ;; on a best-effort basis" anyway. + #f))))) + (define-public bitlbee-discord (package (name "bitlbee-discord") @@ -569,14 +648,14 @@ compromised.") (define-public znc (package (name "znc") - (version "1.8.1") + (version "1.8.2") (source (origin (method url-fetch) (uri (string-append "https://znc.in/releases/archive/znc-" version ".tar.gz")) (sha256 (base32 - "0hb1v167aa6gv5bcwz352l6b8gnd74ymjw92y4x882l099hzg59i")))) + "03fyi0j44zcanj1rsdx93hkdskwfvhbywjiwd17f9q1a7yp8l8zz")))) (build-system cmake-build-system) (arguments `(#:configure-flags @@ -759,7 +838,7 @@ end-to-end encryption support; XML console.") (define-public gajim-omemo (package (name "gajim-omemo") - (version "2.7.4") + (version "2.7.7") (source (origin (method url-fetch/zipbomb) (uri (string-append @@ -767,7 +846,7 @@ end-to-end encryption support; XML console.") version ".zip")) (sha256 (base32 - "00zrj57n86c2m99n0swmmaws4f8zccbgbi8fknv6f9b1vif9jc8p")))) + "17jl4blkq04ag3g0har6z1bmk36523d29s51g260wb1pywfb536h")))) (build-system trivial-build-system) (arguments `(#:modules ((guix build utils)) @@ -1551,15 +1630,14 @@ protocol allows.") (define-public mcabber (package (name "mcabber") - (version "1.1.0") + (version "1.1.1") (source (origin (method url-fetch) (uri (string-append "https://mcabber.com/files/" name "-" version ".tar.bz2")) (sha256 - (base32 - "1ggh865p1rf10ffsnf4g6qv9i8bls36dxdb1nzs5r9vdqci2rz04")))) + (base32 "0ngrcc8nzpzk4vw36ni3w073149zsi0yjh922xy9cy5a7srwx2fp")))) (build-system gnu-build-system) (arguments '(#:configure-flags (list "--enable-otr" @@ -1696,43 +1774,49 @@ are both supported).") (package (name "profanity") (version "0.9.5") - (source (origin - (method url-fetch) - (uri (string-append "https://profanity-im.github.io/profanity-" - version ".tar.gz")) - (sha256 - (base32 - "00j9l9v62rz9hprgiy1vrz8v3v59ph18h8kskqxr31fgqvjv5xr3")))) - (build-system gnu-build-system) + (source + (origin + (method url-fetch) + (uri + (string-append "https://profanity-im.github.io/profanity-" + version ".tar.gz")) + (sha256 + (base32 + "00j9l9v62rz9hprgiy1vrz8v3v59ph18h8kskqxr31fgqvjv5xr3")))) + (build-system glib-or-gtk-build-system) (arguments - '(#:configure-flags - (list "--enable-c-plugins" - "--enable-otr" - "--enable-omemo" - "--enable-pgp" - "--enable-icons" - "--enable-notifications"))) + `(#:configure-flags + (list + "--enable-notifications" + "--enable-python-plugins" + "--enable-c-plugins" + "--enable-plugins" + "--enable-otr" + "--enable-pgp" + "--enable-omemo" + "--enable-icons-and-clipboard"))) + (native-inputs + `(("autoconf" ,autoconf) + ("autoconf-archive" ,autoconf-archive) + ("automake" ,automake) + ("cmocka" ,cmocka) + ("libtool" ,libtool) + ("pkg-config" ,pkg-config))) (inputs `(("curl" ,curl) ("expat" ,expat) ("glib" ,glib) ("gpgme" ,gpgme) + ("gtk+" ,gtk+-2) ("libmesode" ,libmesode) + ("libnotify" ,libnotify) ("libotr" ,libotr) + ("libsignal-protocol-c" ,libsignal-protocol-c) ("ncurses" ,ncurses) ("openssl" ,openssl) + ("python" ,python-wrapper) ("readline" ,readline) ("sqlite" ,sqlite))) - (native-inputs - `(("autoconf" ,autoconf) - ("autoconf-archive" ,autoconf-archive) - ("automake" ,automake) - ("cmocka" ,cmocka) - ("gtk+" ,gtk+-2) - ("libnotify" ,libnotify) - ("libtool" ,libtool) - ("libsignal-protocol-c" ,libsignal-protocol-c) - ("pkg-config" ,pkg-config))) (synopsis "Console-based XMPP client") (description "Profanity is a console based XMPP client written in C using ncurses and libmesode, inspired by Irssi.") @@ -2019,13 +2103,13 @@ QMatrixClient project.") (define-public hangups (package (name "hangups") - (version "0.4.10") + (version "0.4.11") (source (origin (method url-fetch) (uri (pypi-uri "hangups" version)) (sha256 - (base32 "0ww9z9kcb02pwnr8q1ll31wkzspc1fci1ly8ifrwzxysp4rxy3j5")))) + (base32 "165lravvlsgkv6pp3vgg785ihycvs43qzqxw2d2yygrc6pbhqlyv")))) (build-system python-build-system) (arguments `(#:phases @@ -2257,7 +2341,7 @@ support for high performance Telegram Bot creation.") ("folks" ,folks) ("libgcrypt" ,libgcrypt) ("libgee" ,libgee) - ("libhandy" ,libhandy) + ("libhandy" ,libhandy-0.0) ("pidgin" ,pidgin) ("purple-mm-sms" ,purple-mm-sms) ("sqlite" ,sqlite))) @@ -2270,4 +2354,33 @@ as well as on desktop platforms. It's based on libpurple and ModemManager.") (home-page "https://source.puri.sm/Librem5/chatty") (license license:gpl3+))) +(define-public mosquitto + (package + (name "mosquitto") + (version "1.6.12") + (source + (origin + (method url-fetch) + (uri (string-append "https://mosquitto.org/files/source/mosquitto-" + version ".tar.gz")) + (sha256 + (base32 + "1yq7y329baa1ly488rw125c3mvsnsa7kjkik602xv1xpkz8p73al")))) + (build-system cmake-build-system) + (inputs + `(("openssl" ,openssl))) + (synopsis "Message broker") + (description "This package provides Eclipse Mosquitto, a message broker +that implements the MQTT protocol versions 5.0, 3.1.1 and 3.1. Mosquitto +is lightweight and is suitable for use on all devices from low power single +board computers to full servers. + +The MQTT protocol provides a lightweight method of carrying out messaging +using a publish/subscribe model. This makes it suitable for Internet of +Things messaging such as with low power sensors or mobile devices such +as phones, embedded computers or microcontrollers.") + (home-page "https://mosquitto.org/") + ;; Dual licensed. + (license (list license:epl1.0 license:edl1.0)))) + ;;; messaging.scm ends here |