--- Begin Message ---
Subject: |
mtxclient -> 0.4.1 Nheko -> 0.8.1 |
Date: |
Fri, 19 Mar 2021 19:22:43 -0600 (MDT) |
Hello,
I do not know my way around git so I am offering this code to someone if they
want to add it to guix proper. There were only slight changes needed.
Both packages built and ran for me.
(define-public mtxclient
(package
(name "mtxclient")
(version "0.4.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Nheko-Reborn/mtxclient")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1044zil3izhb3whhfjah7w0kg5mr3hys32cjffky681d3mb3wi5n"))))
(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|Pushrules)")
"# add_test"))
#t))
(add-before 'configure 'set-home
(lambda _
;; Tries to create package registry file
;; So, set HOME.
(setenv "HOME" "/tmp")
#t)))))
(build-system cmake-build-system)
(inputs
`(("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 nheko
(package
(name "nheko")
(version "0.8.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Nheko-Reborn/nheko")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1v7k3ifzi05fdr06hmws1wkfl1bmhrnam3dbwahp086vkj0r8524"))))
(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-new" ,mtxclient-new)
("openssl" ,openssl)
("qtbase" ,qtbase)
("qtdeclarative" ,qtdeclarative)
("qtgraphicaleffects" ,qtgraphicaleffects)
("qtkeychain" ,qtkeychain)
("qtmultimedia" ,qtmultimedia)
("qtquickcontrols2" ,qtquickcontrols2)
("qtsvg" ,qtsvg)
("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+)))
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#46012: Upgrade Nheko |
Date: |
Fri, 03 Sep 2021 22:07:23 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) |
Hi Nicolò,
Nicolò Balzarotti <anothersms@gmail.com> skribis:
>>From 5ea66aa57f81976d39c60f59357ddf6027fadabb Mon Sep 17 00:00:00 2001
> From: nixo <nicolo@nixo.xyz>
> Date: Wed, 27 Jan 2021 23:44:04 +0100
> Subject: [PATCH v5 1/4] gnu: Add cpp-httplib.
>
> * gnu/packages/cpp.scm (cpp-httplib): New variable.
[...]
>>From f2982d9f3a8f6fcf66950ed78259125f3750ca08 Mon Sep 17 00:00:00 2001
> From: nixo <nicolo@nixo.xyz>
> Date: Wed, 20 Jan 2021 17:56:04 +0100
> Subject: [PATCH v5 2/4] gnu: Add blurhash.
>
> * gnu/packages/image.scm (blurhash): New variable.
[...]
>>From a709f28a8dacd890a46eb848bbf6b42efaa6a447 Mon Sep 17 00:00:00 2001
> From: nixo <nicolo@nixo.xyz>
> Date: Wed, 20 Jan 2021 19:23:17 +0100
> Subject: [PATCH v5 3/4] gnu: Add single-application-qt5.
>
> * gnu/packages/qt.scm (single-application-qt5): New variable.
[...]
>>From 2564b19691b0721407ee48f90de18353796278d0 Mon Sep 17 00:00:00 2001
> From: nixo <nicolo@nixo.xyz>
> Date: Wed, 27 Jan 2021 23:54:55 +0100
> Subject: [PATCH v5 4/4] 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.
I’m really sorry that it took 7 months (!), but I’ve now applied this
series. I had to tweak ‘single-application-qt5’ to adjust it to the
qtbase -> qtbase-5 rename, but that’s about it.
Thank you, and thanks Maxime for the review—much appreciated, as always!
Ludo’.
--- End Message ---