diff --git a/gnu/local.mk b/gnu/local.mk index 188b471f6c..6934d5ccc7 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -990,6 +990,7 @@ dist_patch_DATA = \ %D%/packages/patches/bazaar-CVE-2017-14176.patch \ %D%/packages/patches/bc-fix-cross-compilation.patch \ %D%/packages/patches/bdb-5.3-atomics-on-gcc-9.patch \ + %D%/packages/patches/biboumi-cmake-ignore-git.patch \ %D%/packages/patches/brightnessctl-elogind-support.patch \ %D%/packages/patches/bsd-games-2.17-64bit.patch \ %D%/packages/patches/bsd-games-add-configure-config.patch \ diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 022f216934..e14536b957 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -41,6 +41,7 @@ ;;; Copyright © 2023 Yovan Naumovski ;;; Copyright © 2023 gemmaro ;;; Copyright © 2024 Carlo Zancanaro +;;; Copyright © 2024 Wilko Meyer ;;; ;;; This file is part of GNU Guix. ;;; @@ -163,6 +164,49 @@ (define-module (gnu packages messaging) #:use-module (guix packages) #:use-module (guix utils)) +(define-public biboumi + (package + (name "biboumi") + (version "9.0") + (source (origin + (method url-fetch) + (uri (string-append "https://git.louiz.org/biboumi/snapshot/biboumi-" + version ".tar.xz")) + (sha256 + (base32 "1jvygri165aknmvlinx3jb8cclny6cxdykjf8dp0a3l3228rmzqy")) + ;; see https://sources.debian.org/patches/biboumi/9.0-5/2001_cmake_ignore_git.patch/ + (patches (search-patches "biboumi-cmake-ignore-git.patch")))) + (arguments + ;; Tests seem to partially depend on networking as well as + ;; louiz/Catch which we remove as a dependency via the patch above as + ;; the repository seems dead. Deactivating those for now, possibly fix + ;; some of them later. + `(#:tests? #f + #:configure-flags '("-DWITHOUT_SYSTEMD=1") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-cmake-substitutions + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "CMakeLists.txt" + (("/etc") (string-append (assoc-ref outputs "out") "/etc")))))))) + (build-system cmake-build-system) + (inputs (list botan + expat + libiconv + libidn + openssl + postgresql ;; libpq + sqlite + ;; TODO: package optional dependency: udns + (list util-linux "lib") ;; libuuid + pkg-config)) + (home-page "https://biboumi.louiz.org") + (synopsis "Biboumi is a XMPP gateway that connects to IRC") + (description "Biboumi is a Free, Libre and Open Source XMPP gateway that connects to IRC +servers and translates between the two protocols. Its goal is to let XMPP +users take part in IRC discussions, using their favourite XMPP client.") + (license license:zlib))) + (define-public omemo-wget (package (name "omemo-wget") diff --git a/gnu/packages/patches/biboumi-cmake-ignore-git.patch b/gnu/packages/patches/biboumi-cmake-ignore-git.patch new file mode 100644 index 0000000000..cf9aa6c82d --- /dev/null +++ b/gnu/packages/patches/biboumi-cmake-ignore-git.patch @@ -0,0 +1,45 @@ +Description: Avoid cmake messing with git +Author: Jonas Smedegaard +Last-Update: 2016-12-21 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -288,27 +288,6 @@ + endforeach() + + # +-## Add a rule to download the catch unit test framework +-# +-include(ExternalProject) +-ExternalProject_Add(catch +- GIT_REPOSITORY "https://lab.louiz.org/louiz/Catch.git" +- PREFIX "external" +- UPDATE_COMMAND "" +- CONFIGURE_COMMAND "" +- BUILD_COMMAND "" +- INSTALL_COMMAND "" +- ) +-set_target_properties(catch PROPERTIES EXCLUDE_FROM_ALL TRUE) +-ExternalProject_Get_Property(catch SOURCE_DIR) +-if(NOT EXISTS ${CMAKE_SOURCE_DIR}/tests/catch.hpp) +- target_include_directories(test_suite +- PUBLIC "${SOURCE_DIR}/single_include/" +- ) +- add_dependencies(test_suite catch) +-endif() +- +-# + ## Add some custom rules to launch the tests + # + add_custom_target(check COMMAND "test_suite" +@@ -371,8 +350,7 @@ + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} + ) + add_custom_target(dist +- DEPENDS ${ARCHIVE_NAME}.tar.xz +- DEPENDS catch) ++ DEPENDS ${ARCHIVE_NAME}.tar.xz) + + add_custom_target(rpm + DEPENDS dist