# Copyright 1999-2014 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ EAPI="5" inherit eutils systemd user versionator MY_PV="$(get_version_component_range 1-3)-Beta-$(get_version_component_range 4)" DESCRIPTION="TeamSpeak Server - Voice Communication Software" HOMEPAGE="http://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.gz ) x86? ( http://ftp.4players.de/pub/hosted/ts3/releases/${PV}/teamspeak3-server_linux-x86-${PV}.tar.gz )" else SRC_URI="amd64? ( http://ftp.4players.de/pub/hosted/ts3/releases/pre_releases/${MY_PV}/teamspeak3-server_linux-amd64-$(get_version_component_range 1-3).tar.gz ) x86? ( http://ftp.4players.de/pub/hosted/ts3/releases/pre_releases/${MY_PV}/teamspeak3-server_linux-x86-$(get_version_component_range 1-3).tar.gz )" fi RESTRICT="fetch mirror strip" LICENSE="teamspeak3 GPL-2" SLOT="0" KEYWORDS="~amd64 ~x86" IUSE="doc pdf mysql tsdns" DEPEND="mysql? ( >=virtual/mysql-5.5 )" RDEPEND="${DEPEND}" S="${WORKDIR}/teamspeak3-server_linux-${ARCH}" pkg_nofetch() { if use amd64 ; then einfo "Please download teamspeak3-server_linux-amd64-${PV}.tar.gz" elif use x86 ; then einfo "Please download teamspeak3-server_linux-x86-${PV}.tar.gz" fi einfo "from ${HOMEPAGE}?page=downloads and place this" einfo "file in ${DISTDIR}" } pkg_setup() { enewuser teamspeak3 } src_install() { # Install TeamSpeak 3 server into /opt/teamspeak3-server. local opt_dir="/opt/teamspeak3-server" into ${opt_dir} insinto ${opt_dir} # Install binary, wrapper, shell files and libraries. newsbin ts3server_linux_${ARCH} ts3server-bin exeinto /usr/sbin doexe "${FILESDIR}"/ts3server exeinto ${opt_dir} 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 use pdf && dodoc doc/*.pdf if use tsdns; then newsbin tsdns/tsdnsserver_linux_${ARCH} tsdnsserver newdoc tsdns/README README.tsdns newdoc tsdns/USAGE USAGE.tsdns dodoc tsdns/tsdns_settings.ini.sample insinto /etc/teamspeak3-server newins tsdns/tsdns_settings.ini.sample tsdns_settings.ini fi # Install the runtime FS layout. insinto /etc/teamspeak3-server doins "${FILESDIR}"/server.conf use mysql && doins "${FILESDIR}"/ts3db_mariadb.ini keepdir /{etc,var/{lib,log,run}}/teamspeak3-server # Install the init script and systemd unit. newinitd "${FILESDIR}"/${PN}.rc teamspeak3-server use tsdns && newinitd "${FILESDIR}/teamspeak-tsdns-server.rc" teamspeak3-tsdns-server systemd_dounit "${FILESDIR}"/systemd/teamspeak3.service use tsdns && systemd_dounit "${FILESDIR}"/systemd/teamspeak3-tsdns-server.service systemd_dotmpfilesd "${FILESDIR}"/systemd/teamspeak3.conf # Fix up permissions. fowners teamspeak3 /{etc,var/{lib,log,run}}/teamspeak3-server fowners teamspeak3 ${opt_dir} fperms 700 /{etc,var/{lib,log,run}}/teamspeak3-server fperms 755 ${opt_dir} }