gentoo/media-sound/teamspeak-server-bin/teamspeak-server-bin-3.0.13.8.ebuild

100 lines
3.1 KiB
Bash

# 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."
}