GNU bug report logs - #70634
[PATCH] gnu: Add biboumi.

Previous Next

Package: guix-patches;

Reported by: Wilko Meyer <w <at> wmeyer.eu>

Date: Sun, 28 Apr 2024 19:14:02 UTC

Severity: normal

Tags: patch

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 70634 in the body.
You can then email your comments to 70634 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#70634; Package guix-patches. (Sun, 28 Apr 2024 19:14:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Wilko Meyer <w <at> wmeyer.eu>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Sun, 28 Apr 2024 19:14:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Wilko Meyer <w <at> wmeyer.eu>
To: guix-patches <at> gnu.org
Cc: Wilko Meyer <w <at> wmeyer.eu>
Subject: [PATCH] gnu: Add biboumi.
Date: Sun, 28 Apr 2024 21:11:30 +0200
* gnu/packages/messaging.scm (biboumi): New variable.
* gnu/packages/messaging.scm: Add copyright.
* gnu/packages/patches/biboumi-cmake-ignore-git.patch: New patch.

Change-Id: Ibb2bcadc8f64cbda3a0dbfe8ef5a931c52052658
---

Hi Guix,

This patch series adds biboumi, a IRC<->XMPP gateway daemon. It also
contains a patch the biboumi debian package maintainers apply on their
biboumi package that removes louiz/Catch as a external project
dependency from CMakeLists.txt. I considered packaging louiz/Catch,
but the repository containing it seems to be gone.

There's one optional dependency not packaged for guix, udns, the
project homepage seems unavailable as well, even though the source
code is still up[0]. As it's not needed to operate biboumi and only
has a performance impact according to biboumis docs:

#+BEGIN_QUOTE
Asynchronously resolve domain names. This offers better reactivity and
performances when connecting to a big number of IRC servers at the
same time.
#+END_QUOTE

I'll leave it out for now. Tests are disabled for now as they seem to
depend on louiz/Catch as well as network.

As I yet have to migrate my prosody instance to guix I am currently
unable to test biboumi any further than verifying that it builds
succesfully.

[0]: https://github.com/ortclib/udns
[1]: https://doc.biboumi.louiz.org/install.html#libraries

 gnu/packages/messaging.scm                    | 44 ++++++++++++++++++
 .../patches/biboumi-cmake-ignore-git.patch    | 45 +++++++++++++++++++
 2 files changed, 89 insertions(+)
 create mode 100644 gnu/packages/patches/biboumi-cmake-ignore-git.patch

diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index 20bdb713b5..f178eafd9b 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -41,6 +41,7 @@
 ;;; Copyright © 2023 Yovan Naumovski <yovan <at> gorski.stream>
 ;;; Copyright © 2023 gemmaro <gemmaro.dev <at> gmail.com>
 ;;; Copyright © 2024 Carlo Zancanaro <carlo <at> zancanaro.id.au>
+;;; Copyright © 2024 Wilko Meyer <w <at> wmeyer.eu>
 ;;;
 ;;; 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 <dr <at> jones.dk>
+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

base-commit: 8d29f416a9378d30f63c2a95f1bd1a420d9ccab4
prerequisite-patch-id: 455921dbaa6babc3a0f666eff8be41973ba1dad5
-- 
2.41.0





Reply sent to Ludovic Courtès <ludo <at> gnu.org>:
You have taken responsibility. (Fri, 31 May 2024 11:47:02 GMT) Full text and rfc822 format available.

Notification sent to Wilko Meyer <w <at> wmeyer.eu>:
bug acknowledged by developer. (Fri, 31 May 2024 11:47:02 GMT) Full text and rfc822 format available.

Message #10 received at 70634-done <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Wilko Meyer <w <at> wmeyer.eu>
Cc: 70634-done <at> debbugs.gnu.org
Subject: Re: [bug#70634] [PATCH] gnu: Add biboumi.
Date: Fri, 31 May 2024 13:45:53 +0200
Wilko Meyer <w <at> wmeyer.eu> skribis:

> * gnu/packages/messaging.scm (biboumi): New variable.
> * gnu/packages/messaging.scm: Add copyright.
> * gnu/packages/patches/biboumi-cmake-ignore-git.patch: New patch.
>
> Change-Id: Ibb2bcadc8f64cbda3a0dbfe8ef5a931c52052658

Hi!  I added the patch to ‘gnu/local.mk’ and applied it.

Thanks!

Ludo’.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sat, 29 Jun 2024 11:24:11 GMT) Full text and rfc822 format available.

This bug report was last modified 27 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.