3 |
3 |
|
4 |
4 |
EAPI=8
|
5 |
5 |
|
6 |
|
MY_PV="${PV/_/-}"
|
7 |
|
|
8 |
|
inherit desktop toolchain-funcs unpacker xdg
|
|
6 |
inherit desktop xdg-utils
|
9 |
7 |
|
10 |
8 |
DESCRIPTION="A client software for quality voice communication via the internet"
|
11 |
9 |
HOMEPAGE="https://www.teamspeak.com/"
|
12 |
|
SRC_URI="https://files.teamspeak-services.com/releases/client/${PV}/TeamSpeak3-Client-linux_amd64-${MY_PV}.run"
|
|
10 |
SRC_URI="https://files.teamspeak-services.com/pre_releases/client/${PV/_/-}/teamspeak-client.tar.gz -> ${P}.tar.gz"
|
13 |
11 |
S="${WORKDIR}"
|
14 |
12 |
|
15 |
|
LICENSE="teamspeak3 || ( GPL-2 GPL-3 LGPL-3 )"
|
16 |
|
SLOT="3"
|
17 |
|
KEYWORDS="-* ~amd64"
|
18 |
|
IUSE="+alsa pulseaudio system-libcxx +system-quazip"
|
|
13 |
KEYWORDS=""
|
|
14 |
LICENSE="teamspeak5 || ( GPL-2 GPL-3 LGPL-3 )"
|
|
15 |
SLOT="5"
|
19 |
16 |
|
|
17 |
IUSE="+alsa pulseaudio"
|
20 |
18 |
REQUIRED_USE="|| ( alsa pulseaudio )"
|
21 |
|
RESTRICT="bindist mirror"
|
22 |
19 |
|
23 |
|
BDEPEND=">=dev-util/patchelf-0.10"
|
24 |
20 |
RDEPEND="
|
|
21 |
app-accessibility/at-spi2-core
|
|
22 |
dev-libs/expat
|
25 |
23 |
dev-libs/glib:2
|
26 |
|
dev-qt/qtcore:5
|
27 |
|
dev-qt/qtgui:5[accessibility,dbus,X(-)]
|
28 |
|
dev-qt/qtnetwork:5
|
29 |
|
dev-qt/qtsql:5[sqlite]
|
30 |
|
dev-qt/qtsvg:5
|
31 |
|
dev-qt/qtwebchannel:5
|
32 |
|
dev-qt/qtwebengine:5[geolocation(+),widgets]
|
33 |
|
dev-qt/qtwebsockets:5
|
34 |
|
dev-qt/qtwidgets:5
|
|
24 |
dev-libs/nspr
|
|
25 |
dev-libs/nss
|
|
26 |
media-libs/alsa-lib
|
|
27 |
media-libs/fontconfig:1.0
|
|
28 |
net-print/cups
|
|
29 |
sys-power/upower
|
|
30 |
sys-apps/dbus
|
|
31 |
x11-libs/cairo[glib]
|
|
32 |
x11-libs/gdk-pixbuf:2
|
|
33 |
x11-libs/gtk+:3
|
|
34 |
x11-libs/libX11
|
|
35 |
x11-libs/libXcomposite
|
|
36 |
x11-libs/libXcursor
|
|
37 |
x11-libs/libXdamage
|
|
38 |
x11-libs/libXext
|
|
39 |
x11-libs/libXfixes
|
|
40 |
x11-libs/libXi
|
|
41 |
x11-libs/libXrandr
|
|
42 |
x11-libs/libXrender
|
|
43 |
x11-libs/libXScrnSaver
|
|
44 |
x11-libs/libXtst
|
|
45 |
x11-libs/pango
|
35 |
46 |
alsa? ( media-libs/alsa-lib )
|
36 |
47 |
pulseaudio? ( media-libs/libpulse )
|
37 |
|
system-libcxx? ( sys-libs/libcxx[libcxxabi] )
|
38 |
|
!system-libcxx? ( sys-libs/libunwind )
|
39 |
|
system-quazip? ( dev-libs/quazip:0/1[qt5(+)] )
|
40 |
48 |
"
|
41 |
49 |
|
|
50 |
RESTRICT="bindist mirror"
|
|
51 |
|
42 |
52 |
QA_PREBUILT="
|
43 |
|
opt/teamspeak3-client/libc++.so.1
|
44 |
|
opt/teamspeak3-client/libc++abi.so.1
|
45 |
|
opt/teamspeak3-client/libquazip.so
|
46 |
|
opt/teamspeak3-client/error_report
|
47 |
|
opt/teamspeak3-client/package_inst
|
48 |
|
opt/teamspeak3-client/soundbackends/libalsa_linux_*.so
|
49 |
|
opt/teamspeak3-client/ts3client
|
50 |
|
opt/teamspeak3-client/update
|
|
53 |
opt/teamspeak5-client/chrome-sandbox
|
|
54 |
opt/teamspeak5-client/hotkey_helper
|
|
55 |
opt/teamspeak5-client/libcef.so
|
|
56 |
opt/teamspeak5-client/libtschat_client_lib.so
|
|
57 |
opt/teamspeak5-client/libtschat_client_lib_export.so
|
|
58 |
opt/teamspeak5-client/patcher
|
|
59 |
opt/teamspeak5-client/TeamSpeak
|
|
60 |
opt/teamspeak5-client/soundbackends/libalsa_linux_amd64.so
|
51 |
61 |
"
|
52 |
62 |
|
53 |
63 |
src_prepare() {
|
... | ... | |
56 |
66 |
if ! use alsa; then
|
57 |
67 |
rm soundbackends/libalsa_linux_*.so || die
|
58 |
68 |
fi
|
59 |
|
|
60 |
|
mv ts3client_linux_* ts3client || die
|
61 |
|
|
62 |
|
# Fixes QA Notice: Unresolved soname dependencies.
|
63 |
|
# Since this is a binary only package, it must be patched.
|
64 |
|
local quazip_so="libquazip1-qt5.so.1.0.0"
|
65 |
|
if has_version "<dev-libs/quazip-1.0"; then
|
66 |
|
quazip_so="libquazip5.so.1"
|
67 |
|
fi
|
68 |
|
local soname_files=( "error_report" "ts3client" )
|
69 |
|
if use system-quazip; then
|
70 |
|
for soname_file in ${soname_files[@]}; do
|
71 |
|
patchelf --replace-needed libquazip.so "${quazip_so}" "${soname_file}" || die
|
72 |
|
done
|
73 |
|
fi
|
74 |
|
|
75 |
|
# Fixes QA Notice: Unresolved soname dependencies.
|
76 |
|
# Since this is a binary only package, it must be patched.
|
77 |
|
local soname_files=( "libc++abi.so.1" "libc++.so.1" )
|
78 |
|
for soname_file in ${soname_files[@]}; do
|
79 |
|
patchelf --replace-needed libunwind.so.1 libunwind.so.8 "${soname_file}" || die
|
80 |
|
done
|
81 |
|
|
82 |
|
tc-export CXX
|
83 |
69 |
}
|
84 |
70 |
|
85 |
71 |
src_install() {
|
86 |
|
exeinto /opt/teamspeak3-client
|
87 |
|
doexe error_report package_inst ts3client update
|
88 |
|
newexe "${FILESDIR}"/ts3client-bin-r2 ts3client-bin
|
89 |
|
! use system-libcxx && doexe libc++{,abi}.so.1
|
90 |
|
! use system-quazip && doexe libquazip.so
|
91 |
|
|
92 |
|
insinto /opt/teamspeak3-client
|
93 |
|
doins -r gfx html resources sound styles soundbackends translations
|
|
72 |
exeinto /opt/teamspeak5-client
|
|
73 |
doexe chrome-sandbox hotkey_helper patcher TeamSpeak libcef.so libtschat_client_lib.so libtschat_client_lib_export.so
|
94 |
74 |
|
95 |
|
dosym ../../usr/$(get_libdir)/qt5/libexec/QtWebEngineProcess /opt/teamspeak3-client/QtWebEngineProcess
|
|
75 |
insinto /opt/teamspeak5-client
|
|
76 |
doins *.bin *.dat *.pak
|
|
77 |
doins -r html licenses locales soundbackends
|
96 |
78 |
|
97 |
79 |
dodir /opt/bin
|
98 |
|
dosym ../teamspeak3-client/ts3client-bin /opt/bin/ts3client
|
|
80 |
dosym ../teamspeak5-client/TeamSpeak /opt/bin/ts5client
|
99 |
81 |
|
100 |
|
newicon -s 128 styles/default/logo-128x128.png teamspeak3.png
|
101 |
|
make_desktop_entry /opt/bin/ts3client "Teamspeak 3 Client" teamspeak3 "Audio;AudioVideo;Network"
|
|
82 |
make_desktop_entry \
|
|
83 |
/opt/bin/ts5client "Teamspeak 5 Client" \
|
|
84 |
/opt/teamspeak5-client/html/client_ui/images/icons/teamspeak_logo.svg "Audio;AudioVideo;Network"
|
|
85 |
}
|
|
86 |
|
|
87 |
pkg_postinst() {
|
|
88 |
xdg_desktop_database_update
|
|
89 |
xdg_mimeinfo_database_update
|
|
90 |
}
|
102 |
91 |
|
103 |
|
einstalldocs
|
|
92 |
pkg_postrm() {
|
|
93 |
xdg_desktop_database_update
|
|
94 |
xdg_mimeinfo_database_update
|
104 |
95 |
}
|