GNU bug report logs - #39619
[PATCH 0/4] Add nheko matrix client

Previous Next

Package: guix-patches;

Reported by: nixo <anothersms <at> gmail.com>

Date: Sat, 15 Feb 2020 21:24:01 UTC

Severity: normal

Tags: patch

Merged with 39620, 39621, 39622, 39623

Done: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>

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 39619 in the body.
You can then email your comments to 39619 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#39619; Package guix-patches. (Sat, 15 Feb 2020 21:24:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to nixo <anothersms <at> gmail.com>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Sat, 15 Feb 2020 21:24:01 GMT) Full text and rfc822 format available.

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

From: nixo <anothersms <at> gmail.com>
To: guix-patches <at> gnu.org
Cc: nixo <nicolo <at> nixo.xyz>
Subject: [PATCH 0/4] Add nheko matrix client
Date: Sat, 15 Feb 2020 22:23:05 +0100
Hello Guix!

Nheko is a well-known desktop matrix client.  I'm using nheko-reborn
like others are doing [1] since mujx/nheko is abandoned.

This patch series adds the program and its missing dependencies
mtxclient, lmdbxx and, tweeny.  Guix lint does not complain, and I've
checked and not found non-determinism problems on two different
(x64) computers (not tested on other architectures).

Thanks! Nicolò

[1] https://repology.org/project/nheko/information

nixo (4):
  gnu: Add mtxclient.
  gnu: Add tweeny.
  gnu: Add lmdbxx.
  gnu: Add nheko.

 gnu/packages/cpp.scm       |  28 ++++++++
 gnu/packages/databases.scm |  31 ++++++++-
 gnu/packages/messaging.scm | 139 ++++++++++++++++++++++++++++++++++++-
 3 files changed, 195 insertions(+), 3 deletions(-)

-- 
2.25.0





Information forwarded to guix-patches <at> gnu.org:
bug#39619; Package guix-patches. (Sat, 15 Feb 2020 21:31:05 GMT) Full text and rfc822 format available.

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

From: nixo <anothersms <at> gmail.com>
To: 39619 <at> debbugs.gnu.org,
	guix-patches <at> gnu.org
Cc: nixo <nicolo <at> nixo.xyz>
Subject: [PATCH 1/4] gnu: Add mtxclient.
Date: Sat, 15 Feb 2020 22:30:27 +0100
* gnu/packages/messaging.scm (mtxclient): New variable.
---
 gnu/packages/messaging.scm | 58 ++++++++++++++++++++++++++++++++++++--
 1 file changed, 56 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index 120daacdc6..2592d34dc2 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -48,6 +48,7 @@
   #:use-module (gnu packages boost)
   #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages cpp)
   #:use-module (gnu packages crypto)
   #:use-module (gnu packages curl)
   #:use-module (gnu packages cyrus-sasl)
@@ -68,6 +69,7 @@
   #:use-module (gnu packages libcanberra)
   #:use-module (gnu packages libidn)
   #:use-module (gnu packages linux)
+  #:use-module (gnu packages logging)
   #:use-module (gnu packages lua)
   #:use-module (gnu packages man)
   #:use-module (gnu packages ncurses)
@@ -1787,6 +1789,58 @@ implementation.  Quaternion and libqmatrixclient together form the
 QMatrixClient project.")
     (license license:lgpl2.1+)))
 
