guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#46013] [PATCH] gnu: nheko: Update to 0.8.0.


From: Michael Rohleder
Subject: [bug#46013] [PATCH] gnu: nheko: Update to 0.8.0.
Date: Thu, 21 Jan 2021 02:03:23 +0100

* gnu/packages/messaging.scm (nheko): Update to 0.8.0.
[arguments]: Remove -fpermissive flag, remove remove-Werror phase, add phase 
wrap-program.
[inputs]: Add gst-plugins-base, gst-plugins-bad, libnice, qtkeychain.
[description]: Add items for new features.
(mtxclient): Update to 0.4.0.
[arguments]: Remove set-home phase.
---
This nheko needs a newer mtxclient (and current nheko doesn't build with new 
mtxclient),
so we need to update them together.

I tested voice calls (which seems to work), but couldn't get video calls to 
work:
"[ui] [error] Missing GStreamer plugins: opengl qmlgl" (at runtime)
Do we have these gstreamer plugins?

I think the new features and fixes are worth a push (voice over matrix is nice 
and
enough for me) and perhaps the video thing can be fixed later on (I leaved it 
out of the
description).

(Hint for people upgrading from current nheko: One needs to remove 
~/.config/nheko
and ~/.cache/nheko or this version will segfault.  This known upstream (and 
afaik won't
be fixed))

 gnu/packages/messaging.scm | 38 ++++++++++++++++++++------------------
 1 file changed, 20 insertions(+), 18 deletions(-)

diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index 1820a146d1..b3a34fb4cb 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -2227,7 +2227,7 @@ QMatrixClient project.")
 (define-public mtxclient
   (package
     (name "mtxclient")
-    (version "0.3.1")
+    (version "0.4.0")
     (source
      (origin
        (method git-fetch)
@@ -2236,7 +2236,7 @@ QMatrixClient project.")
              (commit (string-append "v" version))))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "1dg4dq20g0ah62j5s3gpsxqq4ny7lxkxdxa9q6g54hdwkrb9ms7x"))))
+        (base32 "1x820rcfz5r203dc8a0rzavcjjx10fsv1dicqg65m6kxx1w95j5r"))))
     (arguments
      `(#:configure-flags
        (list
@@ -2249,12 +2249,6 @@ QMatrixClient project.")
              (substitute* "CMakeLists.txt"
                
(("add_test\\((BasicConnectivity|ClientAPI|MediaAPI|Encryption|Pushrules)")
                 "# add_test"))
-             #t))
-         (add-before 'configure 'set-home
-           (lambda _
-             ;; Tries to create package registry file
-             ;; So, set HOME.
-             (setenv "HOME" "/tmp")
              #t)))))
     (build-system cmake-build-system)
     (inputs
@@ -2277,7 +2271,7 @@ for the Matrix protocol.  It is built on to of 
@code{Boost.Asio}.")
 (define-public nheko
   (package
     (name "nheko")
-    (version "0.7.2")
+    (version "0.8.0")
     (source
      (origin
        (method git-fetch)
@@ -2286,30 +2280,34 @@ for the Matrix protocol.  It is built on to of 
@code{Boost.Asio}.")
              (commit (string-append "v" version))))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "1cbhgaf9klgxdirrxj571fqwspm0byl75c1xc40l727a6qswvp7s"))))
+        (base32 "00d6wx3lcgbks74jkdyifqxf8nlravqh88fyljd0sy7kzbah9msf"))))
     (arguments
      `(#:tests? #f                      ;no test target
        #:configure-flags
        (list
-        "-DCMAKE_BUILD_TYPE=Release"
-        "-DCMAKE_CXX_FLAGS=-fpermissive")
+        "-DCMAKE_BUILD_TYPE=Release")
        #:phases
        (modify-phases %standard-phases
-         (add-after 'unpack 'remove-Werror
-           (lambda _
-             (substitute* "CMakeLists.txt"
-               (("-Werror") ""))
-             #t))
          (add-after 'unpack 'fix-determinism
            (lambda _
              ;; Make Qt deterministic.
              (setenv "QT_RCC_SOURCE_DATE_OVERRIDE" "1")
-             #t)))))
+             #t))
+         (add-after 'install 'wrap-program
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out"))
+                   (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH")))
+               (wrap-program (string-append out "/bin/nheko")
+                 `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path)))
+               #t))))))
     (build-system qt-build-system)
     (inputs
      `(("boost" ,boost)
        ("cmark" ,cmark)
+       ("gst-plugins-base" ,gst-plugins-base) ;for voip
+       ("gst-plugins-bad" ,gst-plugins-bad)   ;for voip
        ("json-modern-cxx" ,json-modern-cxx)
+       ("libnice" ,libnice)             ;for voip
        ("libolm" ,libolm)
        ("lmdb" ,lmdb)
        ("lmdbxx" ,lmdbxx)
@@ -2318,6 +2316,7 @@ for the Matrix protocol.  It is built on to of 
@code{Boost.Asio}.")
        ("qtbase" ,qtbase)
        ("qtdeclarative" ,qtdeclarative)
        ("qtgraphicaleffects" ,qtgraphicaleffects)
+       ("qtkeychain" ,qtkeychain)
        ("qtmultimedia" ,qtmultimedia)
        ("qtquickcontrols2" ,qtquickcontrols2)
        ("qtsvg" ,qtsvg)
@@ -2336,10 +2335,12 @@ client.
 There is support for:
 @itemize
 @item E2E encryption (text messages only: attachments are currently sent 
unencrypted).
+@item VoIP calls (voice).
 @item User registration.
 @item Creating, joining & leaving rooms.
 @item Sending & receiving invites.
 @item Sending & receiving files and emoji.
+@item Replies with text, images and other media.
 @item Typing notifications.
 @item Username auto-completion.
 @item Message & mention notifications.
@@ -2348,6 +2349,7 @@ There is support for:
 @item Basic communities support.
 @item Room switcher (@key{ctrl-K}).
 @item Light, Dark & System themes.
+@item Creating seperate profiles (command line only, use -p).
 @end itemize")
     (license license:gpl3+)))
 
-- 
2.30.0






reply via email to

[Prev in Thread] Current Thread [Next in Thread]