commit:     581794bf256a6ccf19f9ae56949676742f9f4eab
Author:     Martin Dummer <martin.dummer <AT> gmx <DOT> net>
AuthorDate: Sun Feb 22 17:22:41 2026 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Mar 11 16:14:11 2026 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=581794bf

www-misc/vdradmin-am: add 3.6.15

Signed-off-by: Martin Dummer <martin.dummer <AT> gmx.net>
Part-of: https://github.com/gentoo/gentoo/pull/45853
Closes: https://github.com/gentoo/gentoo/pull/45853
Signed-off-by: Sam James <sam <AT> gentoo.org>

 www-misc/vdradmin-am/Manifest                  |   1 +
 www-misc/vdradmin-am/vdradmin-am-3.6.15.ebuild | 197 +++++++++++++++++++++++++
 2 files changed, 198 insertions(+)

diff --git a/www-misc/vdradmin-am/Manifest b/www-misc/vdradmin-am/Manifest
index 886ecf0c2d3d..db2c99fb0dd9 100644
--- a/www-misc/vdradmin-am/Manifest
+++ b/www-misc/vdradmin-am/Manifest
@@ -1,2 +1,3 @@
 DIST vdradmin-am-3.6.10.tar.bz2 606665 BLAKE2B 
c475b36c840548b6e0d50b2095ce3278b0b526af856c891a25d28bb2f0cb9f950aa9979533a6b6425a2a36a594dc5d6a075fca7713eb1f59071fec854582cf5b
 SHA512 
f7546f79b786ca383c0846656e74bd69dc9faf57fe5794ffd68776123497ec2a96c2f131801e3d5d19247ac36eaa896801e1ac9cd11291418abb518ba208e597
 DIST vdradmin-am-3.6.14.tgz 603368 BLAKE2B 
0b3c13c9c92ba01e6ea9968a286006c5fbae6f6491d39f33857cac058d1ae924d8d19d214566b45017412818a57a5ac9788580b13301614523557d78242e8cc7
 SHA512 
64f75e1ce40086144b4d2d3cec0b2c0560e70e25bbc6ff36ed46261cd58abb1246b6664966adfb39d76266641fe3c6e7febb5644b7bf0c8eb56c7ef8cd4bdbb0
+DIST vdradmin-am-3.6.15.tgz 604304 BLAKE2B 
1d99033ac74bdcf1d884c585de88a4d2355564297c541fe440d23888360db8a96496a89e9f140e7e74af1214ea78791b5afe67f0185b044d632d202e3ecda65a
 SHA512 
2bcbe22e4ca2fc781922687bedb45d68fdffa6184b63c56a8886255bb43b0e06983a6a668a926bd26ad1c5d6fd7789ac4b804fe3959c057a521aa6d310c5248d

