aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/messaging.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/messaging.scm')
-rw-r--r--gnu/packages/messaging.scm129
1 files changed, 98 insertions, 31 deletions
diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index 8660915bb0..2be3b09695 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -7,7 +7,7 @@
;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 ng0 <ng0@libertad.pw>
;;; Copyright © 2016 Andy Patterson <ajpatter@uwaterloo.ca>
-;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org>
+;;; Copyright © 2016, 2017 Clément Lassieur <clement@lassieur.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -34,10 +34,12 @@
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system python)
#:use-module (guix build-system perl)
+ #:use-module (guix build-system cmake)
#:use-module (gnu packages)
#:use-module (gnu packages aidc)
#:use-module (gnu packages autotools)
#:use-module (gnu packages avahi)
+ #:use-module (gnu packages base)
#:use-module (gnu packages check)
#:use-module (gnu packages crypto)
#:use-module (gnu packages cyrus-sasl)
@@ -399,14 +401,14 @@ compromised.")
(define-public znc
(package
(name "znc")
- (version "1.6.3")
+ (version "1.6.4")
(source (origin
(method url-fetch)
(uri (string-append "http://znc.in/releases/archive/znc-"
version ".tar.gz"))
(sha256
(base32
- "09xqi5fs40x6nj9gq99bnw1a7saq96bvqxknxx0ilq7yfvg4c733"))))
+ "070d6b1i3jy66m4ci4ypxkg4pbwqbzbzss1y1ycgq2w62zmrf423"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f ; tries to download GoogleTest with wget
@@ -534,6 +536,14 @@ end-to-end encryption support; XML console.")
(substitute* "configure"
(("exit 1") ""))
#t))
+ (add-after 'unpack 'fix-makefile
+ (lambda _
+ (substitute* "Makefile"
+ ;; prosodyctl needs to read the configuration file.
+ (("^INSTALLEDCONFIG =.*") "INSTALLEDCONFIG = /etc/prosody\n")
+ ;; prosodyctl needs a place to put auto-generated certificates.
+ (("^INSTALLEDDATA =.*") "INSTALLEDDATA = /var/lib/prosody\n"))
+ #t))
(add-after 'install 'wrap-programs
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Make sure all executables in "bin" find the required Lua
@@ -545,22 +555,30 @@ end-to-end encryption support; XML console.")
(if (string-prefix? "lua" label)
directory #f)))
inputs)))
- (path (string-join
- (map (lambda (path)
- (string-append path "/share/lua/5.1/?.lua;"
- path "/share/lua/5.1/?/?.lua"))
- (cons out deps))
- ";"))
- (cpath (string-join
- (map (lambda (path)
- (string-append path "/lib/lua/5.1/?.so;"
- path "/lib/lua/5.1/?/?.so"))
- (cons out deps))
- ";")))
+ (lua-path (string-join
+ (map (lambda (path)
+ (string-append
+ path "/share/lua/5.1/?.lua;"
+ path "/share/lua/5.1/?/?.lua"))
+ (cons out deps))
+ ";"))
+ (lua-cpath (string-join
+ (map (lambda (path)
+ (string-append
+ path "/lib/lua/5.1/?.so;"
+ path "/lib/lua/5.1/?/?.so"))
+ (cons out deps))
+ ";"))
+ (openssl (assoc-ref inputs "openssl"))
+ (coreutils (assoc-ref inputs "coreutils"))
+ (path (map (lambda (dir)
+ (string-append dir "/bin"))
+ (list openssl coreutils))))
(for-each (lambda (file)
(wrap-program file
- `("LUA_PATH" ";" = (,path))
- `("LUA_CPATH" ";" = (,cpath))))
+ `("LUA_PATH" ";" = (,lua-path))
+ `("LUA_CPATH" ";" = (,lua-cpath))
+ `("PATH" ":" prefix ,path)))
(find-files bin ".*"))
#t))))))
(inputs
@@ -622,49 +640,98 @@ protocols.")
(license license:gpl3+)
(home-page "https://tox.chat"))))
+;; Some tox clients move to c-toxcore, which seems to be where all the
+;; recent development happens. It is run by the same developers as toxcore,
+;; forked into a group namespace.
+(define-public c-toxcore
+ (package
+ (name "c-toxcore")
+ (version "0.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/TokTok/c-toxcore/archive/v"
+ version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0dybpz44pi0zm8djppjna0r8yh5wvl3l885dv2f1wp5366bk59n3"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)
+ ("check" ,check)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("libsodium" ,libsodium)
+ ("opus" ,opus)
+ ("libvpx" ,libvpx)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'autoconf
+ ;; The tarball source is not bootstrapped.
+ (lambda _
+ (zero? (system* "autoreconf" "-vfi")))))
+ #:tests? #f)) ; FIXME: Testsuite fails, needs internet connection.
+ (synopsis "Library for the Tox encrypted messenger protocol")
+ (description
+ "Official fork of the C library implementation of the Tox
+encrypted messenger protocol.")
+ (license license:gpl3+)
+ (home-page "https://tox.chat")))
+
(define-public utox
(package
(name "utox")
- (version "0.9.8")
+ (version "0.11.0")
(source
(origin
(method url-fetch)
- (uri (string-append "https://github.com/GrayHatter/uTox/archive/v"
+ (uri (string-append "https://github.com/uTox/uTox/archive/v"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "13hfqbwzcgvfbvf9yjm62aqsvxnpqppb50c88sys43m7022yqcsy"))))
- (build-system gnu-build-system)
+ "15s4iwjk1s0kihjqn0f07c9618clbphpr827mds3xddkiwnjz37v"))))
+ (build-system cmake-build-system)
(arguments
- '(#:make-flags (list (string-append "PREFIX=" %output)
- "CC=gcc")
- #:tests? #f ; No tests
+ '(#:tests? #f ; No test phase.
#:phases
(modify-phases %standard-phases
- ;; No configure script
- (delete 'configure))))
+ (add-after 'unpack 'fix-freetype-include
+ (lambda _
+ (substitute* "CMakeLists.txt"
+ (("/usr/include/freetype2")
+ (string-append (assoc-ref %build-inputs "freetype")
+ "/include/freetype2")))))
+ (add-before 'install 'patch-cmake-find-utox
+ (lambda _
+ (substitute* "../build/cmake_install.cmake"
+ (("/uTox-0.11.0/utox")
+ "/build/utox")))))))
(inputs
+ ;; TODO: Fix the file chooser dialog; which input does it need?
`(("dbus" ,dbus)
("filteraudio" ,filteraudio)
("fontconfig" ,fontconfig)
("freetype" ,freetype)
("libsodium" ,libsodium)
- ("libtoxcore" ,libtoxcore)
+ ("c-toxcore" ,c-toxcore)
("libvpx" ,libvpx)
("libx11" ,libx11)
("libxext" ,libxext)
("libxrender" ,libxrender)
("openal" ,openal)
("v4l-utils" ,v4l-utils)))
- (native-inputs
- `(("pkg-config" ,pkg-config)))
(synopsis "Lightweight Tox client")
- (description "A lightweight Tox client. Tox is a distributed and secure
+ (description
+ "Utox is a lightweight Tox client. Tox is a distributed and secure
instant messenger with audio and video chat capabilities.")
(home-page "http://utox.org/")
(license license:gpl3)))
-
+
(define-public qtox
(package
(name "qtox")