aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/jami.scm
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-07-25 16:46:42 -0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-07-31 21:55:50 -0400
commitccf6401d050ab90afba35d6491692338d84c9f4d (patch)
tree2ec26a6d38af7449c8d33e88d3b3690fea4d70b9 /gnu/packages/jami.scm
parentf80f1667f1fe199fe89202da29da056195ca301b (diff)
downloadguix-ccf6401d050ab90afba35d6491692338d84c9f4d.tar
guix-ccf6401d050ab90afba35d6491692338d84c9f4d.tar.gz
gnu: jami: Update to 20220726.1515.da8d1da.
* gnu/packages/jami.scm (jami): Update to 20220726.1515.da8d1da. [configure-flags]: New argument. [phases]{fix-version-string}: Adjust file name. {use-desktop-opengl}: Delete obsolete phase. {patch-source}: New phase. [native-inputs]: Add googletest and vulkan-headers. Replace qttools-5 with qttools. [inputs]: Add libxkbcommon, qt5compat, qtnetworkauth, qtpositioning and vulkan-loader. Remove qtwebengine-5, qtwebchannel-5, qtgraphicaleffects, qtquickcontrols-5 and qtquickcontrols2-5. Update qtsvg-5, qtmultimedia-5 and qtdeclarative-5 to their Qt 6 equivalent.
Diffstat (limited to 'gnu/packages/jami.scm')
-rw-r--r--gnu/packages/jami.scm91
1 files changed, 58 insertions, 33 deletions
diff --git a/gnu/packages/jami.scm b/gnu/packages/jami.scm
index f99cd2f14c..26afed0cc5 100644
--- a/gnu/packages/jami.scm
+++ b/gnu/packages/jami.scm
@@ -482,43 +482,68 @@ protocols, as well as decentralized calling using P2P-DHT.")
(build-system qt-build-system)
(outputs '("out" "debug"))
(arguments
- `(#:tests? #f ;no test suite
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'change-directory/maybe
- (lambda _
- ;; Allow building from the tarball or a git checkout.
- (false-if-exception (chdir "client-qt"))))
- (add-after 'change-directory/maybe 'fix-version-string
- (lambda _
- (substitute* "src/version.h"
- (("VERSION_STRING")
- "BUILD_DATE") ;to avoid a redefinition error
- (("// clang-format on.*" anchor)
- (string-append "const char VERSION_STRING[] = \""
- ,version "\";\n"
- anchor)))))
- (add-after 'change-directory/maybe 'use-desktop-opengl
- ;; TODO: Remove after next release; this is no longer specified in
- ;; the source following the update to Qt 6.
- (lambda _
- (substitute* "src/main.cpp"
- (("Qt::AA_UseOpenGLES")
- "Qt::AA_UseDesktopOpenGL")))))))
+ (list
+ #:qtbase qtbase
+ #:tests? #f ;see comment below
+ #:configure-flags
+ ;; The test suite fails to build with:
+ ;; "../../../client-qt/src/app/utils.h:29:10: fatal error: QLabel: No
+ ;; such file or directory".
+ #~(list "-DENABLE_TESTS=OFF"
+ "-DWITH_WEBENGINE=OFF" ;reduce transitive closure size by 450 MiB
+ ;; Use libwrap to link directly to libjami instead of
+ ;; communicating via D-Bus to jamid, the Jami daemon.
+ "-DENABLE_LIBWRAP=ON"
+ (string-append "-DLIBJAMI_XML_INTERFACES_DIR="
+ #$(this-package-input "libjami")
+ "/share/dbus-1/interfaces")
+ (string-append "-DLIBJAMI_INCLUDE_DIR="
+ #$(this-package-input "libjami") "/include/jami"))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'change-directory/maybe
+ (lambda _
+ ;; Allow building from the tarball or a git checkout.
+ (false-if-exception (chdir "client-qt"))))
+ (add-after 'change-directory/maybe 'fix-version-string
+ (lambda _
+ (substitute* "src/app/version.h"
+ (("VERSION_STRING")
+ "BUILD_DATE") ;to avoid a redefinition error
+ (("// clang-format on.*" anchor)
+ (string-append "const char VERSION_STRING[] = \""
+ #$version "\";\n"
+ anchor)))))
+ (add-after 'change-directory/maybe 'patch-source
+ (lambda _
+ (substitute* "src/libclient/CMakeLists.txt"
+ ;; Fix submitted upstream (see:
+ ;; https://review.jami.net/c/jami-client-qt/+/21830).
+ (("target_link_libraries\\(\\$\\{LIBCLIENT_NAME} qtwrapper.*" all)
+ (string-append
+ all " target_link_libraries(${LIBCLIENT_NAME} avutil)\n"))))))))
(native-inputs
- (list pkg-config python qttools-5 doxygen graphviz))
+ (list googletest
+ pkg-config
+ python
+ qttools
+ doxygen
+ graphviz
+ vulkan-headers))
(inputs
- (list libnotify
+ (list ffmpeg-jami
+ libjami
+ libnotify
+ libxkbcommon
network-manager
qrencode
- qtsvg-5
- qtwebengine-5
- qtwebchannel-5
- qtmultimedia-5
- qtdeclarative-5
- qtgraphicaleffects
- qtquickcontrols-5
- qtquickcontrols2-5))
+ qt5compat
+ qtdeclarative
+ qtmultimedia
+ qtnetworkauth
+ qtpositioning
+ qtsvg
+ vulkan-loader))
(home-page "https://jami.net")
(synopsis "Qt Jami client")
(description "This package provides the Jami Qt client. Jami is a secure