%global commit bf958d0e34e7d8a39dccfcf3c64f72ef0db41f73 %global shortcommit %(c=%{commit}; echo ${c:0:10}) %global commitdate 20260113 Name: biboumi Version: 9.0^%{commitdate}git%{shortcommit} Release: %{autorelease} Summary: IRC gateway for XMPP License: ZLIB URL: https://codeberg.org/poezio/biboumi Source: https://codeberg.org/poezio/biboumi/archive/%{commit}.tar.gz#/biboumi-%{shortcommit}.tar.gz # Put service file in correct location # https://codeberg.org/poezio/biboumi/pulls/3541 Patch: 3541.patch BuildRequires: botan3-devel BuildRequires: cmake BuildRequires: gcc-c++ BuildRequires: glibc-devel BuildRequires: expat-devel BuildRequires: libgcrypt-devel BuildRequires: libidn-devel BuildRequires: libuuid-devel BuildRequires: libpq-devel BuildRequires: postgresql-devel BuildRequires: sqlite-devel BuildRequires: systemd-devel BuildRequires: udns-devel # Documentation BuildRequires: python3dist(docutils) BuildRequires: python3dist(sphinx) BuildRequires: python3-sphinx_rtd_theme BuildRequires: texinfo # Tests BuildRequires: catch-devel Requires: systemd %description Biboumi is an XMPP gateway that connects to IRC servers and translates between the two protocols. It can be used to access IRC channels using any XMPP client as if these channels were XMPP MUCs. It is written in modern C++14 and makes great efforts to have as little dependencies and to be as simple as possible. The goal is to provide a way to access most of IRC features using any XMPP client. It doesn’t however try to provide a complete mapping of the features of both worlds simply because this is not useful and most probably impossible. For example all IRC modes are not all translatable into an XMPP features. Some of them are (like +m (mute) or +o (operator) modes), but some others are IRC-specific. If IRC is the limiting factor (for example you cannot have a non-ASCII nickname on IRC) then biboumi doesn’t try to work around this issue: it just enforces the rules of the IRC server by telling the user that he/she must choose an ASCII-only nickname. An important goal is to keep the software (and its code) light and simple. %prep %autosetup -p1 -n biboumi %build %cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DSERVICE_GROUP=biboumi \ -DSERVICE_USER=nobody \ -DWITH_BOTAN=1 %cmake_build # Build tests pushd %_vpath_builddir make popd # Build documentation pushd doc sphinx-build . texinfo -b texinfo make man pushd texinfo makeinfo --docbook biboumi.texi popd popd %install %cmake_install mkdir -p %{buildroot}%{_mandir}/man1 install -m644 doc/_build/man/biboumi.1 %{buildroot}%{_mandir}/man1 mkdir -p %{buildroot}%{_datadir}/help/en/biboumi install -m644 doc/texinfo/biboumi.xml %{buildroot}%{_datadir}/help/en/biboumi %check pushd %_vpath_builddir make check popd %files %license COPYING %doc README.rst %{_bindir}/biboumi %dir %{_sysconfdir}/biboumi %{_sysconfdir}/biboumi/irc.gimp.org.policy.txt %{_sysconfdir}/biboumi/policy.txt %{_prefix}/lib/systemd/system/biboumi.service %{_mandir}/man1/biboumi.1* %dir %{_datadir}/help/en/ %lang(en) %{_datadir}/help/en/biboumi %changelog %autochangelog