You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/net-misc/minidlna/minidlna-1.2.1-r1.ebuild

113 lines
2.7 KiB

# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit autotools eutils linux-info systemd tmpfiles toolchain-funcs user
DESCRIPTION="DLNA/UPnP-AV compliant media server"
HOMEPAGE="https://sourceforge.net/projects/minidlna/"
SRC_URI="mirror://sourceforge/minidlna/${PV}/${P}.tar.gz
https://dev.gentoo.org/~xmw/minidlna-gentoo-artwork.patch.xz"
LICENSE="BSD GPL-2"
SLOT="0"
KEYWORDS="amd64 arm x86"
IUSE="libav netgear readynas zeroconf"
RDEPEND="dev-db/sqlite:3
media-libs/flac:=
media-libs/libexif:=
media-libs/libid3tag:=
media-libs/libogg:=
media-libs/libvorbis:=
virtual/jpeg:0=
libav? ( media-video/libav:0= )
!libav? ( media-video/ffmpeg:0= )
zeroconf? ( net-dns/avahi:= )"
DEPEND="${RDEPEND}
virtual/pkgconfig"
CONFIG_CHECK="~INOTIFY_USER"
PATCHES=(
"${WORKDIR}"/minidlna-gentoo-artwork.patch
)
src_prepare() {
sed -e "/log_dir/s:/var/log:/var/log/minidlna:" \
-e "/db_dir/s:/var/cache/:/var/lib/:" \
-i minidlna.conf || die
default
}
src_configure() {
local myconf=(
--with-db-path=/var/lib/minidlna
--with-log-path=/var/log/minidlna
--enable-tivo
$(use_enable netgear)
$(use_enable readynas)
)
use zeroconf || myconf+=(
ac_cv_lib_avahi_client_avahi_threaded_poll_new=no
)
econf "${myconf[@]}"
}
src_test() {
:
}
src_install() {
default
#bug 536532
dosym ../sbin/minidlnad /usr/bin/minidlna
insinto /etc
doins minidlna.conf
newconfd "${FILESDIR}"/minidlna-1.0.25.confd minidlna
newinitd "${FILESDIR}"/minidlna-1.1.5.initd minidlna
systemd_newunit "${FILESDIR}"/minidlna-1.1.2.service minidlna.service
newtmpfiles - minidlna.conf <<-EOF
d /run/minidlna 0755 minidlna minidlna -
EOF
keepdir /var/{lib,log}/minidlna
doman minidlnad.8 minidlna.conf.5
}
pkg_preinst() {
local my_is_new=yes
[[ -d ${EROOT}/var/lib/minidlna ]] && my_is_new=no
enewgroup minidlna
enewuser minidlna -1 -1 /var/lib/minidlna minidlna
fowners minidlna:minidlna /var/{lib,log}/minidlna
fperms 0750 /var/{lib,log}/minidlna
if [[ -d ${EROOT}/var/lib/minidlna && ${my_is_new} == yes ]]; then
# created by above enewuser command w/ wrong group
# and permissions
chown minidlna:minidlna "${EROOT}"/var/lib/minidlna || die
chmod 0750 "${EROOT}"/var/lib/minidlna || die
# if user already exists, but /var/lib/minidlna is missing
# rely on ${D}/var/lib/minidlna created in src_install
fi
}
pkg_postinst() {
elog "minidlna now runs as minidlna:minidlna (bug 426726),"
elog "logfile is moved to /var/log/minidlna/minidlna.log,"
elog "cache is moved to /var/lib/minidlna."
elog "Please edit /etc/conf.d/minidlna and file ownerships to suit your needs."
tmpfiles_process minidlna.conf
}