net-im/bitlbee: version bump to 3.6
authorTim Harder <radhermit@gentoo.org>
Sun, 10 Feb 2019 04:41:45 +0000 (22:41 -0600)
committerTim Harder <radhermit@gentoo.org>
Sun, 10 Feb 2019 04:46:03 +0000 (22:46 -0600)
Also, simplify the init script.

Bug: https://bugs.gentoo.org/631072
Closes: https://bugs.gentoo.org/640126

Signed-off-by: Tim Harder <radhermit@gentoo.org>
net-im/bitlbee/Manifest
net-im/bitlbee/bitlbee-3.6.ebuild [new file with mode: 0644]
net-im/bitlbee/bitlbee-9999.ebuild
net-im/bitlbee/files/bitlbee.confd-r2 [new file with mode: 0644]
net-im/bitlbee/files/bitlbee.initd-r2 [new file with mode: 0644]

index 3176cc89495eca8d693043944f64e469f2fcdc07..89d1716f8e66016809eef0ef1ec8382b316518a5 100644 (file)
@@ -1 +1,2 @@
 DIST bitlbee-3.5.1.tar.gz 680351 BLAKE2B 952a12975d4f95020a5b577603aea791fca754006dc96af3c500d3885b6f2c50cabe51ab698625acb717524a729ef03d18a29aa25bd4815bae2f18fa6298aeea SHA512 4eb3b0d3a92910c8dd789cd23338cc6296bf40212c5244fcb27a88ede10e86424ea59c78e719841863701a7fdd8c61819f2775f7b58833e287d9110e49d036f3
+DIST bitlbee-3.6.tar.gz 534961 BLAKE2B 007681a384fcb2c0736b901dfdc213ba0829ca006ad3204aca1bc4520a3874760867df6165a9218a9deeabb13bc06f118c9e2f804a97e671a348734f6cb7e963 SHA512 ccbf0f23e228de2de147241f36f59744b2256cba958e2fabfba0cfa60935e55bbb7d7e20fffa54da9a345e55ffa9ca82cb62e9b99dc738ba35c6e268c6561a8d
diff --git a/net-im/bitlbee/bitlbee-3.6.ebuild b/net-im/bitlbee/bitlbee-3.6.ebuild
new file mode 100644 (file)
index 0000000..703647a
--- /dev/null
@@ -0,0 +1,149 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit user systemd toolchain-funcs
+
+if [[ ${PV} == "9999" ]]; then
+       EGIT_REPO_URI="https://github.com/bitlbee/bitlbee.git"
+       inherit git-r3
+else
+       SRC_URI="https://get.bitlbee.org/src/${P}.tar.gz"
+       KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~x86-fbsd"
+fi
+
+DESCRIPTION="irc to IM gateway that support multiple IM protocols"
+HOMEPAGE="https://www.bitlbee.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE_PROTOCOLS="msn oscar purple twitter +xmpp"
+IUSE="debug +gnutls ipv6 libevent libressl nss otr +plugins selinux test xinetd
+       ${IUSE_PROTOCOLS}"
+
+REQUIRED_USE="
+       || ( purple xmpp msn oscar )
+       xmpp? ( !nss )
+       test? ( plugins )
+"
+
+COMMON_DEPEND="
+       >=dev-libs/glib-2.16
+       purple? ( net-im/pidgin )
+       libevent? ( dev-libs/libevent:= )
+       otr? ( >=net-libs/libotr-4 )
+       gnutls? ( net-libs/gnutls:= )
+       !gnutls? (
+               nss? ( dev-libs/nss )
+               !nss? (
+                       libressl? ( dev-libs/libressl:= )
+                       !libressl? ( dev-libs/openssl:0= )
+               )
+       )
+"
+DEPEND="${COMMON_DEPEND}
+       virtual/pkgconfig
+       selinux? ( sec-policy/selinux-bitlbee )
+       test? ( dev-libs/check )"
+
+RDEPEND="${COMMON_DEPEND}
+       xinetd? ( sys-apps/xinetd )"
+
+pkg_setup() {
+       enewgroup bitlbee
+       enewuser bitlbee -1 -1 /var/lib/bitlbee bitlbee
+}
+
+src_prepare() {
+       [[ ${PV} != "9999" ]] && eapply "${FILESDIR}"/${PN}-3.5-systemd-user.patch
+       eapply_user
+}
+
+src_configure() {
+       local myconf
+
+       # setup plugins, protocol, ipv6 and debug
+       myconf+=( --jabber=$(usex xmpp 1 0) )
+       for flag in debug ipv6 plugins ${IUSE_PROTOCOLS/+xmpp/} ; do
+               myconf+=( --${flag}=$(usex ${flag} 1 0) )
+       done
+
+       # set otr
+       if use otr && use plugins ; then
+               myconf+=( --otr=plugin )
+       else
+               if use otr ; then
+                       ewarn "OTR support has been disabled automatically because it"
+                       ewarn "requires the plugins USE flag."
+               fi
+               myconf+=( --otr=0 )
+       fi
+
+       # setup ssl use flags
+       if use gnutls ; then
+               myconf+=( --ssl=gnutls )
+               einfo "Using gnutls for SSL support"
+       else
+               ewarn "Only gnutls is officially supported by upstream."
+               if use nss ; then
+                       myconf+=( --ssl=nss )
+                       einfo "Using nss for SSL support"
+               else
+                       myconf+=( --ssl=openssl )
+                       einfo "Using openssl for SSL support"
+               fi
+       fi
+
+       # set event handler
+       if use libevent ; then
+               myconf+=( --events=libevent )
+       else
+               myconf+=( --events=glib )
+       fi
+
+       # not autotools-based
+       ./configure \
+               --prefix=/usr \
+               --datadir=/usr/share/bitlbee \
+               --etcdir=/etc/bitlbee \
+               --plugindir=/usr/$(get_libdir)/bitlbee \
+               --systemdsystemunitdir=$(systemd_get_systemunitdir) \
+               --doc=1 \
+               --strip=0 \
+               --verbose=1 \
+               "${myconf[@]}" || die
+
+       sed -i \
+               -e "/^EFLAGS/s:=:&${LDFLAGS} :" \
+               Makefile.settings || die
+}
+
+src_compile() {
+       emake CC="$(tc-getCC)" LD="$(tc-getLD)"
+}
+
+src_install() {
+       emake DESTDIR="${D}" install install-etc install-doc install-dev install-systemd
+
+       keepdir /var/lib/bitlbee
+       fperms 700 /var/lib/bitlbee
+       fowners bitlbee:bitlbee /var/lib/bitlbee
+
+       dodoc doc/{AUTHORS,CHANGES,CREDITS,FAQ,README}
+
+       if use xinetd ; then
+               insinto /etc/xinetd.d
+               newins doc/bitlbee.xinetd bitlbee
+       fi
+
+       newinitd "${FILESDIR}"/bitlbee.initd-r2 bitlbee
+       newconfd "${FILESDIR}"/bitlbee.confd-r2 bitlbee
+
+       exeinto /usr/share/bitlbee
+       doexe utils/{convert_purple.py,bitlbee-ctl.pl}
+}
+
+pkg_postinst() {
+       chown -R bitlbee:bitlbee "${ROOT}"/var/lib/bitlbee
+}
index ba55773394df2e63b41ec60eb228e1da0ccf60c6..703647ae05d36231a073346bb2668fb934c89270 100644 (file)
@@ -1,7 +1,7 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=6
+EAPI=7
 
 inherit user systemd toolchain-funcs
 
