# Copyright 1999-2016 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI="6" inherit multilib systemd user versionator MY_PV="$(get_version_component_range 1-4)-Beta-$(get_version_component_range 5)" DESCRIPTION="Crystal Clear Cross-Platform Voice Communication Server" HOMEPAGE="https://www.teamspeak.com/" if [[ ${PV} != "*_beta*" ]] ; then SRC_URI=" amd64? ( http://ftp.4players.de/pub/hosted/ts3/releases/${PV}/teamspeak3-server_linux_amd64-${PV}.tar.bz2 ) x86? ( http://ftp.4players.de/pub/hosted/ts3/releases/${PV}/teamspeak3-server_linux_x86-${PV}.tar.bz2 )" else SRC_URI=" amd64? ( http://ftp.4players.de/pub/hosted/ts3/releases/pre_releases/server/${MY_PV}/teamspeak3-server_linux_amd64-${MY_PV}.tar.bz2 ) x86? ( http://ftp.4players.de/pub/hosted/ts3/releases/pre_releases/server/${MY_PV}/teamspeak3-server_linux_x86-${MY_PV}.tar.bz2 )" fi SLOT="0" LICENSE="teamspeak3 GPL-2" IUSE="doc mysql tsdns" KEYWORDS="~amd64 ~x86" DEPEND="mysql? ( >=virtual/mysql-5.5 )" RDEPEND="${DEPEND}" RESTRICT="installsources mirror strip" S="${WORKDIR}/teamspeak3-server_linux_${ARCH}" QA_PREBUILT="opt/*" pkg_nofetch() { elog "Please download ${A}" elog "from ${HOMEPAGE}downloads and place this" elog "file in ${DISTDIR}" } pkg_setup() { enewuser teamspeak3 } src_install() { # Install wrapper dosbin "${FILESDIR}"/ts3server # Install TeamSpeak 3 server into /opt/teamspeak3-server. local opt_dir="/opt/teamspeak3-server" into ${opt_dir} insinto ${opt_dir} exeinto ${opt_dir} newsbin ts3server ts3server-bin doexe *.sh doins *.so # 'libmariadb.so.2' is hard-coded into the ts3-server binary :( use mysql && doexe redist/libmariadb.so.2 doins -r sql # Install documentation and tsdns. dodoc -r CHANGELOG doc/*.txt use doc && dodoc -r serverquerydocs doc/serverquery && \ docompress -x /usr/share/doc/${PF}/serverquerydocs && \ docompress -x /usr/share/doc/${PF}/serverquery && \ dosym ../../../usr/share/doc/${PF}/serverquery ${opt_dir}/doc/serverquery && \ dosym ../../usr/share/doc/${PF}/serverquerydocs ${opt_dir}/serverquerydocs if use tsdns; then newsbin tsdns/tsdnsserver tsdnsserver newdoc tsdns/README README.tsdns newdoc tsdns/USAGE USAGE.tsdns dodoc tsdns/tsdns_settings.ini.sample fi # Install the runtime FS layout. insinto /etc/teamspeak3-server doins "${FILESDIR}"/server.conf "${FILESDIR}"/ts3db_mariadb.ini keepdir /{etc,var/{lib,log}}/teamspeak3-server # Install the init script and systemd unit. newinitd "${FILESDIR}"/${PN}-init-r1 teamspeak3-server systemd_newunit "${FILESDIR}"/systemd/teamspeak3-r1.service teamspeak3-server.service systemd_newtmpfilesd "${FILESDIR}"/systemd/teamspeak3.conf teamspeak3-server.conf # Fix up permissions. fowners teamspeak3 /{etc,var/{lib,log}}/teamspeak3-server fowners teamspeak3 ${opt_dir} fperms 700 /{etc,var/{lib,log}}/teamspeak3-server fperms 755 ${opt_dir} } pkg_postinst() { einfo "Starting with version 3.0.13, there are two important changes:" einfo "- IPv6 is now supported." einfo "- Binding to any address (0.0.0.0 / 0::0)," einfo " instead of just the default ip of the network interface." }