GNU bug report logs - #46013
[PATCH] gnu: nheko: Update to 0.8.0.

Previous Next

Package: guix-patches;

Reported by: Michael Rohleder <mike <at> rohleder.de>

Date: Thu, 21 Jan 2021 01:04:02 UTC

Severity: normal

Tags: patch

Done: Michael Rohleder <mike <at> rohleder.de>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 46013 in the body.
You can then email your comments to 46013 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#46013; Package guix-patches. (Thu, 21 Jan 2021 01:04:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Michael Rohleder <mike <at> rohleder.de>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Thu, 21 Jan 2021 01:04:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Michael Rohleder <mike <at> rohleder.de>
To: guix-patches <at> gnu.org
Cc: Michael Rohleder <mike <at> rohleder.de>
Subject: [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





Information forwarded to guix-patches <at> gnu.org:
bug#46013; Package guix-patches. (Thu, 21 Jan 2021 07:15:01 GMT) Full text and rfc822 format available.

Message #8 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Jonathan Brielmaier <jonathan.brielmaier <at> web.de>
To: guix-patches <at> gnu.org
Subject: Re: [bug#46013] [PATCH] gnu: nheko: Update to 0.8.0.
Date: Thu, 21 Jan 2021 08:13:54 +0100
On 21.01.21 02:03, Michael Rohleder wrote:
> * 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.

Nicolo did almost the same in http://issues.guix.gnu.org/46012 ...




Information forwarded to guix-patches <at> gnu.org:
bug#46013; Package guix-patches. (Thu, 21 Jan 2021 08:39:02 GMT) Full text and rfc822 format available.

Message #11 received at 46013 <at> debbugs.gnu.org (full text, mbox):

From: Nicolò Balzarotti <anothersms <at> gmail.com>
To: Michael Rohleder <mike <at> rohleder.de>, 46013 <at> debbugs.gnu.org
Subject: Re: [bug#46013] [PATCH] gnu: nheko: Update to 0.8.0.
Date: Thu, 21 Jan 2021 09:38:02 +0100
Michael Rohleder <mike <at> rohleder.de> writes:

> * gnu/packages/messaging.scm (nheko): Update to 0.8.0.
>
Hi! As Jonathan already noted, I did upgrade nheko too.

> (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))
>
I reported an issue upstream [1], and it seems the problem is with disk
cache (as you noted, you are removing .cache/nheko) and the proper fix
is to add "-DCOMPILE_QML=ON".  

> +       ("libnice" ,libnice)             ;for voip

I found it in the readme, but not in the cmake file, is this needed?

> +@item VoIP calls (voice).
> +@item Replies with text, images and other media.
> +@item Creating seperate profiles (command line only, use -p).

Ops, I forgot to add them.  Maybe as we are doing with other packages,
this list should be converted into a simplier description.

>      (license license:gpl3+)))

During this upgrade, I noticed 3 bundled libraries (two of them released
under expat.  So this should be changed.  But if you want to take over
my patches and submit a new one integrating my changes (mainly
unvendoring the dependencies), this would be great.

Thanks, Nicolò

[1] https://github.com/Nheko-Reborn/nheko/issues/390





Information forwarded to guix-patches <at> gnu.org:
bug#46013; Package guix-patches. (Thu, 21 Jan 2021 19:59:01 GMT) Full text and rfc822 format available.

Message #14 received at 46013 <at> debbugs.gnu.org (full text, mbox):

From: Michael Rohleder <mike <at> rohleder.de>
To: Nicolò Balzarotti <anothersms <at> gmail.com>
Cc: 46013 <at> debbugs.gnu.org
Subject: Re: [bug#46013] [PATCH] gnu: nheko: Update to 0.8.0.
Date: Thu, 21 Jan 2021 20:58:25 +0100
[Message part 1 (text/plain, inline)]
Hi Nicolo!

Nicolò Balzarotti <anothersms <at> gmail.com> writes:
> Hi! As Jonathan already noted, I did upgrade nheko too.

Yes.  Unfortunately, we "miss" each other only on some minutes ;)

>> (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))
>>
> I reported an issue upstream [1], and it seems the problem is with disk
> cache (as you noted, you are removing .cache/nheko) and the proper fix
> is to add "-DCOMPILE_QML=ON".  