diff --git a/www-misc/vdradmin-am/vdradmin-am-3.6.15.ebuild 
b/www-misc/vdradmin-am/vdradmin-am-3.6.15.ebuild
new file mode 100644
index 000000000000..e4fdf8890dde
--- /dev/null
+++ b/www-misc/vdradmin-am/vdradmin-am-3.6.15.ebuild
@@ -0,0 +1,197 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit ssl-cert systemd tmpfiles
+
+DESCRIPTION="WWW Admin for the Video Disk Recorder"
+HOMEPAGE="https://github.com/vdr-projects/vdradmin-am";
+SRC_URI="https://github.com/vdr-projects/vdradmin-am/archive/refs/tags/v${PV}.tar.gz
 -> ${P}.tgz"
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="ipv6 systemd"
+
+DEPEND="acct-user/vdradmin
+       dev-lang/perl
+       dev-perl/Authen-SASL
+       dev-perl/CGI
+       dev-perl/Digest-HMAC
+       dev-perl/HTTP-Daemon
+       dev-perl/Locale-gettext
+       dev-perl/Template-Toolkit
+       dev-perl/URI
+       dev-perl/libwww-perl
+       virtual/perl-IO-Compress
+       virtual/perl-libnet
+       ipv6? ( dev-perl/IO-Socket-INET6 )
+       ssl? ( dev-perl/HTTP-Daemon-SSL )
+       systemd? ( sys-apps/systemd )"
+RDEPEND="${DEPEND}
+       app-admin/sudo"
+BDEPEND="
+       acct-user/vdradmin
+       sys-devel/gettext"
+
+ETC_DIR="/etc/vdradmin"
+CERTS_DIR="/etc/vdradmin/certs"
+LIB_DIR="/usr/share/vdradmin"
+VDRADMIN_USER="vdradmin"
+VDRADMIN_GROUP="vdradmin"
+
+create_ssl_cert() {
+       elog "Create and install SSL certificate"
+       SSL_ORGANIZATION="VDR vdradmin-am"
+       SSL_COMMONNAME=$("${ROOT}"/bin/hostname -f)
+       elog "install_cert ${CERTS_DIR}/server-cert.pem for host 
$SSL_COMMONNAME"
+       rm -f "${ROOT}${CERTS_DIR}/server-cert.pem" 
"${ROOT}${CERTS_DIR}/server-key.pem" || die
+       install_cert "${ROOT}${CERTS_DIR}/vdradmin"
+       ls -la "${ROOT}${CERTS_DIR}/"
+       rm -f "${ROOT}${CERTS_DIR}/vdradmin.csr" 
"${ROOT}${CERTS_DIR}/vdradmin.pem" || die
+       mv "${ROOT}${CERTS_DIR}/vdradmin.key" 
"${ROOT}${CERTS_DIR}/server-key.pem" || die
+       mv "${ROOT}${CERTS_DIR}/vdradmin.crt" 
"${ROOT}${CERTS_DIR}/server-cert.pem" || die
+       chown "${VDRADMIN_USER}":"${VDRADMIN_GROUP}" 
"${ROOT}${CERTS_DIR}/server-cert.pem" || die
+       chown "${VDRADMIN_USER}":"${VDRADMIN_GROUP}" 
"${ROOT}${CERTS_DIR}/server-key.pem" || die
+}
+
+src_unpack() {
+       unpack ${A}
+       cp "${FILESDIR}"/vdradmind.service "${WORKDIR}"/vdradmind.service || die
+}
+
+src_prepare() {
+       default
+
+       sed -i vdradmind.pl \
+               -e "s|FILES_IN_SYSTEM\s*=\s*0;|FILES_IN_SYSTEM = 1;|" || die
+}
+
+src_install() {
+       newinitd "${FILESDIR}"/vdradmin-3.6.7.init vdradmin
+       newconfd "${FILESDIR}"/vdradmin-3.6.10.conf vdradmin
+
+       systemd_dounit "${WORKDIR}"/vdradmind.service
+       dotmpfiles "${FILESDIR}"/vdradmind.conf
+
+       exeinto /usr/share/vdradmin/systemd
+       doexe "${FILESDIR}"/vdradmin-systemd-helper.sh
+
+       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
+
+       newman vdradmind.pl.1 vdradmind.8
+
+       dodoc CREDITS FAQ HISTORY INSTALL README* REQUIREMENTS
+       docinto contrib
+       dodoc "${S}"/contrib/*
+
+       keepdir "${ETC_DIR}"
+       fowners "${VDRADMIN_USER}":"${VDRADMIN_GROUP}" "${ETC_DIR}"
+
+       if use ssl; then
+               keepdir "${CERTS_DIR}"
+               fowners "${VDRADMIN_USER}":"${VDRADMIN_GROUP}" "${CERTS_DIR}"
+       fi
+
+       mkdir -p "${ED}/etc/sudoers.d/" || die
+       echo "vdradmin ALL=NOPASSWD:/bin/systemctl daemon-reload" > 
"${ED}/etc/sudoers.d/${PN}" || die
+       chmod 0440 "${ED}/etc/sudoers.d/${PN}" || die
+
+       local PO L
+       for PO in po/*.po
+       do
+               L=$(basename $PO .po)
+               insinto /usr/share/locale/${L}/LC_MESSAGES/
+               msgfmt po/${L}.po -o po/${L}.mo
+               newins po/${L}.mo vdradmin.mo
+       done
+
+}
+
+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 = /etc/vdr
+                       VIDEODIR = /var/vdr/video
+                       EPG_FILENAME = /var/vdr/video/epg.data
+                       EPGIMAGES = /var/vdr/video/epgimages
+                       PASSWORD = gentoo-vdr
+                       USERNAME = gentoo-vdr
+                       VDR_PORT = 6419
+               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() {
+       tmpfiles_process vdradmind.conf
+
+       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 vdradmin"
+               elog "you need to enable it in ${EROOT}/etc/conf.d/vdradmin"
+
+               # only create a certificate if none exists
+               if [[ -f ${ROOT}${CERTS_DIR}/server-cert.pem ]]; then
+                       elog "Existing SSL cert found, not touching it."
+               else
+                       elog "No SSL cert found, creating a default one now"
+                       create_ssl_cert
+               fi
+       fi
+
+       if [[ ! -f "${EROOT}"${ETC_DIR}/vdradmin-systemd.env ]]; then
+               echo "# systemd environment file, created by pre-exec script, 
do not edit!" \
+                       > "${EROOT}"${ETC_DIR}/vdradmin-systemd.env
+               chown "${VDRADMIN_USER}":"${VDRADMIN_GROUP}" 
"${EROOT}"${ETC_DIR}/vdradmin-systemd.env || die
+       fi
+
+       elog
+       elog "To extend the functionality of ${PN} you can emerge"
+       elog "  media-plugins/vdr-epgsearch to search the EPG"
+       elog "  media-plugins/vdr-streamdev for livetv streaming"
+       elog "on the machine running the VDR you connect to with ${PN}."
+}
+
+pkg_config() {
+       "${EROOT}"/usr/bin/vdradmind -c
+}

Reply via email to