public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: www-misc/vdradmin-am/files/, www-misc/vdradmin-am/
@ 2020-03-01 11:07 Jörg Bornkessel
  0 siblings, 0 replies; only message in thread
From: Jörg Bornkessel @ 2020-03-01 11:07 UTC (permalink / raw
  To: gentoo-commits

commit:     91e95773cff02d136b2487cc7bea8dae8b4f907c
Author:     Joerg Bornkessel <hd_brummy <AT> gentoo <DOT> org>
AuthorDate: Sun Mar  1 11:06:20 2020 +0000
Commit:     Jörg Bornkessel <hd_brummy <AT> gentoo <DOT> org>
CommitDate: Sun Mar  1 11:07:07 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=91e95773

www-misc/vdradmin-am: moved to acct user/group handling

initial ebuild with new
acct user/group handling
we use now uid/gid 453 for this
drop the user.eclass handling

Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Joerg Bornkessel <hd_brummy <AT> gentoo.org>

 www-misc/vdradmin-am/files/vdradmin-3.6.10.conf   |  19 +++
 www-misc/vdradmin-am/vdradmin-am-3.6.10-r1.ebuild | 178 ++++++++++++++++++++++
 2 files changed, 197 insertions(+)

diff --git a/www-misc/vdradmin-am/files/vdradmin-3.6.10.conf b/www-misc/vdradmin-am/files/vdradmin-3.6.10.conf
new file mode 100644
index 00000000000..1895b9c51dd
--- /dev/null
+++ b/www-misc/vdradmin-am/files/vdradmin-3.6.10.conf
@@ -0,0 +1,19 @@
+# Settings for vdradmin-am
+
+# Use ssl connection
+# Allowed values: yes no
+# SSL using will disable non SSL connections
+#SSL=no
+
+# Use the ipv6 protocol [EXPERIMENTAL]
+# Allowed values: yes no
+#IPV6=no
+
+# Enable Logging
+# Allowed values: syslog file no
+# Setting this value to file will log to /var/log/vdradmin/vdradmind.log
+#LOGGING=no
+
+# Set loglevel
+# Allowed values: 0-7
+#LOGLEVEL=4

diff --git a/www-misc/vdradmin-am/vdradmin-am-3.6.10-r1.ebuild b/www-misc/vdradmin-am/vdradmin-am-3.6.10-r1.ebuild
new file mode 100644
index 00000000000..0e82c2c7092
--- /dev/null
+++ b/www-misc/vdradmin-am/vdradmin-am-3.6.10-r1.ebuild
@@ -0,0 +1,178 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit ssl-cert systemd
+
+DESCRIPTION="WWW Admin for the Video Disk Recorder"
+HOMEPAGE="http://andreas.vdr-developer.org/vdradmin-am/index.html"
+SRC_URI="http://andreas.vdr-developer.org/vdradmin-am/download/${P}.tar.bz2"
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="ipv6 ssl"
+
+DEPEND="acct-group/vdradmin
+	acct-user/vdradmin
+	dev-lang/perl
+	dev-perl/Template-Toolkit
+	dev-perl/libwww-perl
+	dev-perl/URI
+	dev-perl/CGI
+	dev-perl/Locale-gettext
+	virtual/perl-IO-Compress
+	ipv6? ( dev-perl/IO-Socket-INET6 )
+	ssl? ( dev-perl/IO-Socket-SSL )
+	virtual/perl-libnet
+	dev-perl/Authen-SASL
+	dev-perl/Digest-HMAC"
+RDEPEND="${DEPEND}"
+
+ETC_DIR="/etc/vdradmin"
+CERTS_DIR="/etc/vdradmin/certs"
+LIB_DIR="/usr/share/vdradmin"
+VDRADMIN_USER="vdradmin"
+VDRADMIN_GROUP="vdradmin"
+
+create_ssl_cert() {
+	# The ssl-cert eclass is not flexible enough, so do some steps manually
+	SSL_ORGANIZATION="${SSL_ORGANIZATION:-vdradmin-am}"
+	SSL_COMMONNAME="${SSL_COMMONNAME:-`hostname -f`}"
+
+	gen_cnf || return 1
+
+	gen_key 1 || return 1
+	gen_csr 1 || return 1
+	gen_crt 1 || return 1
+}
+
+src_unpack() {
+	unpack ${A}
+	cp "${FILESDIR}"/vdradmind.service "${WORKDIR}"/vdradmind.service
+}
+
+src_prepare() {
+	default
+
+	sed -i vdradmind.pl \
+		-e "s-FILES_IN_SYSTEM    = 0;-FILES_IN_SYSTEM    = 1;-g" || die
+
+	if use ipv6; then
+		sed -e "s:/usr/bin/vdradmind:/usr/bin/vdradmind --ipv6:" \
+			-i "${WORKDIR}"/vdradmind.service || die
+	fi
+
+	if use ssl; then
+		sed -e "s:/usr/bin/vdradmind:/usr/bin/vdradmind --ssl:" \
+			-i "${WORKDIR}"/vdradmind.service || die
+	fi
+}
+
+src_install() {
+	newinitd "${FILESDIR}"/vdradmin-3.6.7.init vdradmin
+	newconfd "${FILESDIR}"/vdradmin-3.6.10.conf vdradmin
+
+	systemd_dounit "${WORKDIR}"/vdradmind.service
+	systemd_dotmpfilesd "${FILESDIR}"/vdradmind.conf
+
+	insinto /etc/logrotate.d
+	newins "${FILESDIR}"/vdradmin-3.6.6.logrotate vdradmin
+
+	newbin vdradmind.pl vdradmind
+
+	insinto "${LIB_DIR}"/template
+	doins -r "${S}"/template/*
+
+	insinto "${LIB_DIR}"/lib/Template/Plugin
+	doins -r "${S}"/lib/Template/Plugin/JavaScript.pm
+
+	insinto /usr/share/locale/
+	doins -r "${S}"/locale/*
+
+	newman vdradmind.pl.1 vdradmind.8
+
+	dodoc CREDITS ChangeLog FAQ HISTORY INSTALL README* REQUIREMENTS
+	docinto contrib
+	dodoc "${S}"/contrib/*
+
+	keepdir "${ETC_DIR}"
+	fowners "${VDRADMIN_USER}":"${VDRADMIN_GROUP}" "${ETC_DIR}"
+
+	use ssl && keepdir "${CERTS_DIR}" && \
+	fowners "${VDRADMIN_USER}":"${VDRADMIN_GROUP}" "${CERTS_DIR}"
+}
+
+pkg_preinst() {
+	install -m 0644 -o ${VDRADMIN_USER} -g ${VDRADMIN_GROUP} /dev/null \
+		"${ED}"${ETC_DIR}/vdradmind.conf || die
+
+	if [[ -f "${EROOT}"${ETC_DIR}/vdradmind.conf ]]; then
+		cp "${EROOT}"${ETC_DIR}/vdradmind.conf \
+			"${ED}"${ETC_DIR}/vdradmind.conf || die
+	else
+		elog
+		elog "Creating a new config-file."
+		echo
+
+		cat <<-EOF > "${ED}"${ETC_DIR}/vdradmind.conf
+			VDRCONFDIR = "${EROOT}"/etc/vdr
+			VIDEODIR = "${EROOT}"/var/vdr/video
+			EPG_FILENAME = "${EROOT}"/var/vdr/video/epg.data
+			EPGIMAGES = "${EROOT}"/var/vdr/video/epgimages
+			PASSWORD = gentoo-vdr
+			USERNAME = gentoo-vdr
+		EOF
+		# Feed it with newlines
+		yes "" \
+			| "${ED}"/usr/bin/vdradmind --cfgdir "${ED}"${ETC_DIR} --config \
+			|sed -e 's/: /: \n/g'
+
+		[[ ${PIPESTATUS[1]} == "0" ]] \
+			|| die "Failed to create initial configuration."
+
+		elog
+		elog "Created default user/password: gentoo-vdr/gentoo-vdr"
+		elog
+		elog "You can run \"emerge --config ${PN}\" if the default-values"
+		elog "do not match your installation or change them in the Setup-Menu"
+		elog "of the Web-Interface."
+	fi
+}
+
+pkg_postinst() {
+	if use ipv6; then
+		elog
+		elog "To make use of the ipv6 protocol"
+		elog "you need to enable it in ${EROOT}/etc/conf.d/vdradmin"
+	fi
+
+	if use ssl; then
+		elog
+		elog "To use ssl connection to your vdr"
+		elog "you need to enable it in ${EROOT}/etc/conf.d/vdradmin"
+
+		if [[ ! -f "${EROOT}"${CERTS_DIR}/server-cert.pem || \
+			! -f "${EROOT}"${CERTS_DIR}/server-key.pem ]]; then
+			create_ssl_cert
+			local base=$(get_base 1)
+			install -D -m 0400 -o ${VDRADMIN_USER} -g ${VDRADMIN_GROUP} \
+				"${base}".key "${EROOT}"${CERTS_DIR}/server-key.pem || die
+			install -D -m 0444 -o ${VDRADMIN_USER} -g ${VDRADMIN_GROUP} \
+				"${base}".crt "${EROOT}"${CERTS_DIR}/server-cert.pem || die
+		fi
+	fi
+
+	elog
+	elog "To extend ${PN} you can emerge"
+	elog "media-plugins/vdr-epgsearch to search the EPG,"
+	elog "media-plugins/vdr-streamdev for livetv streaming and/or"
+	elog "media-video/vdr with USE=\"liemikuutio/vasarajanauloja/none\" "
+	elog "(depend on your vdr version) to rename recordings"
+	elog "on the machine running the VDR you connect to with ${PN}."
+}
+
+pkg_config() {
+	"${EROOT}"/usr/bin/vdradmind -c
+}


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2020-03-01 11:07 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-03-01 11:07 [gentoo-commits] repo/gentoo:master commit in: www-misc/vdradmin-am/files/, www-misc/vdradmin-am/ Jörg Bornkessel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox