blob: 2451c9339969d61cedb631dbedd2210444b3f09b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
|
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit desktop xdg
DESCRIPTION="DLNA compliant UPNP server for streaming media to Playstation 3"
HOMEPAGE="https://github.com/ps3mediaserver/ps3mediaserver"
SRC_URI="mirror://sourceforge/project/ps3mediaserver/pms-${PV}-generic-linux-unix.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="multiuser +transcode tsmuxer"
BDEPEND="app-arch/unzip"
RDEPEND=">=virtual/jre-1.8:*
media-libs/libmediainfo
media-libs/libzen
tsmuxer? ( media-video/tsmuxer )
transcode? ( media-video/mplayer[encode] )"
S=${WORKDIR}/pms-${PV}
PMS_HOME=/opt/${PN}
src_prepare() {
default
if use multiuser; then
cat > ${PN} <<-EOF || die
#!/bin/sh
if [ ! -e ~/.${PN} ]; then
echo "Copying ${PMS_HOME} to ~/.${PN}"
cp -pPR "${PMS_HOME}" ~/.${PN}
fi
export PMS_HOME=\${HOME}/.${PN}
exec "\${PMS_HOME}/PMS.sh" "\$@"
EOF
else
cat > ${PN} <<-EOF || die
#!/bin/sh
export PMS_HOME=${PMS_HOME}
exec "\${PMS_HOME}/PMS.sh" "\$@"
EOF
fi
cat > ${PN}.desktop <<-EOF || die
[Desktop Entry]
Name=PS3 Media Server
GenericName=Media Server
Exec=${PN}
Icon=${PN}
Type=Application
Categories=Network;
EOF
unzip -j pms.jar resources/images/icon-{32,256}.png || die
}
src_install() {
dobin ${PN}
exeinto ${PMS_HOME}
doexe PMS.sh
insinto ${PMS_HOME}
doins -r pms.jar *.conf documentation plugins renderers *.xml
use tsmuxer && dosym /opt/tsmuxer/bin/tsMuxeR ${PMS_HOME}/linux/tsMuxeR
dodoc CHANGELOG.txt README.md
newicon -s 32 icon-32.png ${PN}.png
newicon -s 256 icon-256.png ${PN}.png
domenu ${PN}.desktop
newconfd "${FILESDIR}/${PN}.confd" ${PN}
newinitd "${FILESDIR}/${PN}.initd" ${PN}
}
pkg_postinst() {
xdg_pkg_postinst
if [[ -z ${REPLACING_VERSIONS} ]]; then
ewarn "Don't forget to disable transcoding engines for software"
ewarn "that you don't have installed (such as having the VLC"
ewarn "transcoding engine enabled when you only have mencoder)."
elif use multiuser; then
ewarn "Remember to refresh the files in ~/.ps3mediaserver/"
fi
}
|