+(define-public mtxclient
+  (package
+    (name "mtxclient")
+    (version "0.2.1")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/Nheko-Reborn/mtxclient.git")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0pycznrvj57ff6gbwfn1xj943d2dr4vadl79hii1z16gn0nzxpmj"))))
+    (arguments
+     `(#:configure-flags
+       (list
+        ;; Disable example binaries (not installed)
+        "-DBUILD_LIB_EXAMPLES=OFF")
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'disable-network-tests
+           (lambda _
+             (substitute* "CMakeLists.txt"
+               (("add_test\\(BasicConnectivity") "# add_test")
+               (("add_test\\(ClientAPI") "# add_test")
+               (("add_test\\(MediaAPI") "# add_test")
+               (("add_test\\(Encryption") "# add_test"))
+             #t))
+         (add-before 'configure 'set-home
+           (lambda _
+             ;; Tries to create package registry file
+             ;; So, set HOME.
+             (setenv "HOME" "/tmp")
+             #t)))))
+    (inputs
+     `(("boost" ,boost)
+       ("libolm" ,libolm)
+       ("libsodium" ,libsodium)
+       ("openssl" ,openssl)
+       ("nlohmann-json-cpp" ,nlohmann-json-cpp)
+       ("spdlog" ,spdlog)
+       ("zlib" ,zlib)))
+    (native-inputs
+     `(("googletest" ,googletest)
+       ("pkg-config" ,pkg-config)))
+    (build-system cmake-build-system)
+    (home-page "https://github.com/Nheko-Reborn/mtxclient")
+    (synopsis "Client API library for the Matrix protocol")
+    (description "@code{mtxclient} is a C++ library that implements client API
+for the Matrix protocol.  It's built on to of @code{Boost.Asio}.")
+    (license license:expat)))
+
 (define-public quaternion
   (package
     (name "quaternion")
@@ -1795,8 +1849,8 @@ QMatrixClient project.")
      (origin
        (method git-fetch)
        (uri (git-reference
-              (url "https://github.com/QMatrixClient/Quaternion")
-              (commit version)))
+             (url "https://github.com/QMatrixClient/Quaternion")
+             (commit version)))
        (file-name (git-file-name name version))
        (sha256
         (base32 "0gpv6b3nn3lsyym8809kiqkpdszfasldqjpk5s542zyn41gdlql4"))))
-- 
2.25.0





Information forwarded to guix-patches <at> gnu.org:
bug#39619; Package guix-patches. (Sat, 15 Feb 2020 21:31:05 GMT) Full text and rfc822 format available.

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

From: nixo <anothersms <at> gmail.com>
To: 39619 <at> debbugs.gnu.org,
	guix-patches <at> gnu.org
Cc: nixo <nicolo <at> nixo.xyz>
Subject: [PATCH 2/4] gnu: Add tweeny.
Date: Sat, 15 Feb 2020 22:30:28 +0100
* gnu/packages/cpp.scm (tweeny): New variable.
---
 gnu/packages/cpp.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index ae1e3e3356..8098553828 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -410,3 +410,31 @@ SObjectizer supports not only the Actor Model but also the Publish-Subscribe
 Model and CSP-like channels.  The goal of SObjectizer is to simplify
 development of concurrent and multithreaded applications in C++.")
     (license license:bsd-3)))
+
+(define-public tweeny
+  (package
+    (name "tweeny")
+    (version "3")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/mobius3/tweeny.git")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "1adm4c17pi7xf3kf6sjyxibz5rdg1ka236p72xsm6js4j9gzlbp4"))))
+    (arguments '(#:tests? #f))          ; no check target
+    (build-system cmake-build-system)
+    (home-page "https://mobius3.github.io/tweeny/")
+    (synopsis "Modern C++ tweening library")
+    (description "@code{Tweeny} is an inbetweening library designed for the
+creation of complex animations for games and other beautiful interactive
+software.  It leverages features of modern @code{C++} to empower developers with
+an intuitive API for declaring tweenings of any type of value, as long as they
+support arithmetic operations.  The goal of @code{Tweeny} is to provide means to
+create fluid interpolations when animating position, scale, rotation, frames or
+other values of screen objects, by setting their values as the tween starting
+point and then, after each tween step, plugging back the result.")
+    (license license:expat)))
-- 
2.25.0





Information forwarded to guix-patches <at> gnu.org:
bug#39619; Package guix-patches. (Sat, 15 Feb 2020 21:32:01 GMT) Full text and rfc822 format available.

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

From: nixo <anothersms <at> gmail.com>
To: 39619 <at> debbugs.gnu.org,
	guix-patches <at> gnu.org
Cc: nixo <nicolo <at> nixo.xyz>
Subject: [PATCH 3/4] gnu: Add lmdbxx.
Date: Sat, 15 Feb 2020 22:30:29 +0100
* gnu/packages/databases.scm (lmdbxx): New variable.
---
 gnu/packages/databases.scm | 31 ++++++++++++++++++++++++++++++-
 1 file changed, 30 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 587d993918..58ad64418e 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -2105,6 +2105,35 @@ multiple cores.  The size of each database is limited only by the size of the
 virtual address space — not physical RAM.")
     (license license:openldap2.8)))
 
+(define-public lmdbxx
+  (package
+    (name "lmdbxx")
+    (version "0.9.14.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/drycpp/lmdbxx.git")
+                    (commit (string-append version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1jmb9wg2iqag6ps3z71bh72ymbcjrb6clwlkgrqf1sy80qwvlsn6"))))
+    (arguments
+     `(#:make-flags (list
+                     (string-append "PREFIX=" (assoc-ref %outputs "out")))
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure))))
+    (inputs `(("lmdb" ,lmdb)))
+    (build-system gnu-build-system)
+    (home-page "http://lmdbxx.sourceforge.net")
+    (synopsis "C++11 wrapper for the LMDB embedded B+ tree database library")
+    (description "@code{lmdbxx} is a comprehensive @code{C++} wrapper for the
+@code{LMDB} embedded database library, offering both an error-checked
+procedural interface and an object-oriented resource interface with RAII
+semantics.")
+    (license license:unlicense)))
+
 (define-public libpqxx
   (package
     (name "libpqxx")
@@ -2122,7 +2151,7 @@ virtual address space — not physical RAM.")
      `(("python" ,python-2)))
     (inputs `(("postgresql" ,postgresql)))
     (arguments
-     `(#:tests? #f   ; # FAIL:  1
+     `(#:tests? #f                      ; # FAIL:  1
        #:phases
        (modify-phases %standard-phases
          (add-before 'configure 'fix-sed-command
-- 
2.25.0





Information forwarded to guix-patches <at> gnu.org:
bug#39619; Package guix-patches. (Sat, 15 Feb 2020 21:32:02 GMT) Full text and rfc822 format available.

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

From: nixo <anothersms <at> gmail.com>
To: 39619 <at> debbugs.gnu.org,
	guix-patches <at> gnu.org
Cc: nixo <nicolo <at> nixo.xyz>
Subject: [PATCH 4/4] gnu: Add nheko.
Date: Sat, 15 Feb 2020 22:30:30 +0100
* gnu/packages/messaging.scm (nheko): New variable.
---
 gnu/packages/messaging.scm | 81 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 81 insertions(+)

diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index 2592d34dc2..11dd011c3f 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -72,6 +72,7 @@
   #:use-module (gnu packages logging)
   #:use-module (gnu packages lua)
   #:use-module (gnu packages man)
+  #:use-module (gnu packages markup)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages networking)
   #:use-module (gnu packages pcre)
@@ -1841,6 +1842,86 @@ QMatrixClient project.")
 for the Matrix protocol.  It's built on to of @code{Boost.Asio}.")
     (license license:expat)))
 
+(define-public nheko
+  (package
+    (name "nheko")
+    (version "0.6.4")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/Nheko-Reborn/nheko.git")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "19dkc98l1q4070v6mli4ybqn0ip0za607w39hjf0x8rqdxq45iwm"))))
+    (arguments
+     `(#:tests? #f                      ; no test target
+       ;; #:parallel-build? #f          ; debug non-determinism
+       #:configure-flags
+       (list
+        ;; TODO: BUILD_DOCS=ON
+        "-DCMAKE_BUILD_TYPE=Release"
+        "-DCMAKE_CXX_FLAGS=-fpermissive"
+        (string-append "-DLMDBXX_INCLUDE_DIR="
+                       (assoc-ref %build-inputs "lmdbxx") "/include/"))
+       #: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)))))
+    (inputs
+     `(("boost" ,boost)
+       ("cmark" ,cmark)
+       ("libolm" ,libolm)
+       ("lmdb" ,lmdb)
+       ("lmdbxx" ,lmdbxx)
+       ("mtxclient" ,mtxclient)
+       ("openssl" ,openssl)
+       ("nlohmann-json-cpp" ,nlohmann-json-cpp)
+       ("qtbase" ,qtbase)
+       ("qtsvg" ,qtsvg)
+       ("qtmultimedia" ,qtmultimedia)
+       ("spdlog" ,spdlog)
+       ("tweeny" ,tweeny)
+       ("zlib" ,zlib)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ("qtlinguist" ,qttools)))
+    (build-system qt-build-system)
+    (home-page "https://github.com/Nheko-Reborn/nheko")
+    (synopsis "Desktop client for Matrix using Qt and C++14")
+    (description "@code{Nheko} want to provide a native desktop app for the
+Matrix protocol that feels more like a mainstream chat app and less like an IRC
+client.
+
+Most of the features you would expect from a chat application are missing right
+now but we are getting close to a more feature complete client.  Specifically
+there is support for:
+@itemize
+@item E2E encryption (text messages only: attachments are currently sent unencrypted).
+@item User registration.
+@item Creating, joining & leaving rooms.
+@item Sending & receiving invites.
+@item Sending & receiving files and emoji.
+@item Typing notifications.
+@item Username auto-completion.
+@item Message & mention notifications.
+@item Redacting messages.
+@item Read receipts.
+@item Basic communities support.
+@item Room switcher (@key{ctrl-K}).
+@item Light, Dark & System themes.
+@end itemize\n")
+    (license license:gpl3+)))
+
 (define-public quaternion
   (package
     (name "quaternion")
-- 
2.25.0





Merged 39619 39620. Request was from Tobias Geerinckx-Rice <me <at> tobias.gr> to control <at> debbugs.gnu.org. (Sat, 15 Feb 2020 22:45:02 GMT) Full text and rfc822 format available.

Merged 39619 39620 39621. Request was from Tobias Geerinckx-Rice <me <at> tobias.gr> to control <at> debbugs.gnu.org. (Sat, 15 Feb 2020 22:45:02 GMT) Full text and rfc822 format available.

Merged 39619 39620 39621 39622. Request was from Tobias Geerinckx-Rice <me <at> tobias.gr> to control <at> debbugs.gnu.org. (Sat, 15 Feb 2020 22:45:02 GMT) Full text and rfc822 format available.

Merged 39619 39620 39621 39622 39623. Request was from Tobias Geerinckx-Rice <me <at> tobias.gr> to control <at> debbugs.gnu.org. (Sat, 15 Feb 2020 22:45:02 GMT) Full text and rfc822 format available.

Information forwarded to guix-patches <at> gnu.org:
bug#39619; Package guix-patches. (Sun, 16 Feb 2020 00:10:02 GMT) Full text and rfc822 format available.

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

From: Nicolò Balzarotti <anothersms <at> gmail.com>
To: 39619 <at> debbugs.gnu.org
Subject: Re: bug#39619: Acknowledgement ([PATCH 0/4] Add nheko matrix client)
Date: Sun, 16 Feb 2020 01:09:47 +0100
[Message part 1 (text/plain, inline)]
I cleaned up a bit the patch (removed unnecessary comments) and added
the copyright line.


[0004-gnu-Add-nheko.patch (text/x-patch, attachment)]
[Message part 3 (text/plain, inline)]

Sorry for the mess,
Nicolò

help-debbugs <at> gnu.org (GNU bug Tracking System) writes:

> Thank you for filing a new bug report with debbugs.gnu.org.
>
> This is an automatically generated reply to let you know your message
> has been received.
>
> Your message is being forwarded to the package maintainers and other
> interested parties for their attention; they will reply in due course.
>
> Your message has been sent to the package maintainer(s):
>  guix-patches <at> gnu.org
>
> If you wish to submit further information on this problem, please
> send it to 39619 <at> debbugs.gnu.org.
>
> Please do not send mail to help-debbugs <at> gnu.org unless you wish
> to report a problem with the Bug-tracking system.
>
> -- 
> 39619: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=39619
> GNU Bug Tracking System
> Contact help-debbugs <at> gnu.org with problems

Information forwarded to guix-patches <at> gnu.org:
bug#39619; Package guix-patches. (Tue, 18 Feb 2020 09:24:02 GMT) Full text and rfc822 format available.

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

From: Nicolò Balzarotti <anothersms <at> gmail.com>
To: 39619 <at> debbugs.gnu.org
Subject: [v2] Re: bug#39619: Acknowledgement ([PATCH 0/4] Add nheko matrix
 client)
Date: Tue, 18 Feb 2020 10:22:58 +0100
[Message part 1 (text/plain, inline)]
I just noticed that nlohmann-json-cpp is deprecated for json-modern-cxx,
fixed it in the two patches that were using it.

[0001-gnu-Add-mtxclient.patch (text/x-patch, attachment)]
[0004-gnu-Add-nheko.patch (text/x-patch, attachment)]
[Message part 4 (text/plain, inline)]

Thanks, Nicolò

help-debbugs <at> gnu.org (GNU bug Tracking System) writes:

> Thank you for filing a new bug report with debbugs.gnu.org.
>
> This is an automatically generated reply to let you know your message
> has been received.
>
> Your message is being forwarded to the package maintainers and other
> interested parties for their attention; they will reply in due course.
>
> Your message has been sent to the package maintainer(s):
>  guix-patches <at> gnu.org
>
> If you wish to submit further information on this problem, please
> send it to 39619 <at> debbugs.gnu.org.
>
> Please do not send mail to help-debbugs <at> gnu.org unless you wish
> to report a problem with the Bug-tracking system.
>
> -- 
> 39619: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=39619
> GNU Bug Tracking System
> Contact help-debbugs <at> gnu.org with problems

Information forwarded to guix-patches <at> gnu.org:
bug#39619; Package guix-patches. (Fri, 21 Feb 2020 16:59:02 GMT) Full text and rfc822 format available.

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

From: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
To: Nicolò Balzarotti <anothersms <at> gmail.com>
Cc: 39619 <at> debbugs.gnu.org
Subject: Re: [bug#39619] [v2] Re: bug#39619: Acknowledgement ([PATCH 0/4] Add
 nheko matrix client)
Date: Fri, 21 Feb 2020 17:58:19 +0100
Hello,

Nicolò Balzarotti <anothersms <at> gmail.com> writes:

> I just noticed that nlohmann-json-cpp is deprecated for json-modern-cxx,
> fixed it in the two patches that were using it.

Thank you for the patches.

Unfortunately, I cannot build nheko because of a missing lmdbxx input.

Some comments follow.

> +           (lambda _
> +             (substitute* "CMakeLists.txt"
> +               (("add_test\\(BasicConnectivity") "# add_test")
> +               (("add_test\\(ClientAPI") "# add_test")
> +               (("add_test\\(MediaAPI") "# add_test")
> +               (("add_test\\(Encryption") "# add_test"))

Nitpick: I suggest to use a single regexp for these.

> +    (inputs
> +     `(("boost" ,boost)
> +       ("libolm" ,libolm)
> +       ("libsodium" ,libsodium)
> +       ("openssl" ,openssl)
> +       ("json-modern-cxx" ,json-modern-cxx)
> +       ("spdlog" ,spdlog)
> +       ("zlib" ,zlib)))

Could you re-order inputs alphabetically?

> +    (description "@code{mtxclient} is a C++ library that implements client API
> +for the Matrix protocol.  It's built on to of @code{Boost.Asio}.")

Nitpick: "It's" -> "It is".
> +    (license license:expat)))
> +
>  (define-public quaternion
>    (package
>      (name "quaternion")
> @@ -1795,8 +1849,8 @@ QMatrixClient project.")
>       (origin
>         (method git-fetch)
>         (uri (git-reference
> -              (url "https://github.com/QMatrixClient/Quaternion")
> -              (commit version)))
> +             (url "https://github.com/QMatrixClient/Quaternion")
> +             (commit version)))

This change is unrelated to the patch. Could you remove it?

> +    (inputs
> +     `(("boost" ,boost)
> +       ("cmark" ,cmark)
> +       ("libolm" ,libolm)
> +       ("lmdb" ,lmdb)
> +       ("lmdbxx" ,lmdbxx)

What is that?
> +       ("mtxclient" ,mtxclient)
> +       ("openssl" ,openssl)
> +       ("json-modern-cxx" ,json-modern-cxx)
> +       ("qtbase" ,qtbase)
> +       ("qtsvg" ,qtsvg)
> +       ("qtmultimedia" ,qtmultimedia)
> +       ("spdlog" ,spdlog)
> +       ("tweeny" ,tweeny)
> +       ("zlib" ,zlib)))
> +    (native-inputs
> +     `(("pkg-config" ,pkg-config)
> +       ("qtlinguist" ,qttools)))

Isn't it a bit confusing?

> +    (build-system qt-build-system)

Nitpick: usually, build-system is above inputs and arguments.

> +    (home-page "https://github.com/Nheko-Reborn/nheko")
> +    (synopsis "Desktop client for Matrix using Qt and C++14")
> +    (description "@code{Nheko} want to provide a native desktop app for the
> +Matrix protocol that feels more like a mainstream chat app and less like an IRC
> +client.

"that feels more..." sounds link marketing buzz. Maybe we could remove it.

> +Most of the features you would expect from a chat application are missing right
> +now but we are getting close to a more feature complete client.

I'm not sure this part is warranted either.

> Specifically
> +there is support for:
> +@itemize
> +@item E2E encryption (text messages only: attachments are currently sent unencrypted).
> +@item User registration.
> +@item Creating, joining & leaving rooms.
> +@item Sending & receiving invites.
> +@item Sending & receiving files and emoji.
> +@item Typing notifications.
> +@item Username auto-completion.
> +@item Message & mention notifications.
> +@item Redacting messages.
> +@item Read receipts.
> +@item Basic communities support.
> +@item Room switcher (@key{ctrl-K}).
> +@item Light, Dark & System themes.
> +@end itemize\n")

No need for the final newline.

Regards,

-- 
Nicolas Goaziou




Information forwarded to guix-patches <at> gnu.org:
bug#39619; Package guix-patches. (Fri, 21 Feb 2020 21:58:02 GMT) Full text and rfc822 format available.

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

From: Nicolò Balzarotti <anothersms <at> gmail.com>
To: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
Cc: 39619 <at> debbugs.gnu.org
Subject: Re: [bug#39619] [v2] Re: bug#39619: Acknowledgement ([PATCH 0/4] Add
 nheko matrix client)
Date: Fri, 21 Feb 2020 22:57:16 +0100
[Message part 1 (text/plain, inline)]
Nicolas Goaziou <mail <at> nicolasgoaziou.fr> writes:

Hi, 
> Hello,
>
> Nicolò Balzarotti <anothersms <at> gmail.com> writes:
>
>> I just noticed that nlohmann-json-cpp is deprecated for json-modern-cxx,
>> fixed it in the two patches that were using it.
>
> Thank you for the patches.
>

thanks for your review.

> Unfortunately, I cannot build nheko because of a missing lmdbxx input.
>
lmdbxx was patch #3, but I created some noise sending replying to
guix-patches and creating multiple issues.  I'm sending it again with
other fixes applied.

> Some comments follow.
>
>> +           (lambda _
>> +             (substitute* "CMakeLists.txt"
>> +               (("add_test\\(BasicConnectivity") "# add_test")
>> +               (("add_test\\(ClientAPI") "# add_test")
>> +               (("add_test\\(MediaAPI") "# add_test")
>> +               (("add_test\\(Encryption") "# add_test"))
>
> Nitpick: I suggest to use a single regexp for these.

Sure, done.  I'm not much confident with substitute* yet.

>
>> +    (inputs
>> +     `(("boost" ,boost)
>> +       ("libolm" ,libolm)
>> +       ("libsodium" ,libsodium)
>> +       ("openssl" ,openssl)
>> +       ("json-modern-cxx" ,json-modern-cxx)
>> +       ("spdlog" ,spdlog)
>> +       ("zlib" ,zlib)))
>
> Could you re-order inputs alphabetically?

Done

>
>> +    (description "@code{mtxclient} is a C++ library that implements client API
>> +for the Matrix protocol.  It's built on to of @code{Boost.Asio}.")
>
> Nitpick: "It's" -> "It is".

Done
>> +    (license license:expat)))
>> +
>>  (define-public quaternion
>>    (package
>>      (name "quaternion")
>> @@ -1795,8 +1849,8 @@ QMatrixClient project.")
>>       (origin
>>         (method git-fetch)
>>         (uri (git-reference
>> -              (url "https://github.com/QMatrixClient/Quaternion")
>> -              (commit version)))
>> +             (url "https://github.com/QMatrixClient/Quaternion")
>> +             (commit version)))
>
> This change is unrelated to the patch. Could you remove it?
I'm sorry
>
>> +    (inputs
>> +     `(("boost" ,boost)
>> +       ("cmark" ,cmark)
>> +       ("libolm" ,libolm)
>> +       ("lmdb" ,lmdb)
>> +       ("lmdbxx" ,lmdbxx)
>
> What is that?
See previous comment

>> +       ("mtxclient" ,mtxclient)
>> +       ("openssl" ,openssl)
>> +       ("json-modern-cxx" ,json-modern-cxx)
>> +       ("qtbase" ,qtbase)
>> +       ("qtsvg" ,qtsvg)
>> +       ("qtmultimedia" ,qtmultimedia)
>> +       ("spdlog" ,spdlog)
>> +       ("tweeny" ,tweeny)
>> +       ("zlib" ,zlib)))
>> +    (native-inputs
>> +     `(("pkg-config" ,pkg-config)
>> +       ("qtlinguist" ,qttools)))
>
> Isn't it a bit confusing?
I copied it from
./gnu/packages/lxqt.scm:1332:          ("qtlinguist" ,qttools)))
./gnu/packages/sync.scm:193:       ("qtlinguist" ,qttools)))
./gnu/packages/music.scm:279:         ("qtlinguist" ,qttools)))
./gnu/packages/music.scm:4128:       ("qtlinguist" ,qttools)))

I can change it if needed, but I found other instances searching for
"qtlinguist" as cmake complained about it.  If those instances were
"qttools" I would have not found it.

>
>> +    (build-system qt-build-system)
>
> Nitpick: usually, build-system is above inputs and arguments.
>
>> +    (home-page "https://github.com/Nheko-Reborn/nheko")
>> +    (synopsis "Desktop client for Matrix using Qt and C++14")
>> +    (description "@code{Nheko} want to provide a native desktop app for the
>> +Matrix protocol that feels more like a mainstream chat app and less like an IRC
>> +client.
>
> "that feels more..." sounds link marketing buzz. Maybe we could remove it.
>
>> +Most of the features you would expect from a chat application are missing right
>> +now but we are getting close to a more feature complete client.
>
> I'm not sure this part is warranted either.
Removed and rephrased

>
>> Specifically
>> +there is support for:
>> +@itemize
>> +@item E2E encryption (text messages only: attachments are currently sent unencrypted).
>> +@item User registration.
>> +@item Creating, joining & leaving rooms.
>> +@item Sending & receiving invites.
>> +@item Sending & receiving files and emoji.
>> +@item Typing notifications.
>> +@item Username auto-completion.
>> +@item Message & mention notifications.
>> +@item Redacting messages.
>> +@item Read receipts.
>> +@item Basic communities support.
>> +@item Room switcher (@key{ctrl-K}).
>> +@item Light, Dark & System themes.
>> +@end itemize\n")
>
> No need for the final newline.

I wasn't sure, as there are dozens of instances with the newline after

rep -ri --line-number  '@end itemize[^\\n]'  | wc -l
181

grep -ri --line-number  '@end itemize\\n'  | wc -l
277


I removed it, but if there's a standard, it would be better if it was
respected (as for "new" contributors it's difficult to understand the
right way just by looking at existing packages)

[0001-gnu-Add-mtxclient.patch (text/x-patch, attachment)]
[0002-gnu-Add-tweeny.patch (text/x-patch, attachment)]
[0003-gnu-Add-lmdbxx.patch (text/x-patch, attachment)]
[0004-gnu-Add-nheko.patch (text/x-patch, attachment)]
[Message part 6 (text/plain, inline)]
Thanks, Nicolò


>
> Regards,
>
> -- 
> Nicolas Goaziou

Reply sent to Nicolas Goaziou <mail <at> nicolasgoaziou.fr>:
You have taken responsibility. (Sat, 22 Feb 2020 23:49:01 GMT) Full text and rfc822 format available.

Notification sent to nixo <anothersms <at> gmail.com>:
bug acknowledged by developer. (Sat, 22 Feb 2020 23:49:02 GMT) Full text and rfc822 format available.

Message #42 received at 39619-done <at> debbugs.gnu.org (full text, mbox):

From: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
To: Nicolò Balzarotti <anothersms <at> gmail.com>
Cc: 39619-done <at> debbugs.gnu.org
Subject: Re: [bug#39619] [v2] Re: bug#39619: Acknowledgement ([PATCH 0/4] Add
 nheko matrix client)
Date: Sun, 23 Feb 2020 00:48:34 +0100
Hello,

Nicolò Balzarotti <anothersms <at> gmail.com> writes:

> lmdbxx was patch #3, but I created some noise sending replying to
> guix-patches and creating multiple issues.  I'm sending it again with
> other fixes applied.

OK. I applied your patches with the two small changes below:
> +         (add-before 'configure 'disable-network-tests
> +           (lambda _
> +             (substitute* "CMakeLists.txt"
> +               (("add_test\\([BasicConnectivity|ClientAPI|MediaAPI|Encryption]")
> +                "# add_test"))

I changed the regexp to:

  "add_test\\((BasicConnectivity|ClientAPI|MediaAPI|Encryption)"

instead.

> +    (source (origin
> +              (method git-fetch)
> +              (uri (git-reference
> +                    (url "https://github.com/drycpp/lmdbxx.git")
> +                    (commit (string-append version))))

I removed the `string-append' call.

I also added copyright lines for you in "cpp.scm" and "databases.scm".

Thank you!

Regards,

-- 
Nicolas Goaziou




Reply sent to Nicolas Goaziou <mail <at> nicolasgoaziou.fr>:
You have taken responsibility. (Sat, 22 Feb 2020 23:49:02 GMT) Full text and rfc822 format available.

Notification sent to nixo <anothersms <at> gmail.com>:
bug acknowledged by developer. (Sat, 22 Feb 2020 23:49:02 GMT) Full text and rfc822 format available.

Reply sent to Nicolas Goaziou <mail <at> nicolasgoaziou.fr>:
You have taken responsibility. (Sat, 22 Feb 2020 23:49:02 GMT) Full text and rfc822 format available.

Notification sent to nixo <anothersms <at> gmail.com>:
bug acknowledged by developer. (Sat, 22 Feb 2020 23:49:02 GMT) Full text and rfc822 format available.

Reply sent to Nicolas Goaziou <mail <at> nicolasgoaziou.fr>:
You have taken responsibility. (Sat, 22 Feb 2020 23:49:02 GMT) Full text and rfc822 format available.

Notification sent to nixo <anothersms <at> gmail.com>:
bug acknowledged by developer. (Sat, 22 Feb 2020 23:49:02 GMT) Full text and rfc822 format available.

Reply sent to Nicolas Goaziou <mail <at> nicolasgoaziou.fr>:
You have taken responsibility. (Sat, 22 Feb 2020 23:49:02 GMT) Full text and rfc822 format available.

Notification sent to nixo <anothersms <at> gmail.com>:
bug acknowledged by developer. (Sat, 22 Feb 2020 23:49:03 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sun, 22 Mar 2020 11:24:04 GMT) Full text and rfc822 format available.

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

Previous Next


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