diff options
Diffstat (limited to 'gnu')
-rw-r--r-- | gnu/packages/messaging.scm | 84 |
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. |