Gentoo Archives: gentoo-commits

From: Florian Schmaus <flow@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-im/biboumi/, net-im/biboumi/files/
Date: Tue, 01 Feb 2022 10:36:34
Message-Id: 1643711716.ceadc1716ca98100b76e0083d0dfae2d9bc6cfc1.flow@gentoo
1 commit: ceadc1716ca98100b76e0083d0dfae2d9bc6cfc1
2 Author: Florian Schmaus <flow <AT> gentoo <DOT> org>
3 AuthorDate: Tue Feb 1 10:35:01 2022 +0000
4 Commit: Florian Schmaus <flow <AT> gentoo <DOT> org>
5 CommitDate: Tue Feb 1 10:35:16 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ceadc171
7
8 net-im/biboumi: initial import
9
10 Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>
11
12 net-im/biboumi/Manifest | 1 +
13 net-im/biboumi/biboumi-9.0-r2.ebuild | 110 +++++++++++++++++++++++++++++++++
14 net-im/biboumi/files/biboumi.initd | 21 +++++++
15 net-im/biboumi/files/biboumi.logrotate | 10 +++
16 net-im/biboumi/metadata.xml | 21 +++++++
17 5 files changed, 163 insertions(+)
18
19 diff --git a/net-im/biboumi/Manifest b/net-im/biboumi/Manifest
20 new file mode 100644
21 index 000000000000..34c6c222de56
22 --- /dev/null
23 +++ b/net-im/biboumi/Manifest
24 @@ -0,0 +1 @@
25 +DIST biboumi-9.0.tar.xz 161192 BLAKE2B 27c19f5c44e23caae07bd579b01d663e73cd8b432203ac95ae77e651936eea7cc443f389e589acebe5b36c32e96f215fdf0a86c97193726d601b53b709a2d66e SHA512 cfaacd831b56031906922472275c55fd6f1a5307ebe54959d21e3799ad4612499e8beeb34e8736df9eabc9fec1a861d17567250d64f316ace47395fd6c8f3c18
26
27 diff --git a/net-im/biboumi/biboumi-9.0-r2.ebuild b/net-im/biboumi/biboumi-9.0-r2.ebuild
28 new file mode 100644
29 index 000000000000..4f571807cf7e
30 --- /dev/null
31 +++ b/net-im/biboumi/biboumi-9.0-r2.ebuild
32 @@ -0,0 +1,110 @@
33 +# Copyright 2020-2022 Gentoo Authors
34 +# Distributed under the terms of the GNU General Public License v2
35 +
36 +EAPI=8
37 +
38 +inherit cmake
39 +
40 +MY_PV="${PV/_/-}"
41 +
42 +DESCRIPTION="XMPP gateway to IRC"
43 +HOMEPAGE="https://biboumi.louiz.org/"
44 +SRC_URI="https://git.louiz.org/biboumi/snapshot/biboumi-${MY_PV}.tar.xz"
45 +
46 +LICENSE="ZLIB"
47 +SLOT="0"
48 +KEYWORDS="~amd64"
49 +IUSE="+idn postgres +sqlite +ssl systemd udns"
50 +
51 +DEPEND="
52 + dev-libs/expat
53 + virtual/libiconv
54 + sys-apps/util-linux
55 + sqlite? ( dev-db/sqlite:3 )
56 + postgres? ( dev-db/postgresql:* )
57 + idn? ( net-dns/libidn:= )
58 + udns? ( net-libs/udns )
59 + ssl? ( dev-libs/botan:2= )
60 + !ssl? ( dev-libs/libgcrypt )
61 + systemd? ( sys-apps/systemd:= )
62 +"
63 +BDEPEND="dev-python/sphinx"
64 +RDEPEND="
65 + ${DEPEND}
66 + acct-user/biboumi
67 +"
68 +
69 +S="${WORKDIR}/${PN}-${MY_PV}"
70 +
71 +DOCS=( README.rst CHANGELOG.rst doc/user.rst )
72 +
73 +src_configure() {
74 + local mycmakeargs=(
75 + -DSERVICE_USER="${PN}"
76 + -DSERVICE_GROUP="${PN}"
77 + )
78 +
79 + # Account for biboumi's atypical configuration system.
80 + if use systemd; then
81 + mycmakeargs+=(-DWITH_SYSTEMD=yes)
82 + else
83 + mycmakeargs+=(-DWITHOUT_SYSTEMD=yes)
84 + fi
85 +
86 + if use idn; then
87 + mycmakeargs+=(-DWITH_LIBIDN=yes)
88 + else
89 + mycmakeargs+=(-DWITHOUT_LIBIDN=yes)
90 + fi
91 +
92 + if use ssl; then
93 + mycmakeargs+=(-DWITH_BOTAN=yes)
94 + else
95 + mycmakeargs+=(-DWITHOUT_BOTAN=yes)
96 + fi
97 +
98 + if use udns; then
99 + mycmakeargs+=(-DWITH_UDNS=yes)
100 + else
101 + mycmakeargs+=(-DWITHOUT_UDNS=yes)
102 + fi
103 +
104 + if use sqlite; then
105 + mycmakeargs+=(-DWITH_SQLITE3=yes)
106 + else
107 + mycmakeargs+=(-DWITHOUT_SQLITE3=yes)
108 + fi
109 +
110 + if use postgres; then
111 + mycmakeargs+=(-DWITH_POSTGRESQL=yes)
112 + else
113 + mycmakeargs+=(-DWITHOUT_POSTGRESQL=yes)
114 + fi
115 +
116 + cmake_src_configure
117 +}
118 +
119 +src_compile() {
120 + cmake_src_compile
121 +
122 + cmake_build man
123 +}
124 +
125 +src_install() {
126 + cmake_src_install
127 +
128 + newinitd "${FILESDIR}/${PN}.initd" "${PN}"
129 +
130 + insinto /etc/logrotate.d
131 + newins "${FILESDIR}/${PN}.logrotate" "${PN}"
132 +
133 + diropts --owner=biboumi --group=biboumi --mode=750
134 + if use sqlite; then
135 + keepdir /var/lib/biboumi
136 + fi
137 + keepdir /var/log/biboumi
138 +
139 + insinto /etc/biboumi
140 + insopts --group=biboumi --mode=640
141 + newins conf/biboumi.cfg biboumi.cfg.example
142 +}
143
144 diff --git a/net-im/biboumi/files/biboumi.initd b/net-im/biboumi/files/biboumi.initd
145 new file mode 100644
146 index 000000000000..665db9120c9c
147 --- /dev/null
148 +++ b/net-im/biboumi/files/biboumi.initd
149 @@ -0,0 +1,21 @@
150 +#!/sbin/openrc-run
151 +# Copyright 1999-2020 Gentoo Authors
152 +# Distributed under the terms of the GNU General Public License v2
153 +
154 +description="XMPP gateway to IRC"
155 +pidfile="/var/run/biboumi.pid"
156 +command="/usr/bin/biboumi"
157 +command_args="${BIBOUMI_CONFIG:-/etc/biboumi/biboumi.cfg}"
158 +command_user="${BIBOUMI_USER:-biboumi}"
159 +command_background="true"
160 +extra_commands="reload"
161 +
162 +depend() {
163 + use jabber-server
164 +}
165 +
166 +reload() {
167 + ebegin "Reloading configuration of Biboumi"
168 + start-stop-daemon --pidfile ${pidfile} --signal USR1
169 + eend $?
170 +}
171
172 diff --git a/net-im/biboumi/files/biboumi.logrotate b/net-im/biboumi/files/biboumi.logrotate
173 new file mode 100644
174 index 000000000000..19964cf60f3f
175 --- /dev/null
176 +++ b/net-im/biboumi/files/biboumi.logrotate
177 @@ -0,0 +1,10 @@
178 +/var/log/biboumi/*.log {
179 + missingok
180 + notifempty
181 + sharedscripts
182 + postrotate
183 + for service in /etc/init.d/biboumi*; do
184 + rc-service $(basename ${service}) reload > /dev/null
185 + done
186 + endscript
187 +}
188
189 diff --git a/net-im/biboumi/metadata.xml b/net-im/biboumi/metadata.xml
190 new file mode 100644
191 index 000000000000..cbe709768d65
192 --- /dev/null
193 +++ b/net-im/biboumi/metadata.xml
194 @@ -0,0 +1,21 @@
195 +<?xml version="1.0" encoding="UTF-8"?>
196 +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
197 +<pkgmetadata>
198 + <maintainer type="person">
199 + <name>Florian Schmaus</name>
200 + <email>flow@g.o</email>
201 + </maintainer>
202 + <longdescription lang="en">
203 + Biboumi is an XMPP gateway that connects to IRC servers and translates
204 + between the two protocols. It can be used to access IRC channels using
205 + any XMPP client as if these channels were XMPP MUCs.
206 + </longdescription>
207 + <upstream>
208 + <doc>https://doc.biboumi.louiz.org/</doc>
209 + <bugs-to> https://lab.louiz.org/louiz/biboumi/-/issues</bugs-to>
210 + </upstream>
211 + <use>
212 + <flag name="udns">Asynchronously resolve domain names using
213 + net-libs/udns</flag>
214 + </use>
215 +</pkgmetadata>