@@ -48,7 +48,6 @@ DEPEND="${COMMON_DEPEND}
        test? ( dev-libs/check )"
 
 RDEPEND="${COMMON_DEPEND}
-       virtual/logger
        xinetd? ( sys-apps/xinetd )"
 
 pkg_setup() {
@@ -57,12 +56,7 @@ pkg_setup() {
 }
 
 src_prepare() {
-       if [[ ${PV} != "9999" ]]; then
-               eapply \
-                       "${FILESDIR}"/${P}-systemd-user.patch \
-                       "${FILESDIR}"/${P}-verbose-build.patch
-       fi
-
+       [[ ${PV} != "9999" ]] && eapply "${FILESDIR}"/${PN}-3.5-systemd-user.patch
        eapply_user
 }
 
@@ -143,8 +137,8 @@ src_install() {
                newins doc/bitlbee.xinetd bitlbee
        fi
 
-       newinitd "${FILESDIR}"/bitlbee.initd-r1 bitlbee
-       newconfd "${FILESDIR}"/bitlbee.confd-r1 bitlbee
+       newinitd "${FILESDIR}"/bitlbee.initd-r2 bitlbee
+       newconfd "${FILESDIR}"/bitlbee.confd-r2 bitlbee
 
        exeinto /usr/share/bitlbee
        doexe utils/{convert_purple.py,bitlbee-ctl.pl}
@@ -152,17 +146,4 @@ src_install() {
 
 pkg_postinst() {
        chown -R bitlbee:bitlbee "${ROOT}"/var/lib/bitlbee
-       [[ -d "${ROOT}"/var/run/bitlbee ]] &&
-               chown -R bitlbee:bitlbee "${ROOT}"/var/run/bitlbee
-
-       if [[ -z ${REPLACING_VERSIONS} ]]; then
-               einfo
-               elog "The bitlbee init script will now attempt to stop all processes owned by the"
-               elog "bitlbee user, including per-client forks."
-               elog
-               elog "Tell the init script not to touch anything besides the main bitlbee process"
-               elog "by changing the BITLBEE_STOP_ALL variable in"
-               elog "  /etc/conf.d/bitlbee"
-               einfo
-       fi
 }
diff --git a/net-im/bitlbee/files/bitlbee.confd-r2 b/net-im/bitlbee/files/bitlbee.confd-r2
new file mode 100644 (file)
index 0000000..afd24f8
--- /dev/null
@@ -0,0 +1,7 @@
+# Bitlbee options (see /usr/sbin/bitlbee -h)
+BITLBEE_OPTS=""
+
+# Specify the network services that correspond to "DaemonInterface" and
+# "ClientInterface" settings in bitlbee.conf. For example, if bound to 0.0.0.0,
+# this should be set to "net.lo" which provides the loopback interface.
+rc_need="net.lo"
diff --git a/net-im/bitlbee/files/bitlbee.initd-r2 b/net-im/bitlbee/files/bitlbee.initd-r2
new file mode 100644 (file)
index 0000000..0b3b1a4
--- /dev/null
@@ -0,0 +1,7 @@
+#!/sbin/openrc-run
+# Copyright 1999-2019 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+command="/usr/sbin/bitlbee"
+pidfile="/run/${RC_SVCNAME}.pid"
+command_args="-D -P ${pidfile} -u bitlbee ${BITLBEE_OPTS}"