gnu: nheko: Update to 0.8.2.
* gnu/packages/messaging.scm (nheko): Update to 0.8.2. [source snippet]: Remove third_party folder. [arguments]: Remove -fpermissive flag, remove remove-Werror phase, add phase wrap-program and unbundle-dependencies. [inputs]: Add gst-plugins-base, gst-plugins-bad, libnice, qtkeychain, and unbundle blurhash, cpp-httplib and single-application, remove tweeny. [native-inputs]: Add doxygen, graphviz used to build documentation. [description]: Simplify by removing the long list, add new features. (mtxclient): Update to 0.5.1. [arguments]: Remove set-home phase. * gnu/packages/databases.scm (lmdbxx): Update to 1.0.0. [source]: Change repository to a fork required by nheko. [home-page]: Update accordingly. Signed-off-by: Ludovic Courtès <ludo@gnu.org>master
parent
947b219ac5
commit
c017e0b62c
|
@ -39,7 +39,7 @@
|
||||||
;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
|
;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
|
||||||
;;; Copyright © 2019, 2021 Guillaume Le Vaillant <glv@posteo.net>
|
;;; Copyright © 2019, 2021 Guillaume Le Vaillant <glv@posteo.net>
|
||||||
;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz>
|
;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz>
|
||||||
;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz>
|
;;; Copyright © 2020, 2021 Nicolò Balzarotti <nicolo@nixo.xyz>
|
||||||
;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>
|
;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>
|
||||||
;;; Copyright © 2020 Lars-Dominik Braun <ldb@leibniz-psychology.org>
|
;;; Copyright © 2020 Lars-Dominik Braun <ldb@leibniz-psychology.org>
|
||||||
;;; Copyright © 2020 Guy Fleury Iteriteka <gfleury@disroot.org>
|
;;; Copyright © 2020 Guy Fleury Iteriteka <gfleury@disroot.org>
|
||||||
|
@ -2497,16 +2497,16 @@ virtual address space — not physical RAM.")
|
||||||
(define-public lmdbxx
|
(define-public lmdbxx
|
||||||
(package
|
(package
|
||||||
(name "lmdbxx")
|
(name "lmdbxx")
|
||||||
(version "0.9.14.0")
|
(version "1.0.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
(url "https://github.com/drycpp/lmdbxx")
|
(url "https://github.com/hoytech/lmdbxx")
|
||||||
(commit version)))
|
(commit version)))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1jmb9wg2iqag6ps3z71bh72ymbcjrb6clwlkgrqf1sy80qwvlsn6"))))
|
(base32 "12k5rz74d1l0skcks9apry1svkl96g9lf5dcgylgjmh7v1jm0b7c"))))
|
||||||
(arguments
|
(arguments
|
||||||
`(#:make-flags
|
`(#:make-flags
|
||||||
(list (string-append "PREFIX=" (assoc-ref %outputs "out")))
|
(list (string-append "PREFIX=" (assoc-ref %outputs "out")))
|
||||||
|
@ -2515,7 +2515,7 @@ virtual address space — not physical RAM.")
|
||||||
(delete 'configure))))
|
(delete 'configure))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(inputs `(("lmdb" ,lmdb)))
|
(inputs `(("lmdb" ,lmdb)))
|
||||||
(home-page "http://lmdbxx.sourceforge.net")
|
(home-page "https://github.com/hoytech/lmdbxx")
|
||||||
(synopsis "C++11 wrapper for the LMDB embedded B+ tree database library")
|
(synopsis "C++11 wrapper for the LMDB embedded B+ tree database library")
|
||||||
(description "@code{lmdbxx} is a comprehensive @code{C++} wrapper for the
|
(description "@code{lmdbxx} is a comprehensive @code{C++} wrapper for the
|
||||||
@code{LMDB} embedded database library, offering both an error-checked
|
@code{LMDB} embedded database library, offering both an error-checked
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
|
;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
|
||||||
;;; Copyright © 2019, 2020 Brett Gilio <brettg@gnu.org>
|
;;; Copyright © 2019, 2020 Brett Gilio <brettg@gnu.org>
|
||||||
;;; Copyright © 2019, 2020 Timotej Lazar <timotej.lazar@araneo.si>
|
;;; Copyright © 2019, 2020 Timotej Lazar <timotej.lazar@araneo.si>
|
||||||
;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz>
|
;;; Copyright © 2020, 2021 Nicolò Balzarotti <nicolo@nixo.xyz>
|
||||||
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
|
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
|
||||||
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
|
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
|
||||||
;;; Copyright © 2020 Reza Alizadeh Majd <r.majd@pantherx.org>
|
;;; Copyright © 2020 Reza Alizadeh Majd <r.majd@pantherx.org>
|
||||||
|
@ -2227,7 +2227,7 @@ QMatrixClient project.")
|
||||||
(define-public mtxclient
|
(define-public mtxclient
|
||||||
(package
|
(package
|
||||||
(name "mtxclient")
|
(name "mtxclient")
|
||||||
(version "0.3.1")
|
(version "0.5.1")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
|
@ -2236,7 +2236,7 @@ QMatrixClient project.")
|
||||||
(commit (string-append "v" version))))
|
(commit (string-append "v" version))))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1dg4dq20g0ah62j5s3gpsxqq4ny7lxkxdxa9q6g54hdwkrb9ms7x"))))
|
(base32 "1xznfx2bhw0ahwmkxm0rs05vz05ijk5k4190rj6qp3bvb9byiajh"))))
|
||||||
(arguments
|
(arguments
|
||||||
`(#:configure-flags
|
`(#:configure-flags
|
||||||
(list
|
(list
|
||||||
|
@ -2249,12 +2249,6 @@ QMatrixClient project.")
|
||||||
(substitute* "CMakeLists.txt"
|
(substitute* "CMakeLists.txt"
|
||||||
(("add_test\\((BasicConnectivity|ClientAPI|MediaAPI|Encryption|Pushrules)")
|
(("add_test\\((BasicConnectivity|ClientAPI|MediaAPI|Encryption|Pushrules)")
|
||||||
"# add_test"))
|
"# add_test"))
|
||||||
#t))
|
|
||||||
(add-before 'configure 'set-home
|
|
||||||
(lambda _
|
|
||||||
;; Tries to create package registry file
|
|
||||||
;; So, set HOME.
|
|
||||||
(setenv "HOME" "/tmp")
|
|
||||||
#t)))))
|
#t)))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(inputs
|
(inputs
|
||||||
|
@ -2277,7 +2271,7 @@ for the Matrix protocol. It is built on to of @code{Boost.Asio}.")
|
||||||
(define-public nheko
|
(define-public nheko
|
||||||
(package
|
(package
|
||||||
(name "nheko")
|
(name "nheko")
|
||||||
(version "0.7.2")
|
(version "0.8.2")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
|
@ -2286,30 +2280,60 @@ for the Matrix protocol. It is built on to of @code{Boost.Asio}.")
|
||||||
(commit (string-append "v" version))))
|
(commit (string-append "v" version))))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1cbhgaf9klgxdirrxj571fqwspm0byl75c1xc40l727a6qswvp7s"))))
|
(base32 "0362hkbprc6jqlgmvzwxyvify4b1ldjakyqdz55m25xsypbpv2f3"))
|
||||||
|
(modules '((guix build utils)))
|
||||||
|
(snippet
|
||||||
|
'(begin
|
||||||
|
(delete-file-recursively "third_party")))))
|
||||||
(arguments
|
(arguments
|
||||||
`(#:tests? #f ;no test target
|
`(#:tests? #f ;no test target
|
||||||
#:configure-flags
|
#:configure-flags
|
||||||
(list
|
'("-DCMAKE_BUILD_TYPE=Release"
|
||||||
"-DCMAKE_BUILD_TYPE=Release"
|
"-DBUILD_DOCS=ON"
|
||||||
"-DCMAKE_CXX_FLAGS=-fpermissive")
|
;; Fix required because we are using a static SingleApplication
|
||||||
|
"-DCMAKE_CXX_FLAGS= \"-DQAPPLICATION_CLASS=QApplication\" "
|
||||||
|
;; Compile Qml will make Nheko faster, but you will need to recompile
|
||||||
|
;; it, when you update Qt. That's fine for us.
|
||||||
|
"-DCOMPILE_QML=ON")
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'remove-Werror
|
(add-after 'unpack 'unbundle-dependencies
|
||||||
(lambda _
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
(substitute* "CMakeLists.txt"
|
(let ((single-app (assoc-ref inputs "single-application")))
|
||||||
(("-Werror") ""))
|
(substitute* "CMakeLists.txt"
|
||||||
#t))
|
;; Remove include and source dirs,replace with the correct one
|
||||||
|
(("third_party/blurhash/blurhash.cpp") "")
|
||||||
|
(("third_party/cpp-httplib-0.5.12")
|
||||||
|
(string-append "\"" single-app "/include\""))
|
||||||
|
(("add_subdirectory.*third_party/SingleApplication.*") "")
|
||||||
|
;; Link using the correct static/shared libs
|
||||||
|
(("SingleApplication::SingleApplication")
|
||||||
|
(string-append
|
||||||
|
;; Dynamic libraries
|
||||||
|
"httplib" "\n" "blurhash" "\n"
|
||||||
|
;; Static library
|
||||||
|
single-app "/lib/libSingleApplication.a"))))))
|
||||||
(add-after 'unpack 'fix-determinism
|
(add-after 'unpack 'fix-determinism
|
||||||
(lambda _
|
(lambda _
|
||||||
;; Make Qt deterministic.
|
;; Make Qt deterministic.
|
||||||
(setenv "QT_RCC_SOURCE_DATE_OVERRIDE" "1")
|
(setenv "QT_RCC_SOURCE_DATE_OVERRIDE" "1")))
|
||||||
#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)))))))))
|
||||||
(build-system qt-build-system)
|
(build-system qt-build-system)
|
||||||
(inputs
|
(inputs
|
||||||
`(("boost" ,boost)
|
`(("boost" ,boost)
|
||||||
|
("blurhash" ,blurhash)
|
||||||
|
("cpp-httplib" ,cpp-httplib)
|
||||||
("cmark" ,cmark)
|
("cmark" ,cmark)
|
||||||
|
("gst-plugins-base" ,gst-plugins-base)
|
||||||
|
("gst-plugins-bad" ,gst-plugins-bad) ; sdp & webrtc for voip
|
||||||
|
("gst-plugins-good" ,gst-plugins-good) ; rtpmanager for voip
|
||||||
("json-modern-cxx" ,json-modern-cxx)
|
("json-modern-cxx" ,json-modern-cxx)
|
||||||
|
("libnice" ,libnice) ; for voip
|
||||||
("libolm" ,libolm)
|
("libolm" ,libolm)
|
||||||
("lmdb" ,lmdb)
|
("lmdb" ,lmdb)
|
||||||
("lmdbxx" ,lmdbxx)
|
("lmdbxx" ,lmdbxx)
|
||||||
|
@ -2317,15 +2341,18 @@ for the Matrix protocol. It is built on to of @code{Boost.Asio}.")
|
||||||
("openssl" ,openssl)
|
("openssl" ,openssl)
|
||||||
("qtbase" ,qtbase-5)
|
("qtbase" ,qtbase-5)
|
||||||
("qtdeclarative" ,qtdeclarative)
|
("qtdeclarative" ,qtdeclarative)
|
||||||
|
("qtkeychain" ,qtkeychain)
|
||||||
("qtgraphicaleffects" ,qtgraphicaleffects)
|
("qtgraphicaleffects" ,qtgraphicaleffects)
|
||||||
("qtmultimedia" ,qtmultimedia)
|
("qtmultimedia" ,qtmultimedia)
|
||||||
("qtquickcontrols2" ,qtquickcontrols2)
|
("qtquickcontrols2" ,qtquickcontrols2)
|
||||||
("qtsvg" ,qtsvg)
|
("qtsvg" ,qtsvg)
|
||||||
("spdlog" ,spdlog)
|
("spdlog" ,spdlog)
|
||||||
("tweeny" ,tweeny)
|
("single-application" ,single-application-qt5)
|
||||||
("zlib" ,zlib)))
|
("zlib" ,zlib)))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("pkg-config" ,pkg-config)
|
`(("doxygen" ,doxygen)
|
||||||
|
("graphviz" ,graphviz)
|
||||||
|
("pkg-config" ,pkg-config)
|
||||||
("qtlinguist" ,qttools)))
|
("qtlinguist" ,qttools)))
|
||||||
(home-page "https://github.com/Nheko-Reborn/nheko")
|
(home-page "https://github.com/Nheko-Reborn/nheko")
|
||||||
(synopsis "Desktop client for Matrix using Qt and C++14")
|
(synopsis "Desktop client for Matrix using Qt and C++14")
|
||||||
|
@ -2333,22 +2360,8 @@ for the Matrix protocol. It is built on to of @code{Boost.Asio}.")
|
||||||
Matrix protocol that feels more like a mainstream chat app and less like an IRC
|
Matrix protocol that feels more like a mainstream chat app and less like an IRC
|
||||||
client.
|
client.
|
||||||
|
|
||||||
There is support for:
|
Many matrix features are supported, including user registration, rooms, typing
|
||||||
@itemize
|
notification, emojis, E2E encryption, and voip calls.")
|
||||||
@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+)))
|
(license license:gpl3+)))
|
||||||
|
|
||||||
(define-public quaternion
|
(define-public quaternion
|
||||||
|
|
Reference in New Issue