summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/messaging.scm84
1 files changed, 61 insertions, 23 deletions
diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index 8635cbf449..2b3284ba6f 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -510,7 +510,7 @@ was initially a fork of xmpppy, but uses non-blocking sockets.")
(define-public gajim
(package
(name "gajim")
- (version "0.16.9")
+ (version "1.0.1")
(source (origin
(method url-fetch)
(uri (string-append "https://gajim.org/downloads/"
@@ -518,36 +518,74 @@ was initially a fork of xmpppy, but uses non-blocking sockets.")
"/gajim-" version ".tar.bz2"))
(sha256
(base32
- "0v08zdvpqaig0wxpxn1l8rsj3wr3fqvnagn8cnvch17vfqv9gcr1"))))
- (build-system gnu-build-system)
+ "16ynws10vhx6rhjjjmzw6iyb3hc19823xhx4gsb14hrc7l8vzd1c"))))
+ (build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'install 'wrap-program
(lambda* (#:key outputs #:allow-other-keys)
- ;; Make sure all Python scripts run with the correct PYTHONPATH.
- (let ((out (assoc-ref outputs "out"))
- (path (getenv "PYTHONPATH")))
- (for-each (lambda (name)
- (let ((file (string-append out "/bin/" name)))
- ;; Wrapping destroys identification of intended
- ;; application, so we need to override "APP".
- (substitute* file
- (("APP=`basename \\$0`")
- (string-append "APP=" name)))
- (wrap-program file
- `("PYTHONPATH" ":" prefix (,path)))))
- '("gajim" "gajim-remote" "gajim-history-manager")))
+ (let ((out (assoc-ref outputs "out")))
+ (for-each
+ (lambda (name)
+ (let ((file (string-append out "/bin/" name))
+ (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
+ (wrap-program file
+ `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)))))
+ '("gajim" "gajim-remote" "gajim-history-manager")))
+ #t))
+ (add-before 'check 'remove-test-resolver
+ ;; This test requires network access.
+ (lambda _
+ (substitute* "test/runtests.py"
+ (("'integration.test_resolver',") ""))
+ #t))
+ (add-before 'check 'start-xserver
+ ;; Tests require a running X server.
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((xorg-server (assoc-ref inputs "xorg-server"))
+ (display ":1"))
+ (setenv "DISPLAY" display)
+ (zero? (system (string-append xorg-server "/bin/Xvfb "
+ display " &"))))))
+ (add-after 'install 'install-icons
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (adwaita (string-append
+ (assoc-ref inputs "adwaita-icon-theme")
+ "/share/icons/Adwaita"))
+ (hicolor (string-append
+ (assoc-ref inputs "hicolor-icon-theme")
+ "/share/icons/hicolor"))
+ (icons (string-append
+ out "/lib/python"
+ ,(version-major+minor (package-version python))
+ "/site-packages/gajim/data/icons")))
+ (with-directory-excursion icons
+ (symlink adwaita "Adwaita")
+ (copy-recursively hicolor "hicolor")))
#t)))))
(native-inputs
- `(("intltool" ,intltool)))
+ `(("intltool" ,intltool)
+ ("xorg-server" ,xorg-server)))
(inputs
- `(("python2-axolotl" ,python2-axolotl)
- ("python2-nbxmpp" ,python2-nbxmpp)
- ("python2-pyopenssl" ,python2-pyopenssl)
- ("python2-gnupg" ,python2-gnupg)
- ("python2-pygtk" ,python2-pygtk)
- ("python" ,python-2)))
+ `(("adwaita-icon-theme" ,adwaita-icon-theme)
+ ("gnome-keyring" ,gnome-keyring)
+ ("gtk+" ,gtk+)
+ ("gtkspell3" ,gtkspell3)
+ ("hicolor-icon-theme" ,hicolor-icon-theme)
+ ("libsecret" ,libsecret)
+ ("python-axolotl" ,python-axolotl)
+ ("python-dbus" ,python-dbus)
+ ("python-docutils" ,python-docutils)
+ ("python-gnupg" ,python-gnupg)
+ ("python-nbxmpp" ,python-nbxmpp)
+ ("python-pillow" ,python-pillow)
+ ("python-pyasn1" ,python-pyasn1)
+ ("python-pycairo" ,python-pycairo)
+ ("python-pygobject" ,python-pygobject)
+ ("python-pyopenssl" ,python-pyopenssl)
+ ("python-qrcode" ,python-qrcode)))
(home-page "https://gajim.org/")
(synopsis "Jabber (XMPP) client")
(description "Gajim is a feature-rich and easy to use Jabber/XMPP client.