Ok.
(Hard to test for me now ;)

>> +       ("libnice" ,libnice)             ;for voip
>
> I found it in the readme, but not in the cmake file, is this needed?

Yes, otherwise voice calls don't work as the "nice" gst-plugin is loaded
at runtime.

>>      (license license:gpl3+)))
>
> During this upgrade, I noticed 3 bundled libraries (two of them released
> under expat.  So this should be changed.  But if you want to take over
> my patches and submit a new one integrating my changes (mainly
> unvendoring the dependencies), this would be great.

I think, it might be better to base on your patches to not complicate
things even more.

I think, the most important part missing in your patch is the wrapping
of the GST_PLUGIN variable.  Otherwise gstreamer/voip doen't work at all.
(But this could also be added after bumping, I guess)

-- 
Imagination is more important than knowledge  - Albert Einstein
[signature.asc (application/pgp-signature, inline)]

Reply sent to Michael Rohleder <mike <at> rohleder.de>:
You have taken responsibility. (Thu, 21 Jan 2021 20:00:02 GMT) Full text and rfc822 format available.

Notification sent to Michael Rohleder <mike <at> rohleder.de>:
bug acknowledged by developer. (Thu, 21 Jan 2021 20:00:02 GMT) Full text and rfc822 format available.

Message #19 received at 46013-close <at> debbugs.gnu.org (full text, mbox):

From: Michael Rohleder <mike <at> rohleder.de>
To: Jonathan Brielmaier <jonathan.brielmaier <at> web.de>
Cc: 46013-close <at> debbugs.gnu.org
Subject: Re: bug#46013: [PATCH] gnu: nheko: Update to 0.8.0.
Date: Thu, 21 Jan 2021 20:59:43 +0100
[Message part 1 (text/plain, inline)]
Jonathan Brielmaier <jonathan.brielmaier <at> web.de> writes:

> On 21.01.21 02:03, Michael Rohleder wrote:
>> * 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.
>
> Nicolo did almost the same in http://issues.guix.gnu.org/46012 ...
>

I'm sorry!

I think, he did this patch very differently and to make it easier for
everyone, I close this.

-- 
Testing can show the presense of bugs, but not their absence.
		-- Dijkstra
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#46013; Package guix-patches. (Thu, 21 Jan 2021 20:46:02 GMT) Full text and rfc822 format available.

Message #22 received at 46013 <at> debbugs.gnu.org (full text, mbox):

From: Nicolò Balzarotti <anothersms <at> gmail.com>
To: Michael Rohleder <mike <at> rohleder.de>
Cc: 46013 <at> debbugs.gnu.org
Subject: Re: [bug#46013] [PATCH] gnu: nheko: Update to 0.8.0.
Date: Thu, 21 Jan 2021 21:45:17 +0100
[Message part 1 (text/plain, inline)]
Michael Rohleder <mike <at> rohleder.de> writes:

> Hi Nicolo!

Hi Michael & all,

> I think, it might be better to base on your patches to not complicate
> things even more.
Done, I updated the copyright line for you, used your commit message
(updated accordingly).

> I think, the most important part missing in your patch is the wrapping
> of the GST_PLUGIN variable.  Otherwise gstreamer/voip doen't work at all.
> (But this could also be added after bumping, I guess)
With you wrapper phase (and adding gst-plugin-good) I got voip call
working!

For video calls, I get this:
> Missing GStreamer plugins: opengl qmlgl

But qmlgl should be in -good, so we should take a look at gstreamer to
check why it is not included.

[v2-0001-gnu-Add-cpp-httplib.patch (text/x-patch, attachment)]
[v2-0002-gnu-Add-blurhash.patch (text/x-patch, attachment)]
[v2-0003-gnu-Add-single-application-qt5.patch (text/x-patch, attachment)]
[v2-0004-gnu-nheko-Update-to-0.8.0.patch (text/x-patch, attachment)]

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 19 Feb 2021 12:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 4 years and 181 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.