* [bug#39619] [PATCH 0/4] Add nheko matrix client @ 2020-02-15 21:23 nixo [not found] ` <handler.39619.B.158180183921379.ack@debbugs.gnu.org> 0 siblings, 1 reply; 14+ messages in thread From: nixo @ 2020-02-15 21:23 UTC (permalink / raw) To: 39619; +Cc: nixo 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 ^ permalink raw reply [flat|nested] 14+ messages in thread
[parent not found: <handler.39619.B.158180183921379.ack@debbugs.gnu.org>]
* [bug#39619] [PATCH 1/4] gnu: Add mtxclient. [not found] ` <handler.39619.B.158180183921379.ack@debbugs.gnu.org> @ 2020-02-15 21:30 ` nixo 2020-02-15 21:30 ` [bug#39619] [PATCH 2/4] gnu: Add tweeny nixo ` (3 more replies) 2020-02-16 0:09 ` [bug#39619] Acknowledgement ([PATCH 0/4] Add nheko matrix client) Nicolò Balzarotti 2020-02-18 9:22 ` [bug#39619] [v2] Re: bug#39619: " Nicolò Balzarotti 2 siblings, 4 replies; 14+ messages in thread From: nixo @ 2020-02-15 21:30 UTC (permalink / raw) To: 39619; +Cc: nixo * 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 ^ permalink raw reply related [flat|nested] 14+ messages in thread
* [bug#39619] [PATCH 2/4] gnu: Add tweeny. 2020-02-15 21:30 ` [bug#39619] [PATCH 1/4] gnu: Add mtxclient nixo @ 2020-02-15 21:30 ` nixo [not found] ` <handler.39621.B.158180225922123.ack@debbugs.gnu.org> 2020-02-15 21:30 ` [bug#39622] [PATCH 3/4] gnu: Add lmdbxx nixo ` (2 subsequent siblings) 3 siblings, 1 reply; 14+ messages in thread From: nixo @ 2020-02-15 21:30 UTC (permalink / raw) To: 39619; +Cc: nixo * 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 ^ permalink raw reply related [flat|nested] 14+ messages in thread
[parent not found: <handler.39621.B.158180225922123.ack@debbugs.gnu.org>]
* bug#39621: Acknowledgement ([PATCH 2/4] gnu: Add tweeny.) [not found] ` <handler.39621.B.158180225922123.ack@debbugs.gnu.org> @ 2020-02-15 21:34 ` Nicolò Balzarotti 0 siblings, 0 replies; 14+ messages in thread From: Nicolò Balzarotti @ 2020-02-15 21:34 UTC (permalink / raw) To: 39621-done help-debbugs@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@gnu.org > > If you wish to submit further information on this problem, please > send it to 39621@debbugs.gnu.org. > > Please do not send mail to help-debbugs@gnu.org unless you wish > to report a problem with the Bug-tracking system. > > -- > 39621: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=39621 > GNU Bug Tracking System > Contact help-debbugs@gnu.org with problems ^ permalink raw reply [flat|nested] 14+ messages in thread
* [bug#39622] [PATCH 3/4] gnu: Add lmdbxx. 2020-02-15 21:30 ` [bug#39619] [PATCH 1/4] gnu: Add mtxclient nixo 2020-02-15 21:30 ` [bug#39619] [PATCH 2/4] gnu: Add tweeny nixo @ 2020-02-15 21:30 ` nixo [not found] ` <handler.39622.B.158180225922130.ack@debbugs.gnu.org> 2020-02-15 21:30 ` [bug#39623] [PATCH 4/4] gnu: Add nheko nixo [not found] ` <handler.39620.B.158180225622091.ack@debbugs.gnu.org> 3 siblings, 1 reply; 14+ messages in thread From: nixo @ 2020-02-15 21:30 UTC (permalink / raw) To: 39619, 39622; +Cc: nixo * 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 ^ permalink raw reply related [flat|nested] 14+ messages in thread
[parent not found: <handler.39622.B.158180225922130.ack@debbugs.gnu.org>]
* bug#39622: Acknowledgement ([PATCH 3/4] gnu: Add lmdbxx.) [not found] ` <handler.39622.B.158180225922130.ack@debbugs.gnu.org> @ 2020-02-15 21:34 ` Nicolò Balzarotti 0 siblings, 0 replies; 14+ messages in thread From: Nicolò Balzarotti @ 2020-02-15 21:34 UTC (permalink / raw) To: 39622-done help-debbugs@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@gnu.org > > If you wish to submit further information on this problem, please > send it to 39622@debbugs.gnu.org. > > Please do not send mail to help-debbugs@gnu.org unless you wish > to report a problem with the Bug-tracking system. > > -- > 39622: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=39622 > GNU Bug Tracking System > Contact help-debbugs@gnu.org with problems ^ permalink raw reply [flat|nested] 14+ messages in thread
* [bug#39623] [PATCH 4/4] gnu: Add nheko. 2020-02-15 21:30 ` [bug#39619] [PATCH 1/4] gnu: Add mtxclient nixo 2020-02-15 21:30 ` [bug#39619] [PATCH 2/4] gnu: Add tweeny nixo 2020-02-15 21:30 ` [bug#39622] [PATCH 3/4] gnu: Add lmdbxx nixo @ 2020-02-15 21:30 ` nixo [not found] ` <handler.39623.B.158180226322189.ack@debbugs.gnu.org> [not found] ` <handler.39620.B.158180225622091.ack@debbugs.gnu.org> 3 siblings, 1 reply; 14+ messages in thread From: nixo @ 2020-02-15 21:30 UTC (permalink / raw) To: 39619, 39623; +Cc: nixo * 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 ^ permalink raw reply related [flat|nested] 14+ messages in thread
[parent not found: <handler.39623.B.158180226322189.ack@debbugs.gnu.org>]
* bug#39623: Acknowledgement ([PATCH 4/4] gnu: Add nheko.) [not found] ` <handler.39623.B.158180226322189.ack@debbugs.gnu.org> @ 2020-02-15 21:34 ` Nicolò Balzarotti 0 siblings, 0 replies; 14+ messages in thread From: Nicolò Balzarotti @ 2020-02-15 21:34 UTC (permalink / raw) To: 39623-done help-debbugs@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@gnu.org > > If you wish to submit further information on this problem, please > send it to 39623@debbugs.gnu.org. > > Please do not send mail to help-debbugs@gnu.org unless you wish > to report a problem with the Bug-tracking system. > > -- > 39623: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=39623 > GNU Bug Tracking System > Contact help-debbugs@gnu.org with problems ^ permalink raw reply [flat|nested] 14+ messages in thread
[parent not found: <handler.39620.B.158180225622091.ack@debbugs.gnu.org>]
* bug#39620: Acknowledgement ([PATCH 1/4] gnu: Add mtxclient.) [not found] ` <handler.39620.B.158180225622091.ack@debbugs.gnu.org> @ 2020-02-15 21:34 ` Nicolò Balzarotti 0 siblings, 0 replies; 14+ messages in thread From: Nicolò Balzarotti @ 2020-02-15 21:34 UTC (permalink / raw) To: 39620-done help-debbugs@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@gnu.org > > If you wish to submit further information on this problem, please > send it to 39620@debbugs.gnu.org. > > Please do not send mail to help-debbugs@gnu.org unless you wish > to report a problem with the Bug-tracking system. > > -- > 39620: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=39620 > GNU Bug Tracking System > Contact help-debbugs@gnu.org with problems ^ permalink raw reply [flat|nested] 14+ messages in thread
* [bug#39619] Acknowledgement ([PATCH 0/4] Add nheko matrix client) [not found] ` <handler.39619.B.158180183921379.ack@debbugs.gnu.org> 2020-02-15 21:30 ` [bug#39619] [PATCH 1/4] gnu: Add mtxclient nixo @ 2020-02-16 0:09 ` Nicolò Balzarotti 2020-02-18 9:22 ` [bug#39619] [v2] Re: bug#39619: " Nicolò Balzarotti 2 siblings, 0 replies; 14+ messages in thread From: Nicolò Balzarotti @ 2020-02-16 0:09 UTC (permalink / raw) To: 39619 [-- Attachment #1: Type: text/plain, Size: 92 bytes --] I cleaned up a bit the patch (removed unnecessary comments) and added the copyright line. [-- Attachment #2: 0004-gnu-Add-nheko.patch --] [-- Type: text/x-patch, Size: 4096 bytes --] From dc713bc525e831a05c7e9433e62da47bcf13c669 Mon Sep 17 00:00:00 2001 From: nixo <nicolo@nixo.xyz> Date: Sat, 15 Feb 2020 21:08:12 +0100 Subject: [PATCH] gnu: Add nheko. * gnu/packages/messaging.scm (nheko): New variable. --- gnu/packages/messaging.scm | 78 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 2592d34dc2..fe4e8fa072 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -18,6 +18,7 @@ ;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org> ;;; Copyright © 2019, 2020 Brett Gilio <brettg@gnu.org> ;;; Copyright © 2019, 2020 Timotej Lazar <timotej.lazar@araneo.si> +;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz> ;;; ;;; This file is part of GNU Guix. ;;; @@ -72,6 +73,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 +1843,82 @@ 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 + #:configure-flags + (list + "-DCMAKE_BUILD_TYPE=Release" + "-DCMAKE_CXX_FLAGS=-fpermissive") + #: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 [-- Attachment #3: Type: text/plain, Size: 868 bytes --] Sorry for the mess, Nicolò help-debbugs@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@gnu.org > > If you wish to submit further information on this problem, please > send it to 39619@debbugs.gnu.org. > > Please do not send mail to help-debbugs@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@gnu.org with problems ^ permalink raw reply related [flat|nested] 14+ messages in thread
* [bug#39619] [v2] Re: bug#39619: Acknowledgement ([PATCH 0/4] Add nheko matrix client) [not found] ` <handler.39619.B.158180183921379.ack@debbugs.gnu.org> 2020-02-15 21:30 ` [bug#39619] [PATCH 1/4] gnu: Add mtxclient nixo 2020-02-16 0:09 ` [bug#39619] Acknowledgement ([PATCH 0/4] Add nheko matrix client) Nicolò Balzarotti @ 2020-02-18 9:22 ` Nicolò Balzarotti 2020-02-21 16:58 ` Nicolas Goaziou 2 siblings, 1 reply; 14+ messages in thread From: Nicolò Balzarotti @ 2020-02-18 9:22 UTC (permalink / raw) To: 39619 [-- Attachment #1: Type: text/plain, Size: 123 bytes --] I just noticed that nlohmann-json-cpp is deprecated for json-modern-cxx, fixed it in the two patches that were using it. [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #2: 0001-gnu-Add-mtxclient.patch --] [-- Type: text/x-patch, Size: 3723 bytes --] From 6cc03e66a8a6eec796a1ee89f163fd3ad255d203 Mon Sep 17 00:00:00 2001 From: nixo <nicolo@nixo.xyz> Date: Sat, 15 Feb 2020 20:43:44 +0100 Subject: [PATCH 1/4] gnu: Add mtxclient. * 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..ab590518e3 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) + ("json-modern-cxx" ,json-modern-cxx) + ("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 [-- Attachment #3: 0004-gnu-Add-nheko.patch --] [-- Type: text/x-patch, Size: 4096 bytes --] From 2736484eae06b069d0e7e0688f8be412a045f32d Mon Sep 17 00:00:00 2001 From: nixo <nicolo@nixo.xyz> Date: Sat, 15 Feb 2020 21:08:12 +0100 Subject: [PATCH 4/4] gnu: Add nheko. * gnu/packages/messaging.scm (nheko): New variable. --- gnu/packages/messaging.scm | 78 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index ab590518e3..b514a971df 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -18,6 +18,7 @@ ;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org> ;;; Copyright © 2019, 2020 Brett Gilio <brettg@gnu.org> ;;; Copyright © 2019, 2020 Timotej Lazar <timotej.lazar@araneo.si> +;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz> ;;; ;;; This file is part of GNU Guix. ;;; @@ -72,6 +73,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 +1843,82 @@ 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 + #:configure-flags + (list + "-DCMAKE_BUILD_TYPE=Release" + "-DCMAKE_CXX_FLAGS=-fpermissive") + #: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) + ("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))) + (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 [-- Attachment #4: Type: text/plain, Size: 855 bytes --] Thanks, Nicolò help-debbugs@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@gnu.org > > If you wish to submit further information on this problem, please > send it to 39619@debbugs.gnu.org. > > Please do not send mail to help-debbugs@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@gnu.org with problems ^ permalink raw reply related [flat|nested] 14+ messages in thread
* [bug#39619] [v2] Re: bug#39619: Acknowledgement ([PATCH 0/4] Add nheko matrix client) 2020-02-18 9:22 ` [bug#39619] [v2] Re: bug#39619: " Nicolò Balzarotti @ 2020-02-21 16:58 ` Nicolas Goaziou 2020-02-21 21:57 ` Nicolò Balzarotti 0 siblings, 1 reply; 14+ messages in thread From: Nicolas Goaziou @ 2020-02-21 16:58 UTC (permalink / raw) To: Nicolò Balzarotti; +Cc: 39619 Hello, Nicolò Balzarotti <anothersms@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 ^ permalink raw reply [flat|nested] 14+ messages in thread
* [bug#39619] [v2] Re: bug#39619: Acknowledgement ([PATCH 0/4] Add nheko matrix client) 2020-02-21 16:58 ` Nicolas Goaziou @ 2020-02-21 21:57 ` Nicolò Balzarotti 2020-02-22 23:48 ` bug#39619: " Nicolas Goaziou 0 siblings, 1 reply; 14+ messages in thread From: Nicolò Balzarotti @ 2020-02-21 21:57 UTC (permalink / raw) To: Nicolas Goaziou; +Cc: 39619 [-- Attachment #1: Type: text/plain, Size: 4997 bytes --] Nicolas Goaziou <mail@nicolasgoaziou.fr> writes: Hi, > Hello, > > Nicolò Balzarotti <anothersms@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) [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #2: 0001-gnu-Add-mtxclient.patch --] [-- Type: text/x-patch, Size: 3132 bytes --] From 804536593ad1b4ecb93db92656e821837cc24754 Mon Sep 17 00:00:00 2001 From: nixo <nicolo@nixo.xyz> Date: Sat, 15 Feb 2020 20:43:44 +0100 Subject: [PATCH 1/4] gnu: Add mtxclient. * gnu/packages/messaging.scm (mtxclient): New variable. --- gnu/packages/messaging.scm | 52 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 120daacdc6..df80168d7c 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,56 @@ 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|ClientAPI|MediaAPI|Encryption]") + "# 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 + `(("boost" ,boost) + ("json-modern-cxx" ,json-modern-cxx) + ("libolm" ,libolm) + ("libsodium" ,libsodium) + ("openssl" ,openssl) + ("spdlog" ,spdlog) + ("zlib" ,zlib))) + (native-inputs + `(("googletest" ,googletest) + ("pkg-config" ,pkg-config))) + (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 is built on to of @code{Boost.Asio}.") + (license license:expat))) + (define-public quaternion (package (name "quaternion") -- 2.25.0 [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #3: 0002-gnu-Add-tweeny.patch --] [-- Type: text/x-patch, Size: 2019 bytes --] From f4529478acdbc6a139d952666ef732f4dbb21041 Mon Sep 17 00:00:00 2001 From: nixo <nicolo@nixo.xyz> Date: Sat, 15 Feb 2020 20:59:10 +0100 Subject: [PATCH 2/4] gnu: Add tweeny. * 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 [-- Attachment #4: 0003-gnu-Add-lmdbxx.patch --] [-- Type: text/x-patch, Size: 1953 bytes --] From d4c9c7f3239a38c7ad24a7af72b452506718fc73 Mon Sep 17 00:00:00 2001 From: nixo <nicolo@nixo.xyz> Date: Sat, 15 Feb 2020 21:04:07 +0100 Subject: [PATCH 3/4] gnu: Add lmdbxx. * gnu/packages/databases.scm (lmdbxx): New variable. --- gnu/packages/databases.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 587d993918..5f7377636f 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)))) + (build-system gnu-build-system) + (inputs `(("lmdb" ,lmdb))) + (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") -- 2.25.0 [-- Attachment #5: 0004-gnu-Add-nheko.patch --] [-- Type: text/x-patch, Size: 3933 bytes --] From 38ac0d6fe76c2202118dd6499110974062ff7232 Mon Sep 17 00:00:00 2001 From: nixo <nicolo@nixo.xyz> Date: Sat, 15 Feb 2020 21:08:12 +0100 Subject: [PATCH 4/4] gnu: Add nheko. * gnu/packages/messaging.scm (nheko): New variable. --- gnu/packages/messaging.scm | 76 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index df80168d7c..9e665fb08c 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -18,6 +18,7 @@ ;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org> ;;; Copyright © 2019, 2020 Brett Gilio <brettg@gnu.org> ;;; Copyright © 2019, 2020 Timotej Lazar <timotej.lazar@araneo.si> +;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz> ;;; ;;; This file is part of GNU Guix. ;;; @@ -72,6 +73,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) @@ -1839,6 +1841,80 @@ QMatrixClient project.") for the Matrix protocol. It is 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 + #:configure-flags + (list + "-DCMAKE_BUILD_TYPE=Release" + "-DCMAKE_CXX_FLAGS=-fpermissive") + #: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))))) + (build-system qt-build-system) + (inputs + `(("boost" ,boost) + ("cmark" ,cmark) + ("json-modern-cxx" ,json-modern-cxx) + ("libolm" ,libolm) + ("lmdb" ,lmdb) + ("lmdbxx" ,lmdbxx) + ("mtxclient" ,mtxclient) + ("openssl" ,openssl) + ("qtbase" ,qtbase) + ("qtsvg" ,qtsvg) + ("qtmultimedia" ,qtmultimedia) + ("spdlog" ,spdlog) + ("tweeny" ,tweeny) + ("zlib" ,zlib))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("qtlinguist" ,qttools))) + (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. + +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") + (license license:gpl3+))) + (define-public quaternion (package (name "quaternion") -- 2.25.0 [-- Attachment #6: Type: text/plain, Size: 67 bytes --] Thanks, Nicolò > > Regards, > > -- > Nicolas Goaziou ^ permalink raw reply related [flat|nested] 14+ messages in thread
* bug#39619: [v2] Re: bug#39619: Acknowledgement ([PATCH 0/4] Add nheko matrix client) 2020-02-21 21:57 ` Nicolò Balzarotti @ 2020-02-22 23:48 ` Nicolas Goaziou 0 siblings, 0 replies; 14+ messages in thread From: Nicolas Goaziou @ 2020-02-22 23:48 UTC (permalink / raw) To: Nicolò Balzarotti; +Cc: 39619-done Hello, Nicolò Balzarotti <anothersms@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 ^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2020-02-22 23:49 UTC | newest] Thread overview: 14+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2020-02-15 21:23 [bug#39619] [PATCH 0/4] Add nheko matrix client nixo [not found] ` <handler.39619.B.158180183921379.ack@debbugs.gnu.org> 2020-02-15 21:30 ` [bug#39619] [PATCH 1/4] gnu: Add mtxclient nixo 2020-02-15 21:30 ` [bug#39619] [PATCH 2/4] gnu: Add tweeny nixo [not found] ` <handler.39621.B.158180225922123.ack@debbugs.gnu.org> 2020-02-15 21:34 ` bug#39621: Acknowledgement ([PATCH 2/4] gnu: Add tweeny.) Nicolò Balzarotti 2020-02-15 21:30 ` [bug#39622] [PATCH 3/4] gnu: Add lmdbxx nixo [not found] ` <handler.39622.B.158180225922130.ack@debbugs.gnu.org> 2020-02-15 21:34 ` bug#39622: Acknowledgement ([PATCH 3/4] gnu: Add lmdbxx.) Nicolò Balzarotti 2020-02-15 21:30 ` [bug#39623] [PATCH 4/4] gnu: Add nheko nixo [not found] ` <handler.39623.B.158180226322189.ack@debbugs.gnu.org> 2020-02-15 21:34 ` bug#39623: Acknowledgement ([PATCH 4/4] gnu: Add nheko.) Nicolò Balzarotti [not found] ` <handler.39620.B.158180225622091.ack@debbugs.gnu.org> 2020-02-15 21:34 ` bug#39620: Acknowledgement ([PATCH 1/4] gnu: Add mtxclient.) Nicolò Balzarotti 2020-02-16 0:09 ` [bug#39619] Acknowledgement ([PATCH 0/4] Add nheko matrix client) Nicolò Balzarotti 2020-02-18 9:22 ` [bug#39619] [v2] Re: bug#39619: " Nicolò Balzarotti 2020-02-21 16:58 ` Nicolas Goaziou 2020-02-21 21:57 ` Nicolò Balzarotti 2020-02-22 23:48 ` bug#39619: " Nicolas Goaziou
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/guix.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).