diff options
Diffstat (limited to '')
-rw-r--r-- | net-im/spectrum/spectrum-1.4.8-r1.ebuild | 131 |
1 files changed, 131 insertions, 0 deletions
diff --git a/net-im/spectrum/spectrum-1.4.8-r1.ebuild b/net-im/spectrum/spectrum-1.4.8-r1.ebuild new file mode 100644 index 0000000..2e32141 --- /dev/null +++ b/net-im/spectrum/spectrum-1.4.8-r1.ebuild @@ -0,0 +1,131 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI="4" + +inherit cmake-utils + +DESCRIPTION="Spectrum is an XMPP transport/gateway" +HOMEPAGE="http://spectrum.im" + +SRC_URI="http://spectrum.im/attachments/download/43/spectrum-${PV}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +IUSE="mysql sqlite symlinks tools staticport" + +RDEPEND=">=dev-libs/poco-1.3.3[mysql?,sqlite?] + media-gfx/imagemagick[cxx] + >=net-im/pidgin-2.6.0 + >=net-libs/gloox-1.0 + dev-python/xmpppy + dev-libs/libev + <dev-lang/python-3" +DEPEND="${RDEPEND} + sys-devel/gettext + dev-util/cmake" + +PROTOCOL_LIST="aim facebook gg icq irc msn msn_pecan myspace qq simple sipe twitter xmpp yahoo" +mycmakeargs=( -DPYTHON_EXECUTABLE=/usr/bin/python2 ) + +pkg_setup() { + if ! ( use sqlite || use mysql ); then + ewarn "No database use flag set!" + ewarn "You need to enable the mysql or sqlite use flag!" + die + fi +} + +src_install () { + cmake-utils_src_install + + # Install transports with seperate config files (default). + # If USE="symlinks" is set, install one config file with symlinks to all transports. + + port=5347 + + # prepare config for mysql or just copy + cp "${FILESDIR}/spectrum.cfg" spectrum.cfg + + if use mysql ; then + sed -e 's,^\(type\)=sqlite$,\1=mysql,' \ + -e 's,^#\(host=localhost\)$,\1,' \ + -e 's,^#\(user=user\)$,\1,' \ + -e 's,^#\(password=password\)$,\1,' \ + -e 's,^\(database=.*\),#\1,' \ + -e 's,^#\(prefix=.*\),\1,' \ + -i spectrum.cfg || die + fi + + # install shared-config when using symlinks + if use symlinks; then + insinto /etc/spectrum + newins spectrum.cfg spectrum-shared-conf || die + fi + + # install protocol-specific configs or symlinks + dodir /etc/spectrum + for protocol in ${PROTOCOL_LIST}; do + if use symlinks; then + dosym spectrum-shared-conf "/etc/spectrum/${protocol}:${port}.cfg" || die + sed -e 's,PROTOCOL,'${protocol}:${port}',g' \ + "${FILESDIR}"/spectrum.confd > spectrum.confd + else + sed -e 's,\$filename:protocol,'${protocol}',g' \ + -e 's,\$filename:port,'${port}',g' \ + spectrum.cfg > "${ED}/etc/spectrum/${protocol}.cfg" || die + sed -e 's,PROTOCOL,'${protocol}',g' \ + "${FILESDIR}"/spectrum.confd > spectrum.confd + fi + + # install prepared confd + newconfd spectrum.confd spectrum.${protocol} || die + + if ! use staticport; then + port=$[${port}+1] + fi + done + + # Install init files + newinitd "${FILESDIR}"/spectrum.initd spectrum || die + for protocol in ${PROTOCOL_LIST}; do + dosym spectrum /etc/init.d/spectrum."${protocol}" + done + + # Directories + dodir "/var/lib/spectrum" || die + dodir "/var/log/spectrum" || die + dodir "/var/run/spectrum" || die + + # Directories for each transport + for protocol in ${PROTOCOL_LIST}; do + dodir "/var/lib/spectrum/$protocol/database" || die + dodir "/var/lib/spectrum/$protocol/userdir" || die + dodir "/var/lib/spectrum/$protocol/filetransfer_cache" || die + done + + # Install mysql schema + if use mysql; then + insinto "/usr/share/spectrum/schemas" + doins schemas/* || die + fi + + # Install misc tools + if use tools; then + insinto "/usr/share/spectrum/tools" + doins tools/* || die + fi + + # Set correct rights + fowners jabber:jabber -R "/etc/spectrum" || die + fowners jabber:jabber -R "/var/lib/spectrum" || die + fowners jabber:jabber -R "/var/log/spectrum" || die + fowners jabber:jabber -R "/var/run/spectrum" || die + fperms 750 "/etc/spectrum" || die + fperms 750 "/var/lib/spectrum" || die + fperms 750 "/var/log/spectrum" || die + fperms 750 "/var/run/spectrum" || die +} |