* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/, media-tv/mythtv/files/
@ 2015-09-08 18:58 Doug Goldstein
0 siblings, 0 replies; 16+ messages in thread
From: Doug Goldstein @ 2015-09-08 18:58 UTC (permalink / raw
To: gentoo-commits
commit: 9ada29b52010e465a522fdc68d4eee0da6eaa349
Author: Doug Goldstein <cardoe <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 6 03:22:51 2015 +0000
Commit: Doug Goldstein <cardoe <AT> gentoo <DOT> org>
CommitDate: Tue Sep 8 18:56:38 2015 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9ada29b5
media-tv/mythtv: upstream bump and bug fixes
Bump to latest upstream 0.27-fixes branch. Add a MYTHBACKEND_LOGGING option
to allow users to specify custom logging options instead of always having
/var/log/mythtv hardcoded on them. (bug #493396 & bug #442996). Prevent
installing scripts that need the Perl bindings when USE=-perl is set.
Similiarly prevent Python script installation when USE=-python is set.
(bug #516968). Add missing dependency on udisks:0 when USE=dvd or
USE=bluray is set. (bug #456898 & bug #503806). Drop 'need net' in the
init script in favor of 'use net.lo'. (bug #439656). Add lame as a
dependency always, reported and fixed by Olav Sandstå
<olav <AT> sandstaa.net>). (bug #440006).
Gentoo-Bug: 493396
Gentoo-Bug: 442996
Gentoo-Bug: 516968
Gentoo-Bug: 456898
Gentoo-Bug: 503806
Gentoo-Bug: 439656
Gentoo-Bug: 440006
Package-Manager: portage-2.2.20.1
Signed-off-by: Doug Goldstein <cardoe <AT> gentoo.org>
media-tv/mythtv/Manifest | 1 +
media-tv/mythtv/files/mythbackend.conf-r1 | 19 ++
media-tv/mythtv/files/mythbackend.init-r1 | 70 +++++
media-tv/mythtv/mythtv-0.27.5_p20150904.ebuild | 369 +++++++++++++++++++++++++
4 files changed, 459 insertions(+)
diff --git a/media-tv/mythtv/Manifest b/media-tv/mythtv/Manifest
index 27e05e5..b750a4e 100644
--- a/media-tv/mythtv/Manifest
+++ b/media-tv/mythtv/Manifest
@@ -1,6 +1,7 @@
DIST mythtv-0.26.0-9fd7c6102b2cd1a3760337663803b110446c6ea7.tar.xz 179540 SHA256 ae63398f1ea8884950eb4653c42f6bf71e504738112f5ac8f4d13c1988098d95 SHA512 599dab7a51e9e2f5e240e6d80aadf3bc1f89b8f83e0a5c2e6c82695926ef3f1b7694a73d95b0a296544f9642f1e070a809d86563a415498345a3c1049f269aa4 WHIRLPOOL 74c8aa8f2846eb67f88bddacf5d7c5aa0445e0fe2fbd0f6f2f284e51e1f2c024ca8b7ef22639b7e201b8304421859d7bab802a7d2fe9343ec40d36453f0bfa8e
DIST mythtv-0.26.0.tar.bz2 40887666 SHA256 2f158962ca3009db563dabc32827c47788a688bd67a25abd76f4baa9c3cfe306 SHA512 8c8766542b6a1a877d400fd99343e8149d9c6cc4ab1e425db358bdbdc10b6cb7422bb4bdcf984ce64b2cf02b0ad0725606b266558afcadff9ec9c9bb95bb49c0 WHIRLPOOL c737a1dbdfafe65ae5ee3bde8d0b3a9ad50ebfccec784d6907c78d03f9732637cfbf8b82ecfca80af0b049c65d70c608a81ac3bf27a8070ba3f32d657f5137bb
DIST mythtv-0.27-583395f5a376637efcd408a102fa64d0f188c12f.tar.xz 298048 SHA256 2b18428980fe8951694eb9c8594aa2559df491b029987e1a4b983128fdea4f51 SHA512 1d8c2a61bd91d7116ba3b43251d517bda3c8db3c235e73dde66116dc02d14806db9c80bacf6e19eaf816c4765d8e51fe9b53900efa3112134c564c08cc0ca012 WHIRLPOOL 3d50908d085f844cd210c568b50c55c47e4fe8dd8423ffe18303a7c799a45e24dfceaa5221e6f59596394484162d9992f46d5f66b0ad3c57fbb5a240def68dec
+DIST mythtv-0.27.5-32fd3968acea905d71d9769996487eff280233ea.tar.xz 12292 SHA256 482aadc121a7e770da6d10b5014947ec9ff1350ccc7f672bdc4650ef13e68cca SHA512 8e84cf76541b775143b94da156fdcde1f24d964b58a9423323de730e23142b57c9c44ef01c2202bbb7126058d41153f77f524eebed70f65210c2b9427255ee3a WHIRLPOOL 7375659815ee6170edab81411232bcf73b54575dbb8e69cb5c9c7ff0f13105eddeb01c4026e78ef8c9e7e9d1782880e41a628697c8dd697778cbb4711b3cb820
DIST mythtv-0.27.5-9498257571e8158926b60a0eefc74568c4436823.tar.xz 11992 SHA256 aef3b944a9f4b49daa3f5489b58a080db35eb7b85c76819d9d00ccf1adfadfdf SHA512 bddc80f6d7e7ad583459a2192660e6101d53d8821c0f875634f90588bc6fbff86c80fa75f6e8cb859fd5164a81f0ad3427939d57da2b112741b1ea9ce646659d WHIRLPOOL 249d4f5332d943669610b96363b6d2b19d63973ba191bd62900e7d31362b4c541077ffe6ca9eae6027c6d1d5fea1d691722739ff9d0d7af6566d288921444961
DIST mythtv-0.27.5.tar.gz 85652939 SHA256 7e625f94332effeadfba8e7ae7c98d44a83bfc25b7c59e39adce67dc2f4e1e1b SHA512 b912e010e54271f9321ac1b11d4a31e4093f86c0f2ae3139d4b55085bab142ca3fc6d847d163f6b75aa31320404914c71c094528dc8ee7d70086e56a828b9169 WHIRLPOOL e9ebbbabac6ed53b4ec90537371a63e053bb9a2c0a0e920e43d3d2e475f87bdd0ac5a4604045498e88aaf06b11eb054d50dea7881c87dbd45a36c08309e1b880
DIST mythtv-0.27.tar.gz 85904162 SHA256 494ebd7ee384e751c05ee0a1b3dcd3618caf72f1e94810381c09c2b5d1c799f0 SHA512 2ea070497a7610b8e1548112d9925a28aeedba819c2d063e88cc63daf69947379ce7213e357c26bf2221f8a8e865c937dee3b9bf2695644f2f1adeadf6d11116 WHIRLPOOL 74c4fade0d0f93a64e5f1da3120358f15f6f8891f53b7c74b41a286369e192790cae87829b79a3a90ce3ca23ede63b3dfa809b514b68cee220432794414b8a47
diff --git a/media-tv/mythtv/files/mythbackend.conf-r1 b/media-tv/mythtv/files/mythbackend.conf-r1
new file mode 100644
index 0000000..3857ae7
--- /dev/null
+++ b/media-tv/mythtv/files/mythbackend.conf-r1
@@ -0,0 +1,19 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# Accepts any valid combination of logging options to mythbackend
+# To get a valid list run: /usr/bin/mythbackend -v help
+#MYTHBACKEND_VERBOSE="general"
+
+# Configures where mythbackend logs
+# Valid values:
+# * files - logs each individual daemon in /var/log/mythtv (default)
+# * database - logs into the database
+# * syslog FACILITY - logs to syslog using FACILITY (see syslog(3))
+# * console - logs only to the console (no mythlogserver)
+#MYTHBACKEND_LOGGING="files"
+
+# Allows you to pass specific startup options to mythbackend
+# e.g. --noupnp
+#MYTHBACKEND_OPTS=""
diff --git a/media-tv/mythtv/files/mythbackend.init-r1 b/media-tv/mythtv/files/mythbackend.init-r1
new file mode 100644
index 0000000..e7bbeb1
--- /dev/null
+++ b/media-tv/mythtv/files/mythbackend.init-r1
@@ -0,0 +1,70 @@
+#!/sbin/runscript
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+description="MythTV backend recording daemon"
+extra_commands="resched upnprebuild"
+description_resched="Forces the recording scheduler to update"
+description_upnprebuild="Rebuilds the UPnP media cache"
+
+depend() {
+ # mythbackend doesn't need to run on the same machine that
+ # mysql runs on. so its use for that reason
+ use logger net.lo mysql LCDd
+}
+
+start() {
+ local logging=
+
+ [ -z "${MYTHBACKEND_VERBOSE}" ] && \
+ MYTHBACKEND_VERBOSE="general"
+ [ -z "${MYTHBACKEND_LOGGING}" ] && \
+ MYTHBACKEND_LOGGING="files"
+ case "${MYTHBACKEND_LOGGING}" in
+ database) logging="--enable-dblog" ;;
+ syslog\ *) logging="--${MYTHBACKEND_LOGGING}" ;;
+ files) logging="--logpath /var/log/mythtv" ;;
+ console) logging="--nologserver" ;;
+ *)
+ eerror "Invalid MYTHBACKEND_LOGGING value"
+ exit 1
+ ;;
+ esac
+
+ #fixes for bug #101308
+ unset DISPLAY
+ unset SESSION_MANAGER
+
+ # Work around any strange permissions that may be on these files.
+ [ "x${MYTHBACKEND_LOGGING}" = "xfiles" ] && \
+ checkpath --dir --owner mythv:video --mode 0664 /var/log/mythtv
+ checkpath --dir --owner mythv:video --mode 0664 /home/mythtv
+
+ ebegin "Starting MythTV Backend"
+ start-stop-daemon --start --quiet --exec /usr/bin/mythbackend \
+ --pidfile /var/run/mythbackend.pid -- \
+ --daemon --pidfile /var/run/mythbackend.pid --user mythtv:video \
+ --verbose ${MYTHBACKEND_VERBOSE} \
+ ${logging} ${MYTHBACKEND_OPTS}
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping MythTV Backend"
+ start-stop-daemon --stop --retry 10 --progress \
+ --pidfile=/var/run/mythbackend.pid
+ eend $?
+}
+
+resched() {
+ ebegin "Updating the recording scheduler"
+ /usr/bin/mythbackend --resched
+ eend $?
+}
+
+upnprebuild() {
+ ebegin "Rebuilding UPnP media cache"
+ /usr/bin/mythbackend --upnprebuild
+ eend $?
+}
diff --git a/media-tv/mythtv/mythtv-0.27.5_p20150904.ebuild b/media-tv/mythtv/mythtv-0.27.5_p20150904.ebuild
new file mode 100644
index 0000000..23a2b36
--- /dev/null
+++ b/media-tv/mythtv/mythtv-0.27.5_p20150904.ebuild
@@ -0,0 +1,369 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+BACKPORTS="32fd3968acea905d71d9769996487eff280233ea"
+MY_P=${P%_p*}
+
+inherit flag-o-matic multilib eutils python-single-r1 user systemd
+
+MYTHTV_VERSION="v0.27.5"
+MYTHTV_BRANCH="fixes/0.27"
+
+DESCRIPTION="Homebrew PVR project"
+HOMEPAGE="http://www.mythtv.org"
+SRC_URI="https://github.com/MythTV/mythtv/archive/v0.27.5.tar.gz -> mythtv-0.27.5.tar.gz
+ ${BACKPORTS:+https://dev.gentoo.org/~cardoe/distfiles/${MY_P}-${BACKPORTS}.tar.xz}"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~x86"
+
+IUSE_INPUT_DEVICES="input_devices_joystick"
+IUSE="alsa altivec libass autostart bluray cec crystalhd debug dvb dvd \
+egl fftw +hls ieee1394 jack lcd lirc perl pulseaudio python raop +theora \
+vaapi vdpau +vorbis +wrapper +xml xmltv +xvid ${IUSE_INPUT_DEVICES}"
+
+REQUIRED_USE="
+ bluray? ( xml )
+ python? ( ${PYTHON_REQUIRED_USE} )
+ theora? ( vorbis )"
+
+COMMON="
+ >=media-libs/freetype-2.0:=
+ >=media-sound/lame-3.93.1
+ sys-libs/zlib:=
+ x11-libs/libX11:=
+ x11-libs/libXext:=
+ x11-libs/libXinerama:=
+ x11-libs/libXv:=
+ x11-libs/libXrandr:=
+ x11-libs/libXxf86vm:=
+ >=dev-qt/qtcore-4.7.2:4=
+ >=dev-qt/qtdbus-4.7.2:4=
+ >=dev-qt/qtgui-4.7.2:4=
+ >=dev-qt/qtscript-4.7.2:4=
+ >=dev-qt/qtsql-4.7.2:4=[mysql]
+ >=dev-qt/qtopengl-4.7.2:4=[egl?]
+ >=dev-qt/qtwebkit-4.7.2:4=
+ x11-misc/wmctrl:=
+ virtual/mysql
+ virtual/opengl:=
+ alsa? ( >=media-libs/alsa-lib-1.0.24:= )
+ bluray? (
+ dev-libs/libcdio:=
+ media-libs/libbluray:=
+ sys-fs/udisks:0
+ )
+ cec? ( dev-libs/libcec:= )
+ dvb? (
+ media-libs/libdvb:=
+ virtual/linuxtv-dvb-headers:=
+ )
+ dvd? (
+ dev-libs/libcdio:=
+ sys-fs/udisks:0
+ )
+ egl? ( media-libs/mesa:=[egl] )
+ fftw? ( sci-libs/fftw:3.0= )
+ hls? (
+ media-libs/faac:=
+ media-libs/libvpx:=
+ >=media-libs/x264-0.0.20111220:=
+ )
+ ieee1394? (
+ >=sys-libs/libraw1394-1.2.0:=
+ >=sys-libs/libavc1394-0.5.3:=
+ >=media-libs/libiec61883-1.0.0:=
+ )
+ jack? ( media-sound/jack-audio-connection-kit )
+ lcd? ( app-misc/lcdproc )
+ libass? ( >=media-libs/libass-0.9.11:= )
+ lirc? ( app-misc/lirc )
+ perl? (
+ dev-perl/DBD-mysql
+ dev-perl/Net-UPnP
+ dev-perl/LWP-Protocol-https
+ dev-perl/HTTP-Message
+ dev-perl/IO-Socket-INET6
+ >=dev-perl/libwww-perl-5
+ )
+ pulseaudio? ( media-sound/pulseaudio )
+ python? (
+ ${PYTHON_DEPS}
+ dev-python/mysql-python
+ dev-python/lxml
+ dev-python/urlgrabber
+ )
+ raop? (
+ dev-libs/openssl:=
+ net-dns/avahi[mdnsresponder-compat]
+ )
+ theora? ( media-libs/libtheora:= media-libs/libogg:= )
+ vaapi? ( x11-libs/libva:= )
+ vdpau? ( x11-libs/libvdpau:= )
+ vorbis? ( >=media-libs/libvorbis-1.0:= media-libs/libogg:= )
+ xml? ( >=dev-libs/libxml2-2.6.0:= )
+ xvid? ( >=media-libs/xvid-1.1.0:= )
+ !media-tv/mythtv-bindings
+ !x11-themes/mythtv-themes
+ media-libs/taglib:=
+ dev-libs/glib:=
+ "
+
+RDEPEND="${COMMON}
+ media-fonts/corefonts
+ media-fonts/dejavu
+ media-fonts/liberation-fonts
+ x11-apps/xinit
+ autostart? (
+ net-dialup/mingetty
+ x11-wm/evilwm
+ x11-apps/xset
+ )
+ dvd? ( media-libs/libdvdcss:= )
+ xmltv? ( >=media-tv/xmltv-0.5.43 )
+ "
+
+DEPEND="${COMMON}
+ dev-lang/yasm
+ x11-proto/xineramaproto
+ x11-proto/xf86vidmodeproto
+ "
+
+S="${WORKDIR}/${MY_P}/mythtv"
+
+MYTHTV_GROUPS="video,audio,tty,uucp"
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+ enewuser mythtv -1 /bin/bash /home/mythtv ${MYTHTV_GROUPS}
+ usermod -a -G ${MYTHTV_GROUPS} mythtv
+}
+
+src_prepare() {
+ [[ -n ${BACKPORTS} ]] && \
+ EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/../patches" \
+ epatch
+
+ # Perl bits need to go into vender_perl and not site_perl
+ sed -e "s:pure_install:pure_install INSTALLDIRS=vendor:" \
+ -i "${S}"/bindings/perl/Makefile
+
+ # Fix up the version info since we are using the fixes/${PV} branch
+ echo "SOURCE_VERSION=\"${MYTHTV_VERSION}\"" > "${S}"/VERSION
+ echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/VERSION
+ echo "SOURCE_VERSION=\"${BACKPORTS}\"" > "${S}"/EXPORTED_VERSION
+ echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/EXPORTED_VERSION
+
+ echo "setting.extra -= -ldconfig" >> "${S}"/programs/mythfrontend/mythfrontend.pro
+
+ epatch "${FILESDIR}/libdir-27.patch"
+
+ epatch_user
+}
+
+src_configure() {
+ local myconf=
+
+ # Setup paths
+ myconf="${myconf} --prefix=${EPREFIX}/usr"
+ myconf="${myconf} --libdir=${EPREFIX}/usr/$(get_libdir)"
+ myconf="${myconf} --libdir-name=$(get_libdir)"
+ myconf="${myconf} --mandir=${EPREFIX}/usr/share/man"
+
+ # Audio
+ myconf="${myconf} $(use_enable alsa audio-alsa)"
+ myconf="${myconf} $(use_enable jack audio-jack)"
+ use pulseaudio || myconf="${myconf} --disable-audio-pulseoutput"
+
+ use altivec || myconf="${myconf} --disable-altivec"
+ myconf="${myconf} $(use_enable dvb)"
+ myconf="${myconf} $(use_enable ieee1394 firewire)"
+ myconf="${myconf} $(use_enable lirc)"
+ myconf="${myconf} $(use_enable xvid libxvid)"
+ myconf="${myconf} --dvb-path=/usr/include"
+ myconf="${myconf} --enable-xrandr"
+ myconf="${myconf} --enable-xv"
+ myconf="${myconf} --enable-x11"
+ myconf="${myconf} --enable-nonfree"
+ myconf="${myconf} --enable-libmp3lame"
+ use cec || myconf="${myconf} --disable-libcec"
+ use raop || myconf="${myconf} --disable-libdns-sd"
+ myconf="${myconf} $(use_enable theora libtheora)"
+ myconf="${myconf} $(use_enable vorbis libvorbis)"
+
+ if use hls; then
+ myconf="${myconf} --enable-libx264"
+ myconf="${myconf} --enable-libvpx"
+ myconf="${myconf} --enable-libfaac"
+ fi
+
+ myconf="${myconf} $(use_enable libass)"
+
+ if use perl && use python; then
+ myconf="${myconf} --with-bindings=perl,python"
+ elif use perl; then
+ myconf="${myconf} --without-bindings=python"
+ myconf="${myconf} --with-bindings=perl"
+ elif use python; then
+ myconf="${myconf} --without-bindings=perl"
+ myconf="${myconf} --with-bindings=python"
+ else
+ myconf="${myconf} --without-bindings=perl,python"
+ fi
+
+ use python && myconf="${myconf} --python=$(EPYTHON)"
+
+ if use debug; then
+ myconf="${myconf} --compile-type=debug"
+ else
+ myconf="${myconf} --compile-type=release"
+ #myconf="${myconf} --enable-debug" does nothing per sphery
+ #myconf="${myconf} --disable-stripping" does nothing per sphery
+ fi
+
+ # Video
+ use vdpau && myconf="${myconf} --enable-vdpau"
+ myconf="${myconf} $(use_enable vaapi)"
+ use crystalhd && myconf="${myconf} --enable-crystalhd"
+
+ # Input
+ use input_devices_joystick || myconf="${myconf} --disable-joystick-menu"
+
+ # Clean up DSO load times and other compiler bits
+ myconf="${myconf} --enable-symbol-visibility"
+ myconf="${myconf} --enable-pic"
+
+ # CPU settings
+ for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
+ [ "${i}" = "native" ] && i="host"
+ myconf="${myconf} --cpu=${i}"
+ break
+ done
+
+ if tc-is-cross-compiler ; then
+ myconf="${myconf} --enable-cross-compile --arch=$(tc-arch-kernel)"
+ myconf="${myconf} --cross-prefix=${CHOST}-"
+ fi
+
+ # Build boosters
+ has distcc ${FEATURES} || myconf="${myconf} --disable-distcc"
+ has ccache ${FEATURES} || myconf="${myconf} --disable-ccache"
+
+ chmod +x ./external/FFmpeg/version.sh
+
+ einfo "Running ./configure ${myconf}"
+ ./configure \
+ --cc="$(tc-getCC)" \
+ --cxx="$(tc-getCXX)" \
+ --ar="$(tc-getAR)" \
+ --extra-cflags="${CFLAGS}" \
+ --extra-cxxflags="${CXXFLAGS}" \
+ --extra-ldflags="${LDFLAGS}" \
+ ${myconf} || die "configure died"
+}
+
+src_install() {
+ emake INSTALL_ROOT="${D}" install || die "install failed"
+ dodoc AUTHORS UPGRADING README
+
+ insinto /usr/share/mythtv/database
+ doins database/*
+
+ newinitd "${FILESDIR}"/mythbackend.init-r1 mythbackend
+ newconfd "${FILESDIR}"/mythbackend.conf-r1 mythbackend
+ systemd_dounit "${FILESDIR}"/mythbackend.service
+
+ dodoc keys.txt
+
+ keepdir /etc/mythtv
+ chown -R mythtv "${ED}"/etc/mythtv
+ keepdir /var/log/mythtv
+ chown -R mythtv "${ED}"/var/log/mythtv
+ dodir /var/log/mythtv/old
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/mythtv.logrotate.d-r4 mythtv
+
+ insinto /usr/share/mythtv/contrib
+ # Ensure we don't install scripts needing the perl bindings (bug #516968)
+ use perl || find contrib/ -name '*.pl' -exec rm -f {} \;
+ # Ensure we don't install scripts needing the python bindings (bug #516968)
+ use python || find contrib/ -name '*.py' -exec rm -f {} \;
+ doins -r contrib/*
+
+ # Install our mythfrontend wrapper which is similar to Mythbuntu's
+ if use wrapper; then
+ mv "${ED}/usr/bin/mythfrontend" "${ED}/usr/bin/mythfrontend.real"
+ newbin "${FILESDIR}"/mythfrontend.wrapper mythfrontend
+ newconfd "${FILESDIR}"/mythfrontend.conf mythfrontend
+ fi
+
+ if use autostart; then
+ dodir /etc/env.d/
+ echo 'CONFIG_PROTECT="/home/mythtv/"' > "${ED}"/etc/env.d/95mythtv
+
+ insinto /home/mythtv
+ newins "${FILESDIR}"/bash_profile .bash_profile
+ newins "${FILESDIR}"/xinitrc-r1 .xinitrc
+ fi
+
+ # Make Python files executable
+ find "${ED}/usr/share/mythtv" -type f -name '*.py' | while read file; do
+ if [[ ! "${file##*/}" = "__init__.py" ]]; then
+ chmod a+x "${file}"
+ fi
+ done
+
+ # Ensure that Python scripts are executed by Python 2
+ python_convert_shebangs -q -r 2 "${ED}/usr/share/mythtv"
+
+ # Make shell & perl scripts executable
+ find "${ED}" -type f -name '*.sh' -o -type f -name '*.pl' | \
+ while read file; do
+ chmod a+x "${file}"
+ done
+}
+
+pkg_preinst() {
+ export CONFIG_PROTECT="${CONFIG_PROTECT} ${EROOT}/home/mythtv/"
+}
+
+pkg_postinst() {
+ use python && python_mod_optimize MythTV
+
+ elog "To have this machine operate as recording host for MythTV, "
+ elog "mythbackend must be running. Run the following:"
+ elog "rc-update add mythbackend default"
+ elog
+ elog "Your recordings folder must be owned 'mythtv'. e.g."
+ elog "chown -R mythtv /var/lib/mythtv"
+
+ elog "Want mythfrontend to start automatically?"
+ elog "Set USE=autostart. Details can be found at:"
+ elog "https://dev.gentoo.org/~cardoe/mythtv/autostart.html"
+ elog
+ elog "Note that the systemd unit now restarts by default and logs"
+ elog "to journald via the console at the notice verbosity."
+}
+
+pkg_postrm() {
+ use python && python_mod_cleanup MythTV
+}
+
+pkg_info() {
+ if [[ -f "${EROOT}"/usr/bin/mythfrontend ]]; then
+ "${EROOT}"/usr/bin/mythfrontend --version
+ fi
+}
+
+pkg_config() {
+ echo "Creating mythtv MySQL user and mythconverg database if it does not"
+ echo "already exist. You will be prompted for your MySQL root password."
+ "${EROOT}"/usr/bin/mysql -u root -p < "${EROOT}"/usr/share/mythtv/database/mc.sql
+}
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/, media-tv/mythtv/files/
@ 2017-08-11 15:14 Andreas Sturmlechner
0 siblings, 0 replies; 16+ messages in thread
From: Andreas Sturmlechner @ 2017-08-11 15:14 UTC (permalink / raw
To: gentoo-commits
commit: efb447520ee5333ab19edaf277c77f6adec07a76
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 11 15:08:53 2017 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Fri Aug 11 15:11:13 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=efb44752
media-tv/mythtv: Drop 0.27.6
Gentoo-bug: 620706
Package-Manager: Portage-2.3.6, Repoman-2.3.3
media-tv/mythtv/Manifest | 1 -
media-tv/mythtv/files/libdir-27.patch | 13 -
media-tv/mythtv/files/mythbackend.conf | 11 -
media-tv/mythtv/files/mythbackend.init | 55 ----
media-tv/mythtv/files/mythbackend.service | 66 ----
.../mythtv/files/mythtv-0.27.6-libvpx-1.5.0.patch | 17 -
media-tv/mythtv/mythtv-0.27.6_p20160318-r1.ebuild | 359 ---------------------
7 files changed, 522 deletions(-)
diff --git a/media-tv/mythtv/Manifest b/media-tv/mythtv/Manifest
index 8fdb1e25636..c9722df0b5b 100644
--- a/media-tv/mythtv/Manifest
+++ b/media-tv/mythtv/Manifest
@@ -1,2 +1 @@
-DIST mythtv-0.27.6_p20160318.tar.gz 85676387 SHA256 d0b8c03d95e082e87e0fab8656358e9f3991cd08b2ec5edcbb10a9a91b1e4162 SHA512 7e94d07b4f99a15b978b42d8be11f329a938842b02ad99c9628ab6dda2fa802ca7148c5db9e6f7fae40f44027f55e69f1cdb6879ee83400934025f18ac68468f WHIRLPOOL d0f040c1ecb35e5c526477134d756a67d978aeefbf478b624eaa16e4ca1639e3b8f038507052b7d05e3a18fb85fd4e1eaeeb1a185ccfdf0fb2255fdc657be6c1
DIST mythtv-0.28.1.tar.gz 104477892 SHA256 73dd4de0de6fe5688c290781b76de6380b256a87159f2c6e3dad66870389da1f SHA512 67a81858cd19b90f519113b234119ecc248366d8545c862d887755f256cddf04d9ca16a7bf67f63e06f7628730e7dbde2a2099ca8aaeb9061b2e55a5a0b7d5e7 WHIRLPOOL 370f3a528438d50d302ab6adadba5089b32749f8127cbf270b85ef16d35ca15026e0947e292920a3dd6acf2ed65de68af8754d985944bd59f3310a42b03551de
diff --git a/media-tv/mythtv/files/libdir-27.patch b/media-tv/mythtv/files/libdir-27.patch
deleted file mode 100644
index d25e714b3c6..00000000000
--- a/media-tv/mythtv/files/libdir-27.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/mythtv/configure b/mythtv/configure
-index 4aa8727..f890df3 100755
---- a/mythtv/configure
-+++ b/mythtv/configure
-@@ -6475,7 +6475,7 @@ if enabled mythlogserver; then
- echo "Configuring zeromq..."
- (cd external/zeromq ; \
- ./configure --quiet --without-documentation --prefix=${prefix} \
-- --includedir=${prefix}/include/mythtv/zeromq)
-+ --includedir=${prefix}/include/mythtv/zeromq --libdir=${libdir})
- echo "Configuring nzmqt..."
- (cd external/nzmqt/src ; \
- ${qmakeconf} -o Makefile)
diff --git a/media-tv/mythtv/files/mythbackend.conf b/media-tv/mythtv/files/mythbackend.conf
deleted file mode 100644
index 964e8d3955a..00000000000
--- a/media-tv/mythtv/files/mythbackend.conf
+++ /dev/null
@@ -1,11 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# Accepts any valid combination of logging options to mythbackend
-# To get a valid list run: /usr/bin/mythbackend -v help
-#MYTHBACKEND_VERBOSE="general"
-
-
-# Allows you to pass specific startup options to mythbackend
-# e.g. --noupnp
-#MYTHBACKEND_OPTS=""
diff --git a/media-tv/mythtv/files/mythbackend.init b/media-tv/mythtv/files/mythbackend.init
deleted file mode 100644
index 343247df2fb..00000000000
--- a/media-tv/mythtv/files/mythbackend.init
+++ /dev/null
@@ -1,55 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-description="MythTV backend recording daemon"
-extra_commands="resched upnprebuild"
-description_resched="Forces the recording scheduler to update"
-description_upnprebuild="Rebuilds the UPnP media cache"
-
-depend() {
- # mythbackend doesn't need to run on the same machine that
- # mysql runs on. so its use for that reason
- need net
- use mysql LCDd
-}
-
-start() {
- [ -z "${MYTHBACKEND_VERBOSE}" ] && \
- MYTHBACKEND_VERBOSE="general"
-
- #fixes for bug #101308
- unset DISPLAY
- unset SESSION_MANAGER
-
- # Work around any strange permissions that may be on these files.
- chown -R mythtv:video /var/log/mythtv/
- chown -R mythtv:video /home/mythtv/
-
- ebegin "Starting MythTV Backend"
- start-stop-daemon --start --quiet --exec /usr/bin/mythbackend \
- --pidfile /var/run/mythbackend.pid -- \
- --daemon --pidfile /var/run/mythbackend.pid --user mythtv \
- --verbose ${MYTHBACKEND_VERBOSE} \
- --logpath /var/log/mythtv/ \
- ${MYTHBACKEND_OPTS}
- eend $?
-}
-
-stop() {
- ebegin "Stopping MythTV Backend"
- start-stop-daemon --stop --quiet --pidfile=/var/run/mythbackend.pid
- eend $?
-}
-
-resched() {
- ebegin "Updating the recording scheduler"
- /usr/bin/mythbackend --resched
- eend $?
-}
-
-upnprebuild() {
- ebegin "Rebuilding UPnP media cache"
- /usr/bin/mythbackend --upnprebuild
- eend $?
-}
diff --git a/media-tv/mythtv/files/mythbackend.service b/media-tv/mythtv/files/mythbackend.service
deleted file mode 100644
index 496c7b295e1..00000000000
--- a/media-tv/mythtv/files/mythbackend.service
+++ /dev/null
@@ -1,66 +0,0 @@
-# Do not edit this file, it will be replaced on update
-# If you need to make modifications to this unit file first make a copy in # /etc/systemd/system
-
-# This file is part of the packaging of MythTV #
-# MythTV is free software; view http://www.mythtv.org for more information.
-#
-# It is sometimes necessary to wait for a capture device to finish (hot)plug
-# initialization before the backend starts. If this is necessary,
-# create a Wants and After entry for all the capture devices that
-# one wishes to wait to be created before the backend starts using the systemd
-# device name mangling names (/dev/some/thing turns
-# into dev-some-thing.device). These normally should be udev persistent
-# filename rules to avoid confusion.
-# See the MythTV wiki for udev persistent filename # discussions found at:
-# http://www.mythtv.org/wiki/Device_Filenames_and_udev
-#
-# In order to insure that systemd will create a device unit for the
-# capture device, one must insure that udev will have the tag "systemd"
-# (i.e. add TAG+="systemd" to the udev rule).
-#
-# The MythTV package ships with a default udev rule file located in:
-# /lib/udev/rules.d/99-mythbackend.rules
-
-[Unit]
-Description=MythTV backend service
-After=network.target mysqld.service
-# Uncomment the following line if you will be using the mythweb plugin on the
-# same system as mythbackend.
-#Wants=httpd.service
-
-[Service]
-Type=simple
-
-Environment=MYTHCONFDIR=/etc/mythtv
-# Default setting assumes a system wide install. Otherwise it should be set to
-# the folder containing the .mythtv subfolder containing the config.xml file
-# Such as
-#Environment=HOME=/usr/share/mythtv
-# or
-Environment=HOME=/~/.mythtv
-
-# systemd changes execution from the calling user (possibly root) to this user
-# if you have permissions problems or obscure errors try logging in as mythtv
-# See notes below
-User=mythtv
-
-# Uncomment one of the following...
-# Use sysloging rather than separate logging:
-#ExecStart=/usr/bin/mythbackend --syslog local7
-
-# If Type=forking you must specify the --daemon and --pidfile options:
-#ExecStart=/usr/bin/mythbackend --daemon --logpath /var/log/mythtv --loglevel crit --pidfile /run/mythtv/mythbackend.pid
-#PIDFILE=/run/mythtv/mythbackend.pid
-
-# Systemd sends stdout to syslog, and mythbackend has console logging enabled without --daemon.
-# Send stdout to /dev/null so console logging doesn't go to syslog
-#StandardOutput=null
-# Default setting for Type=simple.
-#ExecStart=/usr/bin/mythbackend --logpath /var/log/mythtv --loglevel crit
-ExecStart=/usr/bin/mythbackend --loglevel notice --nologserver
-
-# Whether systemd will continue over-watch and restart on any halt
-Restart=always
-
-[Install]
-WantedBy=multi-user.target
diff --git a/media-tv/mythtv/files/mythtv-0.27.6-libvpx-1.5.0.patch b/media-tv/mythtv/files/mythtv-0.27.6-libvpx-1.5.0.patch
deleted file mode 100644
index 578feaae1b0..00000000000
--- a/media-tv/mythtv/files/mythtv-0.27.6-libvpx-1.5.0.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Gentoo-bug: 600094
-
---- a/mythtv/external/FFmpeg/libavcodec/libvpxenc.c
-+++ b/mythtv/external/FFmpeg/libavcodec/libvpxenc.c
-@@ -87,9 +87,9 @@
-
- /** String mappings for enum vp8e_enc_control_id */
- static const char *const ctlidstr[] = {
-- [VP8E_UPD_ENTROPY] = "VP8E_UPD_ENTROPY",
-- [VP8E_UPD_REFERENCE] = "VP8E_UPD_REFERENCE",
-- [VP8E_USE_REFERENCE] = "VP8E_USE_REFERENCE",
-+// [VP8E_UPD_ENTROPY] = "VP8E_UPD_ENTROPY",
-+// [VP8E_UPD_REFERENCE] = "VP8E_UPD_REFERENCE",
-+// [VP8E_USE_REFERENCE] = "VP8E_USE_REFERENCE",
- [VP8E_SET_ROI_MAP] = "VP8E_SET_ROI_MAP",
- [VP8E_SET_ACTIVEMAP] = "VP8E_SET_ACTIVEMAP",
- [VP8E_SET_SCALEMODE] = "VP8E_SET_SCALEMODE",
diff --git a/media-tv/mythtv/mythtv-0.27.6_p20160318-r1.ebuild b/media-tv/mythtv/mythtv-0.27.6_p20160318-r1.ebuild
deleted file mode 100644
index aeefe6f87aa..00000000000
--- a/media-tv/mythtv/mythtv-0.27.6_p20160318-r1.ebuild
+++ /dev/null
@@ -1,359 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-PYTHON_COMPAT=( python2_7 )
-
-# git diff --relative=mythtv v0.27.6.. > ~/mythtv-0.27.6/patches/mythtv.patch
-BACKPORTS="b6ae90c071a9a8eac9873fae988d5eb2434f3160"
-MY_P=${P%_p*}
-MY_PV=${PV%_p*}
-
-inherit flag-o-matic multilib eutils python-single-r1 user systemd vcs-snapshot
-
-MYTHTV_BRANCH="fixes/0.27"
-
-DESCRIPTION="Homebrew PVR project"
-HOMEPAGE="http://www.mythtv.org"
-SRC_URI="https://github.com/MythTV/mythtv/archive/${BACKPORTS}.tar.gz -> ${P}.tar.gz"
-
-SLOT="0/${PV}"
-LICENSE="GPL-2"
-KEYWORDS="amd64 x86"
-
-IUSE_INPUT_DEVICES="input_devices_joystick"
-IUSE="alsa altivec libass autostart bluray cec crystalhd debug dvb dvd \
-egl fftw +hls ieee1394 jack lcd lirc perl pulseaudio python +theora \
-vaapi vdpau +vorbis +wrapper +xml xmltv +xvid zeroconf ${IUSE_INPUT_DEVICES}"
-
-REQUIRED_USE="
- bluray? ( xml )
- python? ( ${PYTHON_REQUIRED_USE} )
- theora? ( vorbis )"
-
-COMMON="
- >=media-libs/freetype-2.0:=
- >=media-sound/lame-3.93.1
- sys-libs/zlib:=
- x11-libs/libX11:=
- x11-libs/libXext:=
- x11-libs/libXinerama:=
- x11-libs/libXv:=
- x11-libs/libXrandr:=
- x11-libs/libXxf86vm:=
- >=dev-qt/qtcore-4.7.2:4=
- >=dev-qt/qtdbus-4.7.2:4=
- >=dev-qt/qtgui-4.7.2:4=
- >=dev-qt/qtscript-4.7.2:4=
- >=dev-qt/qtsql-4.7.2:4=[mysql]
- >=dev-qt/qtopengl-4.7.2:4=[egl?]
- >=dev-qt/qtwebkit-4.7.2:4=
- x11-misc/wmctrl:=
- virtual/mysql
- virtual/opengl:=
- alsa? ( >=media-libs/alsa-lib-1.0.24:= )
- zeroconf? (
- dev-libs/openssl:0=
- net-dns/avahi[mdnsresponder-compat]
- )
- bluray? (
- dev-libs/libcdio:=
- media-libs/libbluray:=
- sys-fs/udisks:0
- )
- cec? ( dev-libs/libcec:= )
- dvb? (
- media-libs/libdvb:=
- virtual/linuxtv-dvb-headers:=
- )
- dvd? (
- dev-libs/libcdio:=
- sys-fs/udisks:0
- )
- egl? ( media-libs/mesa:=[egl] )
- fftw? ( sci-libs/fftw:3.0= )
- hls? (
- media-libs/faac:=
- <media-libs/libvpx-1.6.0:=
- >=media-libs/x264-0.0.20111220:=
- )
- ieee1394? (
- >=sys-libs/libraw1394-1.2.0:=
- >=sys-libs/libavc1394-0.5.3:=
- >=media-libs/libiec61883-1.0.0:=
- )
- jack? ( media-sound/jack-audio-connection-kit )
- lcd? ( app-misc/lcdproc )
- libass? ( >=media-libs/libass-0.9.11:= )
- lirc? ( app-misc/lirc )
- perl? (
- dev-perl/DBD-mysql
- dev-perl/Net-UPnP
- dev-perl/LWP-Protocol-https
- dev-perl/HTTP-Message
- dev-perl/IO-Socket-INET6
- >=dev-perl/libwww-perl-5
- )
- pulseaudio? ( media-sound/pulseaudio )
- python? (
- ${PYTHON_DEPS}
- dev-python/mysql-python
- dev-python/lxml
- dev-python/urlgrabber
- )
- theora? ( media-libs/libtheora:= media-libs/libogg:= )
- vaapi? ( x11-libs/libva:=[opengl] )
- vdpau? ( x11-libs/libvdpau:= )
- vorbis? ( >=media-libs/libvorbis-1.0:= media-libs/libogg:= )
- xml? ( >=dev-libs/libxml2-2.6.0:= )
- xvid? ( >=media-libs/xvid-1.1.0:= )
- !media-tv/mythtv-bindings
- !x11-themes/mythtv-themes
- media-libs/taglib:=
- dev-libs/glib:=
- "
-
-RDEPEND="${COMMON}
- media-fonts/corefonts
- media-fonts/dejavu
- media-fonts/liberation-fonts
- x11-apps/xinit
- autostart? (
- net-dialup/mingetty
- x11-wm/evilwm
- x11-apps/xset
- )
- dvd? ( media-libs/libdvdcss:= )
- xmltv? ( >=media-tv/xmltv-0.5.43 )
- "
-
-DEPEND="${COMMON}
- dev-lang/yasm
- x11-proto/xineramaproto
- x11-proto/xf86vidmodeproto
- "
-
-S="${WORKDIR}/${P}/mythtv"
-
-MYTHTV_GROUPS="video,audio,tty,uucp"
-
-pkg_setup() {
- python-single-r1_pkg_setup
- enewuser mythtv -1 /bin/bash /home/mythtv ${MYTHTV_GROUPS}
- usermod -a -G ${MYTHTV_GROUPS} mythtv
-}
-
-src_prepare() {
- # Perl bits need to go into vender_perl and not site_perl
- sed -e "s:pure_install:pure_install INSTALLDIRS=vendor:" \
- -i "${S}"/bindings/perl/Makefile
-
- # Fix up the version info since we are using the fixes/${PV} branch
- echo "SOURCE_VERSION=\"v${MY_PV}\"" > "${S}"/VERSION
- echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/VERSION
- echo "SOURCE_VERSION=\"${BACKPORTS}\"" > "${S}"/EXPORTED_VERSION
- echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/EXPORTED_VERSION
-
- echo "setting.extra -= -ldconfig" >> "${S}"/programs/mythfrontend/mythfrontend.pro
-
- epatch "${FILESDIR}/libdir-27.patch"
- epatch "${FILESDIR}/${PN}-0.27.6-libvpx-1.5.0.patch"
-
- epatch_user
-}
-
-src_configure() {
- local myconf=
-
- # Setup paths
- myconf="${myconf} --prefix=${EPREFIX}/usr"
- myconf="${myconf} --libdir=${EPREFIX}/usr/$(get_libdir)"
- myconf="${myconf} --libdir-name=$(get_libdir)"
- myconf="${myconf} --mandir=${EPREFIX}/usr/share/man"
-
- # Audio
- myconf="${myconf} $(use_enable alsa audio-alsa)"
- myconf="${myconf} $(use_enable jack audio-jack)"
- use pulseaudio || myconf="${myconf} --disable-audio-pulseoutput"
-
- use altivec || myconf="${myconf} --disable-altivec"
- myconf="${myconf} $(use_enable dvb)"
- myconf="${myconf} $(use_enable ieee1394 firewire)"
- myconf="${myconf} $(use_enable lirc)"
- myconf="${myconf} $(use_enable xvid libxvid)"
- myconf="${myconf} --dvb-path=/usr/include"
- myconf="${myconf} --enable-xrandr"
- myconf="${myconf} --enable-xv"
- myconf="${myconf} --enable-x11"
- myconf="${myconf} --enable-nonfree"
- myconf="${myconf} --enable-libmp3lame"
- use cec || myconf="${myconf} --disable-libcec"
- use zeroconf || myconf="${myconf} --disable-libdns-sd"
- myconf="${myconf} $(use_enable theora libtheora)"
- myconf="${myconf} $(use_enable vorbis libvorbis)"
-
- if use hls; then
- myconf="${myconf} --enable-libx264"
- myconf="${myconf} --enable-libvpx"
- myconf="${myconf} --enable-libfaac"
- fi
-
- myconf="${myconf} $(use_enable libass)"
-
- if use perl && use python; then
- myconf="${myconf} --with-bindings=perl,python"
- elif use perl; then
- myconf="${myconf} --without-bindings=python"
- myconf="${myconf} --with-bindings=perl"
- elif use python; then
- myconf="${myconf} --without-bindings=perl"
- myconf="${myconf} --with-bindings=python"
- else
- myconf="${myconf} --without-bindings=perl,python"
- fi
-
- use python && myconf="${myconf} --python=${EPYTHON}"
-
- if use debug; then
- myconf="${myconf} --compile-type=debug"
- else
- myconf="${myconf} --compile-type=release"
- #myconf="${myconf} --enable-debug" does nothing per sphery
- #myconf="${myconf} --disable-stripping" does nothing per sphery
- fi
-
- # Video
- myconf="${myconf} $(use_enable vdpau)"
- myconf="${myconf} $(use_enable vaapi)"
- myconf="${myconf} $(use_enable crystalhd)"
-
- # Input
- use input_devices_joystick || myconf="${myconf} --disable-joystick-menu"
-
- # Clean up DSO load times and other compiler bits
- myconf="${myconf} --enable-symbol-visibility"
- myconf="${myconf} --enable-pic"
-
- # CPU settings
- for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
- [ "${i}" = "native" ] && i="host"
- myconf="${myconf} --cpu=${i}"
- break
- done
-
- if tc-is-cross-compiler ; then
- myconf="${myconf} --enable-cross-compile --arch=$(tc-arch-kernel)"
- myconf="${myconf} --cross-prefix=${CHOST}-"
- fi
-
- # Build boosters
- has distcc ${FEATURES} || myconf="${myconf} --disable-distcc"
- has ccache ${FEATURES} || myconf="${myconf} --disable-ccache"
-
- chmod +x ./external/FFmpeg/version.sh
-
- einfo "Running ./configure ${myconf}"
- ./configure \
- --cc="$(tc-getCC)" \
- --cxx="$(tc-getCXX)" \
- --ar="$(tc-getAR)" \
- --extra-cflags="${CFLAGS}" \
- --extra-cxxflags="${CXXFLAGS}" \
- --extra-ldflags="${LDFLAGS}" \
- ${myconf} || die "configure died"
-}
-
-src_install() {
- emake INSTALL_ROOT="${D}" install || die "install failed"
- dodoc AUTHORS UPGRADING README
-
- insinto /usr/share/mythtv/database
- doins database/*
-
- newinitd "${FILESDIR}"/mythbackend.init-r2 mythbackend
- newconfd "${FILESDIR}"/mythbackend.conf-r1 mythbackend
- systemd_dounit "${FILESDIR}"/mythbackend.service
-
- dodoc keys.txt
-
- keepdir /etc/mythtv
- chown -R mythtv "${ED}"/etc/mythtv
- keepdir /var/log/mythtv
- chown -R mythtv "${ED}"/var/log/mythtv
- dodir /var/log/mythtv/old
-
- insinto /etc/logrotate.d
- newins "${FILESDIR}"/mythtv.logrotate.d-r4 mythtv
-
- insinto /usr/share/mythtv/contrib
- # Ensure we don't install scripts needing the perl bindings (bug #516968)
- use perl || find contrib/ -name '*.pl' -exec rm -f {} \;
- # Ensure we don't install scripts needing the python bindings (bug #516968)
- use python || find contrib/ -name '*.py' -exec rm -f {} \;
- doins -r contrib/*
-
- # Install our mythfrontend wrapper which is similar to Mythbuntu's
- if use wrapper; then
- mv "${ED}/usr/bin/mythfrontend" "${ED}/usr/bin/mythfrontend.real"
- newbin "${FILESDIR}"/mythfrontend.wrapper mythfrontend
- newconfd "${FILESDIR}"/mythfrontend.conf mythfrontend
- fi
-
- if use autostart; then
- dodir /etc/env.d/
- echo 'CONFIG_PROTECT="/home/mythtv/"' > "${ED}"/etc/env.d/95mythtv
-
- insinto /home/mythtv
- newins "${FILESDIR}"/bash_profile .bash_profile
- newins "${FILESDIR}"/xinitrc-r1 .xinitrc
- fi
-
- # Make Python files executable
- find "${ED}/usr/share/mythtv" -type f -name '*.py' | while read file; do
- if [[ ! "${file##*/}" = "__init__.py" ]]; then
- chmod a+x "${file}"
- fi
- done
-
- # Ensure that Python scripts are executed by Python 2
- python_fix_shebang "${ED}/usr/share/mythtv"
-
- # Make shell & perl scripts executable
- find "${ED}" -type f -name '*.sh' -o -type f -name '*.pl' | \
- while read file; do
- chmod a+x "${file}"
- done
-}
-
-pkg_preinst() {
- export CONFIG_PROTECT="${CONFIG_PROTECT} ${EROOT}/home/mythtv/"
-}
-
-pkg_postinst() {
- elog "To have this machine operate as recording host for MythTV, "
- elog "mythbackend must be running. Run the following:"
- elog "rc-update add mythbackend default"
- elog
- elog "Your recordings folder must be owned 'mythtv'. e.g."
- elog "chown -R mythtv /var/lib/mythtv"
-
- elog "Want mythfrontend to start automatically?"
- elog "Set USE=autostart. Details can be found at:"
- elog "https://dev.gentoo.org/~cardoe/mythtv/autostart.html"
- elog
- elog "Note that the systemd unit now restarts by default and logs"
- elog "to journald via the console at the notice verbosity."
-}
-
-pkg_info() {
- if [[ -f "${EROOT}"/usr/bin/mythfrontend ]]; then
- "${EROOT}"/usr/bin/mythfrontend --version
- fi
-}
-
-pkg_config() {
- echo "Creating mythtv MySQL user and mythconverg database if it does not"
- echo "already exist. You will be prompted for your MySQL root password."
- "${EROOT}"/usr/bin/mysql -u root -p < "${EROOT}"/usr/share/mythtv/database/mc.sql
-}
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/, media-tv/mythtv/files/
@ 2017-12-31 20:33 Pacho Ramos
0 siblings, 0 replies; 16+ messages in thread
From: Pacho Ramos @ 2017-12-31 20:33 UTC (permalink / raw
To: gentoo-commits
commit: 84c8c87379329675f379ca21aa36c7d72b1cecc5
Author: Pacho Ramos <pacho <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 31 20:31:42 2017 +0000
Commit: Pacho Ramos <pacho <AT> gentoo <DOT> org>
CommitDate: Sun Dec 31 20:32:51 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=84c8c873
media-tv/mythtv: It doesn't really need media-libs/libdvb for dvb support (#642606), bump eapi, don't show elog messages always, stop pre-stripping files.
Package-Manager: Portage-2.3.19, Repoman-2.3.6
media-tv/mythtv/files/mythtv-0.28.1-glibc225.patch | 4 +-
media-tv/mythtv/mythtv-0.28.1-r4.ebuild | 367 +++++++++++++++++++++
2 files changed, 369 insertions(+), 2 deletions(-)
diff --git a/media-tv/mythtv/files/mythtv-0.28.1-glibc225.patch b/media-tv/mythtv/files/mythtv-0.28.1-glibc225.patch
index 343a808076e..9e4543e86b1 100644
--- a/media-tv/mythtv/files/mythtv-0.28.1-glibc225.patch
+++ b/media-tv/mythtv/files/mythtv-0.28.1-glibc225.patch
@@ -13,8 +13,8 @@ On BSD platforms they remain defined in <sys/types.h>
diff --git a/mythtv/libs/libmythtv/videosource.cpp b/mythtv/libs/libmythtv/videosource.cpp
index 97618adc80..09dd95073d 100644
---- a/mythtv/libs/libmythtv/videosource.cpp
-+++ b/mythtv/libs/libmythtv/videosource.cpp
+--- mythtv/libs/libmythtv/videosource.cpp.old
++++ mythtv/libs/libmythtv/videosource.cpp
@@ -3,7 +3,11 @@
// Standard UNIX C headers
#include <unistd.h>
diff --git a/media-tv/mythtv/mythtv-0.28.1-r4.ebuild b/media-tv/mythtv/mythtv-0.28.1-r4.ebuild
new file mode 100644
index 00000000000..c030c6623d2
--- /dev/null
+++ b/media-tv/mythtv/mythtv-0.28.1-r4.ebuild
@@ -0,0 +1,367 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 )
+
+# git diff --relative=mythtv v0.27.6.. > ~/mythtv-0.27.6/patches/mythtv.patch
+BACKPORTS="03f44039848bd09444ff4baa8dc158bd61454079"
+MY_P=${P%_p*}
+MY_PV=${PV%_p*}
+
+inherit flag-o-matic python-single-r1 qmake-utils user readme.gentoo-r1 systemd vcs-snapshot
+
+MYTHTV_BRANCH="fixes/0.28"
+
+DESCRIPTION="Homebrew PVR project"
+HOMEPAGE="https://www.mythtv.org"
+SRC_URI="https://github.com/MythTV/mythtv/archive/${BACKPORTS}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~x86"
+SLOT="0/${PV}"
+
+IUSE_INPUT_DEVICES="input_devices_joystick"
+IUSE="alsa altivec autostart bluray cec crystalhd debug dvb dvd egl fftw +hls \
+ ieee1394 jack lcd libass lirc +mythlogserver perl pulseaudio python systemd +theora \
+ vaapi vdpau +vorbis +wrapper +xml xmltv +xvid zeroconf ${IUSE_INPUT_DEVICES}"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ bluray? ( xml )
+ theora? ( vorbis )"
+
+COMMON="
+ dev-libs/glib:2
+ dev-qt/qtcore:5
+ dev-qt/qtdbus:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtscript:5
+ dev-qt/qtsql:5[mysql]
+ dev-qt/qtopengl:5
+ dev-qt/qtwebkit:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ media-gfx/exiv2:=
+ media-libs/freetype:2
+ media-libs/taglib
+ >=media-sound/lame-3.93.1
+ sys-libs/zlib
+ virtual/mysql
+ virtual/opengl
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXinerama
+ x11-libs/libXv
+ x11-libs/libXrandr
+ x11-libs/libXxf86vm
+ x11-misc/wmctrl
+ alsa? ( >=media-libs/alsa-lib-1.0.24 )
+ bluray? (
+ dev-libs/libcdio:=
+ media-libs/libbluray:=
+ sys-fs/udisks:2
+ )
+ cec? ( dev-libs/libcec )
+ dvb? (
+ virtual/linuxtv-dvb-headers
+ )
+ dvd? (
+ dev-libs/libcdio:=
+ sys-fs/udisks:2
+ )
+ egl? ( media-libs/mesa[egl] )
+ fftw? ( sci-libs/fftw:3.0= )
+ hls? (
+ media-libs/faac
+ <media-libs/libvpx-1.7.0:=
+ >=media-libs/x264-0.0.20111220:=
+ )
+ ieee1394? (
+ >=media-libs/libiec61883-1.0.0
+ >=sys-libs/libavc1394-0.5.3
+ >=sys-libs/libraw1394-1.2.0
+ )
+ jack? ( media-sound/jack-audio-connection-kit )
+ lcd? ( app-misc/lcdproc )
+ libass? ( >=media-libs/libass-0.9.11:= )
+ lirc? ( app-misc/lirc )
+ perl? (
+ >=dev-perl/libwww-perl-5
+ dev-perl/DBD-mysql
+ dev-perl/HTTP-Message
+ dev-perl/IO-Socket-INET6
+ dev-perl/LWP-Protocol-https
+ dev-perl/Net-UPnP
+ )
+ pulseaudio? ( media-sound/pulseaudio )
+ python? (
+ ${PYTHON_DEPS}
+ dev-python/lxml
+ dev-python/mysql-python
+ dev-python/urlgrabber
+ )
+ systemd? ( sys-apps/systemd:= )
+ theora? ( media-libs/libtheora media-libs/libogg )
+ vaapi? ( x11-libs/libva:=[opengl] )
+ vdpau? ( x11-libs/libvdpau )
+ vorbis? ( >=media-libs/libvorbis-1.0 media-libs/libogg )
+ xml? ( >=dev-libs/libxml2-2.6.0 )
+ xvid? ( >=media-libs/xvid-1.1.0 )
+ zeroconf? (
+ dev-libs/openssl:0=
+ net-dns/avahi[mdnsresponder-compat]
+ )
+"
+RDEPEND="${COMMON}
+ !media-tv/mythtv-bindings
+ !x11-themes/mythtv-themes
+ media-fonts/corefonts
+ media-fonts/dejavu
+ media-fonts/liberation-fonts
+ x11-apps/xinit
+ autostart? (
+ net-dialup/mingetty
+ x11-apps/xset
+ x11-wm/evilwm
+ )
+ dvd? ( media-libs/libdvdcss )
+ xmltv? ( >=media-tv/xmltv-0.5.43 )
+"
+DEPEND="${COMMON}
+ dev-lang/yasm
+ x11-proto/xf86vidmodeproto
+ x11-proto/xineramaproto
+"
+
+S="${WORKDIR}/${P}/mythtv"
+
+DISABLE_AUTOFORMATTING="yes"
+DOC_CONTENTS="
+To have this machine operate as recording host for MythTV,
+mythbackend must be running. Run the following:
+rc-update add mythbackend default
+
+Your recordings folder must be owned 'mythtv'. e.g.
+chown -R mythtv /var/lib/mythtv
+
+Want mythfrontend to start automatically?
+Set USE=autostart. Details can be found at:
+https://dev.gentoo.org/~cardoe/mythtv/autostart.html
+
+Note that the systemd unit now restarts by default and logs
+to journald via the console at the notice verbosity.
+"
+
+MYTHTV_GROUPS="video,audio,tty,uucp"
+
+pkg_setup() {
+ python-single-r1_pkg_setup
+ enewuser mythtv -1 /bin/bash /home/mythtv ${MYTHTV_GROUPS}
+ usermod -a -G ${MYTHTV_GROUPS} mythtv
+}
+
+src_prepare() {
+ default
+
+ # Perl bits need to go into vender_perl and not site_perl
+ sed -e "s:pure_install:pure_install INSTALLDIRS=vendor:" \
+ -i "${S}"/bindings/perl/Makefile
+
+ # Fix up the version info since we are using the fixes/${PV} branch
+ echo "SOURCE_VERSION=\"v${MY_PV}\"" > "${S}"/VERSION
+ echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/VERSION
+ echo "SOURCE_VERSION=\"${BACKPORTS}\"" > "${S}"/EXPORTED_VERSION
+ echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/EXPORTED_VERSION
+
+ echo "setting.extra -= -ldconfig" >> "${S}"/programs/mythfrontend/mythfrontend.pro
+
+ eapply "${FILESDIR}/${P}-glibc225.patch"
+}
+
+src_configure() {
+ local myconf=
+
+ # Setup paths
+ myconf="${myconf} --prefix=${EPREFIX}/usr"
+ myconf="${myconf} --libdir=${EPREFIX}/usr/$(get_libdir)"
+ myconf="${myconf} --libdir-name=$(get_libdir)"
+ myconf="${myconf} --mandir=${EPREFIX}/usr/share/man"
+
+ # Audio
+ myconf="${myconf} $(use_enable alsa audio-alsa)"
+ myconf="${myconf} $(use_enable jack audio-jack)"
+ use pulseaudio || myconf="${myconf} --disable-audio-pulseoutput"
+
+ use altivec || myconf="${myconf} --disable-altivec"
+ myconf="${myconf} $(use_enable dvb)"
+ myconf="${myconf} $(use_enable ieee1394 firewire)"
+ myconf="${myconf} $(use_enable lirc)"
+ myconf="${myconf} $(use_enable xvid libxvid)"
+ myconf="${myconf} --dvb-path=/usr/include"
+ myconf="${myconf} --enable-xrandr"
+ myconf="${myconf} --enable-xv"
+ myconf="${myconf} --enable-x11"
+ myconf="${myconf} --enable-nonfree"
+ myconf="${myconf} --enable-libmp3lame"
+ use cec || myconf="${myconf} --disable-libcec"
+ use zeroconf || myconf="${myconf} --disable-libdns-sd"
+ myconf="${myconf} $(use_enable theora libtheora)"
+ myconf="${myconf} $(use_enable vorbis libvorbis)"
+
+ if use hls; then
+ myconf="${myconf} --enable-libx264"
+ myconf="${myconf} --enable-libvpx"
+ myconf="${myconf} --enable-libfaac"
+ fi
+
+ myconf="${myconf} $(use_enable libass)"
+
+ if use perl && use python; then
+ myconf="${myconf} --with-bindings=perl,python"
+ elif use perl; then
+ myconf="${myconf} --without-bindings=python"
+ myconf="${myconf} --with-bindings=perl"
+ elif use python; then
+ myconf="${myconf} --without-bindings=perl"
+ myconf="${myconf} --with-bindings=python"
+ else
+ myconf="${myconf} --without-bindings=perl,python"
+ fi
+
+ use python && myconf="${myconf} --python=${EPYTHON}"
+
+ if use debug; then
+ myconf="${myconf} --compile-type=debug"
+ else
+ myconf="${myconf} --compile-type=release"
+ #myconf="${myconf} --enable-debug" does nothing per sphery
+ myconf="${myconf} --disable-stripping" # FIXME: does not disable for all files, only for some
+ fi
+
+ # Video
+ myconf="${myconf} $(use_enable vdpau)"
+ myconf="${myconf} $(use_enable vaapi)"
+ myconf="${myconf} $(use_enable crystalhd)"
+
+ # Input
+ use input_devices_joystick || myconf="${myconf} --disable-joystick-menu"
+
+ # Clean up DSO load times and other compiler bits
+ myconf="${myconf} --enable-symbol-visibility"
+ myconf="${myconf} --enable-pic"
+
+ # CPU settings
+ for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
+ [ "${i}" = "native" ] && i="host"
+ myconf="${myconf} --cpu=${i}"
+ break
+ done
+
+ if tc-is-cross-compiler ; then
+ myconf="${myconf} --enable-cross-compile --arch=$(tc-arch-kernel)"
+ myconf="${myconf} --cross-prefix=${CHOST}-"
+ fi
+
+ # Build boosters
+ has distcc ${FEATURES} || myconf="${myconf} --disable-distcc"
+ has ccache ${FEATURES} || myconf="${myconf} --disable-ccache"
+
+ myconf="${myconf} $(use_enable systemd systemd_notify)"
+ use systemd || myconf="${myconf} $(use_enable mythlogserver)"
+
+ chmod +x ./external/FFmpeg/version.sh
+
+ einfo "Running ./configure ${myconf}"
+ ./configure \
+ --cc="$(tc-getCC)" \
+ --cxx="$(tc-getCXX)" \
+ --ar="$(tc-getAR)" \
+ --extra-cflags="${CFLAGS}" \
+ --extra-cxxflags="${CXXFLAGS}" \
+ --extra-ldflags="${LDFLAGS}" \
+ --qmake=$(qt5_get_bindir)/qmake \
+ ${myconf} || die "configure died"
+}
+
+src_install() {
+ emake STRIP="true" INSTALL_ROOT="${D}" install
+ dodoc AUTHORS UPGRADING README
+ readme.gentoo_create_doc
+
+ insinto /usr/share/mythtv/database
+ doins database/*
+
+ newinitd "${FILESDIR}"/mythbackend.init-r2 mythbackend
+ newconfd "${FILESDIR}"/mythbackend.conf-r1 mythbackend
+ systemd_newunit "${FILESDIR}"/mythbackend.service-28 mythbackend.service
+
+ dodoc keys.txt
+
+ keepdir /etc/mythtv
+ chown -R mythtv "${ED}"/etc/mythtv
+ keepdir /var/log/mythtv
+ chown -R mythtv "${ED}"/var/log/mythtv
+ dodir /var/log/mythtv/old
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/mythtv.logrotate.d-r4 mythtv
+
+ insinto /usr/share/mythtv/contrib
+ # Ensure we don't install scripts needing the perl bindings (bug #516968)
+ use perl || find contrib/ -name '*.pl' -exec rm -f {} \;
+ # Ensure we don't install scripts needing the python bindings (bug #516968)
+ use python || find contrib/ -name '*.py' -exec rm -f {} \;
+ doins -r contrib/*
+
+ # Install our mythfrontend wrapper which is similar to Mythbuntu's
+ if use wrapper; then
+ mv "${ED}/usr/bin/mythfrontend" "${ED}/usr/bin/mythfrontend.real"
+ newbin "${FILESDIR}"/mythfrontend.wrapper mythfrontend
+ newconfd "${FILESDIR}"/mythfrontend.conf mythfrontend
+ fi
+
+ if use autostart; then
+ dodir /etc/env.d/
+ echo 'CONFIG_PROTECT="/home/mythtv/"' > "${ED}"/etc/env.d/95mythtv
+
+ insinto /home/mythtv
+ newins "${FILESDIR}"/bash_profile .bash_profile
+ newins "${FILESDIR}"/xinitrc-r1 .xinitrc
+ fi
+
+ # Make Python files executable
+ find "${ED}/usr/share/mythtv" -type f -name '*.py' | while read file; do
+ if [[ ! "${file##*/}" = "__init__.py" ]]; then
+ chmod a+x "${file}"
+ fi
+ done
+
+ # Ensure that Python scripts are executed by Python 2
+ python_fix_shebang "${ED}/usr/share/mythtv"
+
+ # Make shell & perl scripts executable
+ find "${ED}" -type f -name '*.sh' -o -type f -name '*.pl' | \
+ while read file; do
+ chmod a+x "${file}"
+ done
+}
+
+pkg_preinst() {
+ export CONFIG_PROTECT="${CONFIG_PROTECT} ${EROOT}/home/mythtv/"
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+}
+
+pkg_info() {
+ if [[ -f "${EROOT}"/usr/bin/mythfrontend ]]; then
+ "${EROOT}"/usr/bin/mythfrontend --version
+ fi
+}
+
+pkg_config() {
+ echo "Creating mythtv MySQL user and mythconverg database if it does not"
+ echo "already exist. You will be prompted for your MySQL root password."
+ "${EROOT}"/usr/bin/mysql -u root -p < "${EROOT}"/usr/share/mythtv/database/mc.sql
+}
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/, media-tv/mythtv/files/
@ 2018-06-25 14:44 Lars Wendler
0 siblings, 0 replies; 16+ messages in thread
From: Lars Wendler @ 2018-06-25 14:44 UTC (permalink / raw
To: gentoo-commits
commit: 0ebdd558a60577558cf0aafb312b777204a1085b
Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Mon Jun 25 14:43:47 2018 +0000
Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Jun 25 14:43:47 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0ebdd558
media-tv/mythtv: Replaced freetype-config with pkg-config
Bug: https://bugs.gentoo.org/658534
Package-Manager: Portage-2.3.40, Repoman-2.3.9
.../files/mythtv-29.2-freetype_pkgconfig.patch | 28 ++++++++++++++++++++++
media-tv/mythtv/mythtv-0.28.1-r4.ebuild | 1 +
2 files changed, 29 insertions(+)
diff --git a/media-tv/mythtv/files/mythtv-29.2-freetype_pkgconfig.patch b/media-tv/mythtv/files/mythtv-29.2-freetype_pkgconfig.patch
new file mode 100644
index 00000000000..fa248907f27
--- /dev/null
+++ b/media-tv/mythtv/files/mythtv-29.2-freetype_pkgconfig.patch
@@ -0,0 +1,28 @@
+From 8cbb51a829ca4602da75c359bc598130c19264c4 Mon Sep 17 00:00:00 2001
+From: Peter Bennett <pbennett@mythtv.org>
+Date: Wed, 9 May 2018 19:17:12 -0400
+Subject: [PATCH] configure: new version of freetype2 does not support
+ freetype-config
+
+freetype2 v2.9.1 uses only pkgconfig and removes support for freetype-config
+
+Fixes #13262
+---
+ mythtv/configure | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/mythtv/configure b/mythtv/configure
+index 8b55291685b..a378fc44dde 100755
+--- a/mythtv/configure
++++ b/mythtv/configure
+@@ -7406,8 +7406,8 @@ if enabled darwin_da; then
+ fi
+
+ if enabled freetype2; then
+- echo "FREETYPE_CFLAGS=`freetype-config --cflags`" >> $TMPMAK
+- echo "FREETYPE_LIBS=`freetype-config --libs`" >> $TMPMAK
++ echo "FREETYPE_CFLAGS=$($pkg_config --cflags $pkg_config_flags freetype2)" >> $TMPMAK
++ echo "FREETYPE_LIBS=$($pkg_config --libs $pkg_config_flags freetype2)" >> $TMPMAK
+ fi
+
+ if test $target_os = darwin; then
diff --git a/media-tv/mythtv/mythtv-0.28.1-r4.ebuild b/media-tv/mythtv/mythtv-0.28.1-r4.ebuild
index 50c45fc9e8b..9faa120b8df 100644
--- a/media-tv/mythtv/mythtv-0.28.1-r4.ebuild
+++ b/media-tv/mythtv/mythtv-0.28.1-r4.ebuild
@@ -175,6 +175,7 @@ src_prepare() {
echo "setting.extra -= -ldconfig" >> "${S}"/programs/mythfrontend/mythfrontend.pro
eapply "${FILESDIR}/${P}-glibc225.patch"
+ eapply -p2 "${FILESDIR}/${PN}-29.2-freetype_pkgconfig.patch" #658534
}
src_configure() {
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/, media-tv/mythtv/files/
@ 2018-08-09 13:45 Lars Wendler
0 siblings, 0 replies; 16+ messages in thread
From: Lars Wendler @ 2018-08-09 13:45 UTC (permalink / raw
To: gentoo-commits
commit: 797e35a438359be9ee9ae405fb2f41ebf270db71
Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 9 13:45:04 2018 +0000
Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Thu Aug 9 13:45:24 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=797e35a4
media-tv/mythtv: Fixed detection of >=qt-5.10
Package-Manager: Portage-2.3.45, Repoman-2.3.10
media-tv/mythtv/files/mythtv-0.28.1-qt511.patch | 11 +++++++++++
media-tv/mythtv/mythtv-0.28.1-r4.ebuild | 1 +
2 files changed, 12 insertions(+)
diff --git a/media-tv/mythtv/files/mythtv-0.28.1-qt511.patch b/media-tv/mythtv/files/mythtv-0.28.1-qt511.patch
new file mode 100644
index 00000000000..3fab1e6b548
--- /dev/null
+++ b/media-tv/mythtv/files/mythtv-0.28.1-qt511.patch
@@ -0,0 +1,11 @@
+--- a/configure
++++ b/configure
+@@ -5907,7 +5907,7 @@
+ enabled pic && enable_weak_pic
+
+ is_qmake5(){
+- $1 --version 2>&1 | egrep -q -e "Qt version 5\.[2-9]\.[0-9]"
++ $1 --version 2>&1 | egrep -q -e 'Qt version 5\.(([1-9][0-9]+)|[2-9])\.[0-9]'
+ }
+
+ # qmake-qt5 /usr/lib64/qt5/bin/qmake /usr/lib/x86_64-linux-gnu/qt5/bin/qmake
diff --git a/media-tv/mythtv/mythtv-0.28.1-r4.ebuild b/media-tv/mythtv/mythtv-0.28.1-r4.ebuild
index b5d2925cc37..24a3c0c7042 100644
--- a/media-tv/mythtv/mythtv-0.28.1-r4.ebuild
+++ b/media-tv/mythtv/mythtv-0.28.1-r4.ebuild
@@ -177,6 +177,7 @@ src_prepare() {
eapply "${FILESDIR}/${P}-glibc225.patch"
eapply -p2 "${FILESDIR}/${PN}-29.2-freetype_pkgconfig.patch" #658534
+ eapply "${FILESDIR}/${P}-qt511.patch"
}
src_configure() {
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/, media-tv/mythtv/files/
@ 2018-11-11 13:07 Pacho Ramos
0 siblings, 0 replies; 16+ messages in thread
From: Pacho Ramos @ 2018-11-11 13:07 UTC (permalink / raw
To: gentoo-commits
commit: f244dacaec1fad5de84c4f9017a173227520efcd
Author: Pacho Ramos <pacho <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 11 12:56:28 2018 +0000
Commit: Pacho Ramos <pacho <AT> gentoo <DOT> org>
CommitDate: Sun Nov 11 13:07:29 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f244daca
media-tv/mythtv: Drop old
Signed-off-by: Pacho Ramos <pacho <AT> gentoo.org>
Package-Manager: Portage-2.3.51, Repoman-2.3.11
media-tv/mythtv/Manifest | 1 -
media-tv/mythtv/files/mythtv-0.28.1-glibc225.patch | 29 --
media-tv/mythtv/files/mythtv-0.28.1-qt511.patch | 11 -
.../files/mythtv-29.2-freetype_pkgconfig.patch | 28 --
media-tv/mythtv/mythtv-0.28.1-r4.ebuild | 369 ---------------------
5 files changed, 438 deletions(-)
diff --git a/media-tv/mythtv/Manifest b/media-tv/mythtv/Manifest
index ea26a778e4d..c7eb8addfb8 100644
--- a/media-tv/mythtv/Manifest
+++ b/media-tv/mythtv/Manifest
@@ -1,2 +1 @@
-DIST mythtv-0.28.1.tar.gz 104477892 BLAKE2B bdecfc5723ec3495ab6e49c72caaa5c2dc62c75a11ce7524d3fd5cb8daec82b53b415591b6198eab00322bbbcaff2de7d4f1b7a165d449007f4c3742a69d304b SHA512 67a81858cd19b90f519113b234119ecc248366d8545c862d887755f256cddf04d9ca16a7bf67f63e06f7628730e7dbde2a2099ca8aaeb9061b2e55a5a0b7d5e7
DIST mythtv-29.1.tar.gz 105656634 BLAKE2B 8b9dfc6b1e1178bfd1b35e8d499afe570edeb1f07cefa64fc91c2ed74f8155f5ca00cee49a024848f715c0bb782fc22f3c4d04fd8eac8562d108e105d3a41421 SHA512 c80d84c40c019d093d44487fb4cd07d9ce3174781ff8f24a4709fd10294cb8f6186b3e480dad3a09f7a496835fa0cffcc9eca114f807794b693ffcd57acd4e39
diff --git a/media-tv/mythtv/files/mythtv-0.28.1-glibc225.patch b/media-tv/mythtv/files/mythtv-0.28.1-glibc225.patch
deleted file mode 100644
index 9e4543e86b1..00000000000
--- a/media-tv/mythtv/files/mythtv-0.28.1-glibc225.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From b012ff0f6b284969183863d42a6a14eb77ed0a1d Mon Sep 17 00:00:00 2001
-From: Stuart Auchterlonie <stuarta@mythtv.org>
-Date: Tue, 6 Jun 2017 22:39:03 +0100
-Subject: [PATCH] Refs #13047 - major() and minor() are defined in
- <sys/sysmacros.h>
-
-On BSD platforms they remain defined in <sys/types.h>
-
-(cherry picked from commit eca27c542b70deb58e50ad4581b2d6f6b2e1d3c2)
----
- mythtv/libs/libmythtv/videosource.cpp | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/mythtv/libs/libmythtv/videosource.cpp b/mythtv/libs/libmythtv/videosource.cpp
-index 97618adc80..09dd95073d 100644
---- mythtv/libs/libmythtv/videosource.cpp.old
-+++ mythtv/libs/libmythtv/videosource.cpp
-@@ -3,7 +3,11 @@
- // Standard UNIX C headers
- #include <unistd.h>
- #include <fcntl.h>
-+#if defined(__FreeBSD__) || CONFIG_DARWIN || defined(__OpenBSD__)
- #include <sys/types.h>
-+#else
-+#include <sys/sysmacros.h>
-+#endif
- #include <sys/stat.h>
-
- // C++ headers
diff --git a/media-tv/mythtv/files/mythtv-0.28.1-qt511.patch b/media-tv/mythtv/files/mythtv-0.28.1-qt511.patch
deleted file mode 100644
index 3fab1e6b548..00000000000
--- a/media-tv/mythtv/files/mythtv-0.28.1-qt511.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/configure
-+++ b/configure
-@@ -5907,7 +5907,7 @@
- enabled pic && enable_weak_pic
-
- is_qmake5(){
-- $1 --version 2>&1 | egrep -q -e "Qt version 5\.[2-9]\.[0-9]"
-+ $1 --version 2>&1 | egrep -q -e 'Qt version 5\.(([1-9][0-9]+)|[2-9])\.[0-9]'
- }
-
- # qmake-qt5 /usr/lib64/qt5/bin/qmake /usr/lib/x86_64-linux-gnu/qt5/bin/qmake
diff --git a/media-tv/mythtv/files/mythtv-29.2-freetype_pkgconfig.patch b/media-tv/mythtv/files/mythtv-29.2-freetype_pkgconfig.patch
deleted file mode 100644
index fa248907f27..00000000000
--- a/media-tv/mythtv/files/mythtv-29.2-freetype_pkgconfig.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 8cbb51a829ca4602da75c359bc598130c19264c4 Mon Sep 17 00:00:00 2001
-From: Peter Bennett <pbennett@mythtv.org>
-Date: Wed, 9 May 2018 19:17:12 -0400
-Subject: [PATCH] configure: new version of freetype2 does not support
- freetype-config
-
-freetype2 v2.9.1 uses only pkgconfig and removes support for freetype-config
-
-Fixes #13262
----
- mythtv/configure | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/mythtv/configure b/mythtv/configure
-index 8b55291685b..a378fc44dde 100755
---- a/mythtv/configure
-+++ b/mythtv/configure
-@@ -7406,8 +7406,8 @@ if enabled darwin_da; then
- fi
-
- if enabled freetype2; then
-- echo "FREETYPE_CFLAGS=`freetype-config --cflags`" >> $TMPMAK
-- echo "FREETYPE_LIBS=`freetype-config --libs`" >> $TMPMAK
-+ echo "FREETYPE_CFLAGS=$($pkg_config --cflags $pkg_config_flags freetype2)" >> $TMPMAK
-+ echo "FREETYPE_LIBS=$($pkg_config --libs $pkg_config_flags freetype2)" >> $TMPMAK
- fi
-
- if test $target_os = darwin; then
diff --git a/media-tv/mythtv/mythtv-0.28.1-r4.ebuild b/media-tv/mythtv/mythtv-0.28.1-r4.ebuild
deleted file mode 100644
index 24a3c0c7042..00000000000
--- a/media-tv/mythtv/mythtv-0.28.1-r4.ebuild
+++ /dev/null
@@ -1,369 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-PYTHON_COMPAT=( python2_7 )
-
-# git diff --relative=mythtv v0.27.6.. > ~/mythtv-0.27.6/patches/mythtv.patch
-BACKPORTS="03f44039848bd09444ff4baa8dc158bd61454079"
-MY_P=${P%_p*}
-MY_PV=${PV%_p*}
-
-inherit flag-o-matic python-single-r1 qmake-utils user readme.gentoo-r1 systemd vcs-snapshot
-
-MYTHTV_BRANCH="fixes/0.28"
-
-DESCRIPTION="Homebrew PVR project"
-HOMEPAGE="https://www.mythtv.org"
-SRC_URI="https://github.com/MythTV/mythtv/archive/${BACKPORTS}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2"
-KEYWORDS="~amd64 ~x86"
-SLOT="0/${PV}"
-
-IUSE_INPUT_DEVICES="input_devices_joystick"
-IUSE="alsa altivec autostart bluray cec crystalhd debug dvb dvd egl fftw +hls \
- ieee1394 jack lcd libass lirc +mythlogserver perl pulseaudio python systemd +theora \
- vaapi vdpau +vorbis +wrapper +xml xmltv +xvid zeroconf ${IUSE_INPUT_DEVICES}"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- bluray? ( xml )
- theora? ( vorbis )"
-
-COMMON="
- dev-libs/glib:2
- dev-qt/qtcore:5
- dev-qt/qtdbus:5
- dev-qt/qtgui:5
- dev-qt/qtnetwork:5
- dev-qt/qtscript:5
- dev-qt/qtsql:5[mysql]
- dev-qt/qtopengl:5
- dev-qt/qtwebkit:5
- dev-qt/qtwidgets:5
- dev-qt/qtxml:5
- media-gfx/exiv2:=
- media-libs/freetype:2
- media-libs/taglib
- >=media-sound/lame-3.93.1
- sys-libs/zlib
- virtual/mysql
- virtual/opengl
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXinerama
- x11-libs/libXv
- x11-libs/libXrandr
- x11-libs/libXxf86vm
- x11-misc/wmctrl
- alsa? ( >=media-libs/alsa-lib-1.0.24 )
- bluray? (
- dev-libs/libcdio:=
- media-libs/libbluray:=
- sys-fs/udisks:2
- )
- cec? ( dev-libs/libcec )
- dvb? (
- virtual/linuxtv-dvb-headers
- )
- dvd? (
- dev-libs/libcdio:=
- sys-fs/udisks:2
- )
- egl? ( media-libs/mesa[egl] )
- fftw? ( sci-libs/fftw:3.0= )
- hls? (
- media-libs/faac
- <media-libs/libvpx-1.7.0:=
- >=media-libs/x264-0.0.20111220:=
- )
- ieee1394? (
- >=media-libs/libiec61883-1.0.0
- >=sys-libs/libavc1394-0.5.3
- >=sys-libs/libraw1394-1.2.0
- )
- jack? ( media-sound/jack-audio-connection-kit )
- lcd? ( app-misc/lcdproc )
- libass? ( >=media-libs/libass-0.9.11:= )
- lirc? ( app-misc/lirc )
- perl? (
- >=dev-perl/libwww-perl-5
- dev-perl/DBD-mysql
- dev-perl/HTTP-Message
- dev-perl/IO-Socket-INET6
- dev-perl/LWP-Protocol-https
- dev-perl/Net-UPnP
- )
- pulseaudio? ( media-sound/pulseaudio )
- python? (
- ${PYTHON_DEPS}
- dev-python/lxml
- dev-python/mysql-python
- dev-python/urlgrabber
- )
- systemd? ( sys-apps/systemd:= )
- theora? ( media-libs/libtheora media-libs/libogg )
- vaapi? ( x11-libs/libva:=[opengl] )
- vdpau? ( x11-libs/libvdpau )
- vorbis? ( >=media-libs/libvorbis-1.0 media-libs/libogg )
- xml? ( >=dev-libs/libxml2-2.6.0 )
- xvid? ( >=media-libs/xvid-1.1.0 )
- zeroconf? (
- dev-libs/openssl:0=
- net-dns/avahi[mdnsresponder-compat]
- )
-"
-RDEPEND="${COMMON}
- !media-tv/mythtv-bindings
- !x11-themes/mythtv-themes
- media-fonts/corefonts
- media-fonts/dejavu
- media-fonts/liberation-fonts
- x11-apps/xinit
- autostart? (
- net-dialup/mingetty
- x11-apps/xset
- x11-wm/evilwm
- )
- dvd? ( media-libs/libdvdcss )
- xmltv? ( >=media-tv/xmltv-0.5.43 )
-"
-DEPEND="${COMMON}
- dev-lang/yasm
- virtual/pkgconfig
- x11-base/xorg-proto
-"
-
-S="${WORKDIR}/${P}/mythtv"
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-To have this machine operate as recording host for MythTV,
-mythbackend must be running. Run the following:
-rc-update add mythbackend default
-
-Your recordings folder must be owned 'mythtv'. e.g.
-chown -R mythtv /var/lib/mythtv
-
-Want mythfrontend to start automatically?
-Set USE=autostart. Details can be found at:
-https://dev.gentoo.org/~cardoe/mythtv/autostart.html
-
-Note that the systemd unit now restarts by default and logs
-to journald via the console at the notice verbosity.
-"
-
-MYTHTV_GROUPS="video,audio,tty,uucp"
-
-pkg_setup() {
- python-single-r1_pkg_setup
- enewuser mythtv -1 /bin/bash /home/mythtv ${MYTHTV_GROUPS}
- usermod -a -G ${MYTHTV_GROUPS} mythtv
-}
-
-src_prepare() {
- default
-
- # Perl bits need to go into vender_perl and not site_perl
- sed -e "s:pure_install:pure_install INSTALLDIRS=vendor:" \
- -i "${S}"/bindings/perl/Makefile
-
- # Fix up the version info since we are using the fixes/${PV} branch
- echo "SOURCE_VERSION=\"v${MY_PV}\"" > "${S}"/VERSION
- echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/VERSION
- echo "SOURCE_VERSION=\"${BACKPORTS}\"" > "${S}"/EXPORTED_VERSION
- echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/EXPORTED_VERSION
-
- echo "setting.extra -= -ldconfig" >> "${S}"/programs/mythfrontend/mythfrontend.pro
-
- eapply "${FILESDIR}/${P}-glibc225.patch"
- eapply -p2 "${FILESDIR}/${PN}-29.2-freetype_pkgconfig.patch" #658534
- eapply "${FILESDIR}/${P}-qt511.patch"
-}
-
-src_configure() {
- local myconf=
-
- # Setup paths
- myconf="${myconf} --prefix=${EPREFIX}/usr"
- myconf="${myconf} --libdir=${EPREFIX}/usr/$(get_libdir)"
- myconf="${myconf} --libdir-name=$(get_libdir)"
- myconf="${myconf} --mandir=${EPREFIX}/usr/share/man"
-
- # Audio
- myconf="${myconf} $(use_enable alsa audio-alsa)"
- myconf="${myconf} $(use_enable jack audio-jack)"
- use pulseaudio || myconf="${myconf} --disable-audio-pulseoutput"
-
- use altivec || myconf="${myconf} --disable-altivec"
- myconf="${myconf} $(use_enable dvb)"
- myconf="${myconf} $(use_enable ieee1394 firewire)"
- myconf="${myconf} $(use_enable lirc)"
- myconf="${myconf} $(use_enable xvid libxvid)"
- myconf="${myconf} --dvb-path=/usr/include"
- myconf="${myconf} --enable-xrandr"
- myconf="${myconf} --enable-xv"
- myconf="${myconf} --enable-x11"
- myconf="${myconf} --enable-nonfree"
- myconf="${myconf} --enable-libmp3lame"
- use cec || myconf="${myconf} --disable-libcec"
- use zeroconf || myconf="${myconf} --disable-libdns-sd"
- myconf="${myconf} $(use_enable theora libtheora)"
- myconf="${myconf} $(use_enable vorbis libvorbis)"
-
- if use hls; then
- myconf="${myconf} --enable-libx264"
- myconf="${myconf} --enable-libvpx"
- myconf="${myconf} --enable-libfaac"
- fi
-
- myconf="${myconf} $(use_enable libass)"
-
- if use perl && use python; then
- myconf="${myconf} --with-bindings=perl,python"
- elif use perl; then
- myconf="${myconf} --without-bindings=python"
- myconf="${myconf} --with-bindings=perl"
- elif use python; then
- myconf="${myconf} --without-bindings=perl"
- myconf="${myconf} --with-bindings=python"
- else
- myconf="${myconf} --without-bindings=perl,python"
- fi
-
- use python && myconf="${myconf} --python=${EPYTHON}"
-
- if use debug; then
- myconf="${myconf} --compile-type=debug"
- else
- myconf="${myconf} --compile-type=release"
- #myconf="${myconf} --enable-debug" does nothing per sphery
- myconf="${myconf} --disable-stripping" # FIXME: does not disable for all files, only for some
- fi
-
- # Video
- myconf="${myconf} $(use_enable vdpau)"
- myconf="${myconf} $(use_enable vaapi)"
- myconf="${myconf} $(use_enable crystalhd)"
-
- # Input
- use input_devices_joystick || myconf="${myconf} --disable-joystick-menu"
-
- # Clean up DSO load times and other compiler bits
- myconf="${myconf} --enable-symbol-visibility"
- myconf="${myconf} --enable-pic"
-
- # CPU settings
- for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
- [ "${i}" = "native" ] && i="host"
- myconf="${myconf} --cpu=${i}"
- break
- done
-
- if tc-is-cross-compiler ; then
- myconf="${myconf} --enable-cross-compile --arch=$(tc-arch-kernel)"
- myconf="${myconf} --cross-prefix=${CHOST}-"
- fi
-
- # Build boosters
- has distcc ${FEATURES} || myconf="${myconf} --disable-distcc"
- has ccache ${FEATURES} || myconf="${myconf} --disable-ccache"
-
- myconf="${myconf} $(use_enable systemd systemd_notify)"
- use systemd || myconf="${myconf} $(use_enable mythlogserver)"
-
- chmod +x ./external/FFmpeg/version.sh
-
- einfo "Running ./configure ${myconf}"
- ./configure \
- --cc="$(tc-getCC)" \
- --cxx="$(tc-getCXX)" \
- --ar="$(tc-getAR)" \
- --extra-cflags="${CFLAGS}" \
- --extra-cxxflags="${CXXFLAGS}" \
- --extra-ldflags="${LDFLAGS}" \
- --qmake=$(qt5_get_bindir)/qmake \
- ${myconf} || die "configure died"
-}
-
-src_install() {
- emake STRIP="true" INSTALL_ROOT="${D}" install
- dodoc AUTHORS UPGRADING README
- readme.gentoo_create_doc
-
- insinto /usr/share/mythtv/database
- doins database/*
-
- newinitd "${FILESDIR}"/mythbackend.init-r2 mythbackend
- newconfd "${FILESDIR}"/mythbackend.conf-r1 mythbackend
- systemd_newunit "${FILESDIR}"/mythbackend.service-28 mythbackend.service
-
- dodoc keys.txt
-
- keepdir /etc/mythtv
- chown -R mythtv "${ED}"/etc/mythtv
- keepdir /var/log/mythtv
- chown -R mythtv "${ED}"/var/log/mythtv
- dodir /var/log/mythtv/old
-
- insinto /etc/logrotate.d
- newins "${FILESDIR}"/mythtv.logrotate.d-r4 mythtv
-
- insinto /usr/share/mythtv/contrib
- # Ensure we don't install scripts needing the perl bindings (bug #516968)
- use perl || find contrib/ -name '*.pl' -exec rm -f {} \;
- # Ensure we don't install scripts needing the python bindings (bug #516968)
- use python || find contrib/ -name '*.py' -exec rm -f {} \;
- doins -r contrib/*
-
- # Install our mythfrontend wrapper which is similar to Mythbuntu's
- if use wrapper; then
- mv "${ED}/usr/bin/mythfrontend" "${ED}/usr/bin/mythfrontend.real"
- newbin "${FILESDIR}"/mythfrontend.wrapper mythfrontend
- newconfd "${FILESDIR}"/mythfrontend.conf mythfrontend
- fi
-
- if use autostart; then
- dodir /etc/env.d/
- echo 'CONFIG_PROTECT="/home/mythtv/"' > "${ED}"/etc/env.d/95mythtv
-
- insinto /home/mythtv
- newins "${FILESDIR}"/bash_profile .bash_profile
- newins "${FILESDIR}"/xinitrc-r1 .xinitrc
- fi
-
- # Make Python files executable
- find "${ED}/usr/share/mythtv" -type f -name '*.py' | while read file; do
- if [[ ! "${file##*/}" = "__init__.py" ]]; then
- chmod a+x "${file}"
- fi
- done
-
- # Ensure that Python scripts are executed by Python 2
- python_fix_shebang "${ED}/usr/share/mythtv"
-
- # Make shell & perl scripts executable
- find "${ED}" -type f -name '*.sh' -o -type f -name '*.pl' | \
- while read file; do
- chmod a+x "${file}"
- done
-}
-
-pkg_preinst() {
- export CONFIG_PROTECT="${CONFIG_PROTECT} ${EROOT}/home/mythtv/"
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
-}
-
-pkg_info() {
- if [[ -f "${EROOT}"/usr/bin/mythfrontend ]]; then
- "${EROOT}"/usr/bin/mythfrontend --version
- fi
-}
-
-pkg_config() {
- echo "Creating mythtv MySQL user and mythconverg database if it does not"
- echo "already exist. You will be prompted for your MySQL root password."
- "${EROOT}"/usr/bin/mysql -u root -p < "${EROOT}"/usr/share/mythtv/database/mc.sql
-}
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/, media-tv/mythtv/files/
@ 2020-04-03 16:55 Andreas Sturmlechner
0 siblings, 0 replies; 16+ messages in thread
From: Andreas Sturmlechner @ 2020-04-03 16:55 UTC (permalink / raw
To: gentoo-commits
commit: 1c3cea9bb7e24aea50f3826f36dae73ba76270db
Author: Wilson Michaels <thebitpit <AT> earthlink <DOT> net>
AuthorDate: Sun Mar 29 23:59:38 2020 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Fri Apr 3 16:39:03 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1c3cea9b
media-tv/mythtv: Fix create webbrowser window
Closes: https://bugs.gentoo.org/713736
Package-Manager: Portage-2.3.89, Repoman-2.3.20
Signed-off-by: Wilson Michaels <thebitpit <AT> earthlink.net>
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
.../mythtv-29.1-Fix_create_webbrowser_window.patch | 61 +++
media-tv/mythtv/mythtv-29.1-r3.ebuild | 373 ++++++++++++++++++
media-tv/mythtv/mythtv-30.0_p20190808-r3.ebuild | 430 +++++++++++++++++++++
3 files changed, 864 insertions(+)
diff --git a/media-tv/mythtv/files/mythtv-29.1-Fix_create_webbrowser_window.patch b/media-tv/mythtv/files/mythtv-29.1-Fix_create_webbrowser_window.patch
new file mode 100644
index 00000000000..168c2337942
--- /dev/null
+++ b/media-tv/mythtv/files/mythtv-29.1-Fix_create_webbrowser_window.patch
@@ -0,0 +1,61 @@
+Index: mythtv/libs/libmythui/mythuiwebbrowser.cpp
+Mythtv bug #13544
+===================================================================
+--- a/libs/libmythui/mythuiwebbrowser.cpp
++++ b/libs/libmythui/mythuiwebbrowser.cpp
+@@ -873,4 +873,8 @@
+ void MythUIWebBrowser::Init(void)
+ {
++ // only do the initialisation for widgets not being stored in the global object store
++ if (parent() == GetGlobalObjectStore())
++ return;
++
+ if (m_initialized)
+ return;
+@@ -1128,4 +1132,7 @@
+ void MythUIWebBrowser::SetActive(bool active)
+ {
++ if (!m_browser)
++ return;
++
+ if (m_active == active)
+ return;
+@@ -1326,4 +1333,7 @@
+ void MythUIWebBrowser::Scroll(int dx, int dy)
+ {
++ if (!m_browser)
++ return;
++
+ QPoint startPos = m_browser->page()->currentFrame()->scrollPosition();
+ QPoint endPos = startPos + QPoint(dx, dy);
+@@ -1435,4 +1445,7 @@
+ void MythUIWebBrowser::UpdateScrollBars(void)
+ {
++ if (!m_browser)
++ return;
++
+ QPoint position = m_browser->page()->currentFrame()->scrollPosition();
+ if (m_verticalScrollbar)
+@@ -1461,5 +1474,5 @@
+ UpdateScrollBars();
+
+- if (!m_image)
++ if (!m_image || !m_browser)
+ return;
+
+@@ -1480,4 +1493,7 @@
+ void MythUIWebBrowser::Pulse(void)
+ {
++ if (!m_browser)
++ return;
++
+ if (m_scrollAnimation.IsActive() &&
+ m_destinationScrollPos !=
+@@ -1522,4 +1538,7 @@
+ bool MythUIWebBrowser::keyPressEvent(QKeyEvent *event)
+ {
++ if (!m_browser)
++ return false;
++
+ QStringList actions;
+ bool handled = false;
diff --git a/media-tv/mythtv/mythtv-29.1-r3.ebuild b/media-tv/mythtv/mythtv-29.1-r3.ebuild
new file mode 100644
index 00000000000..a5660a5775a
--- /dev/null
+++ b/media-tv/mythtv/mythtv-29.1-r3.ebuild
@@ -0,0 +1,373 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 )
+
+# git diff --relative=mythtv v0.27.6.. > ~/mythtv-0.27.6/patches/mythtv.patch
+BACKPORTS="d8a2db77f5731cf32c6d31127452391c6cf7f91f"
+MY_P=${P%_p*}
+MY_PV=${PV%_p*}
+
+inherit flag-o-matic python-single-r1 qmake-utils user-info readme.gentoo-r1 systemd toolchain-funcs vcs-snapshot
+
+MYTHTV_BRANCH="fixes/29"
+
+DESCRIPTION="Homebrew PVR project"
+HOMEPAGE="https://www.mythtv.org"
+SRC_URI="https://github.com/MythTV/mythtv/archive/${BACKPORTS}.tar.gz -> ${P}-r1.tar.gz"
+
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~x86"
+SLOT="0/${PV}"
+
+IUSE_INPUT_DEVICES="input_devices_joystick"
+IUSE="alsa altivec autostart bluray cec debug dvb dvd egl fftw +hls \
+ ieee1394 jack lcd libass lirc mythlogserver perl pulseaudio python systemd +theora \
+ vaapi vdpau +vorbis +wrapper +xml xmltv +xvid zeroconf ${IUSE_INPUT_DEVICES}"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ bluray? ( xml )
+ theora? ( vorbis )
+"
+
+COMMON="
+ acct-user/mythtv
+ dev-libs/glib:2
+ dev-qt/qtcore:5
+ dev-qt/qtdbus:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtscript:5
+ dev-qt/qtsql:5[mysql]
+ dev-qt/qtopengl:5
+ dev-qt/qtwebkit:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ media-gfx/exiv2:=
+ media-libs/freetype:2
+ media-libs/taglib
+ >=media-sound/lame-3.93.1
+ sys-libs/zlib
+ virtual/opengl
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXinerama
+ x11-libs/libXv
+ x11-libs/libXrandr
+ x11-libs/libXxf86vm
+ x11-misc/wmctrl
+ alsa? ( >=media-libs/alsa-lib-1.0.24 )
+ bluray? (
+ dev-libs/libcdio:=
+ media-libs/libbluray:=
+ sys-fs/udisks:2
+ )
+ cec? ( dev-libs/libcec )
+ dvd? (
+ dev-libs/libcdio:=
+ sys-fs/udisks:2
+ )
+ egl? ( media-libs/mesa[egl] )
+ fftw? ( sci-libs/fftw:3.0= )
+ hls? (
+ <media-libs/libvpx-1.8.0:=
+ >=media-libs/x264-0.0.20111220:=
+ )
+ ieee1394? (
+ >=media-libs/libiec61883-1.0.0
+ >=sys-libs/libavc1394-0.5.3
+ >=sys-libs/libraw1394-1.2.0
+ )
+ jack? ( media-sound/jack-audio-connection-kit )
+ lcd? ( app-misc/lcdproc )
+ libass? ( >=media-libs/libass-0.9.11:= )
+ lirc? ( app-misc/lirc )
+ perl? (
+ >=dev-perl/libwww-perl-5
+ dev-perl/DBD-mysql
+ dev-perl/HTTP-Message
+ dev-perl/IO-Socket-INET6
+ dev-perl/LWP-Protocol-https
+ dev-perl/Net-UPnP
+ )
+ pulseaudio? ( media-sound/pulseaudio )
+ python? (
+ ${PYTHON_DEPS}
+ dev-python/lxml
+ dev-python/mysql-python
+ dev-python/urlgrabber
+ dev-python/future
+ dev-python/requests-cache
+ )
+ systemd? ( sys-apps/systemd:= )
+ theora? ( media-libs/libtheora media-libs/libogg )
+ vaapi? ( x11-libs/libva:=[opengl] )
+ vdpau? ( x11-libs/libvdpau )
+ vorbis? ( >=media-libs/libvorbis-1.0 media-libs/libogg )
+ xml? ( >=dev-libs/libxml2-2.6.0 )
+ xvid? ( >=media-libs/xvid-1.1.0 )
+ zeroconf? (
+ dev-libs/openssl:0=
+ net-dns/avahi[mdnsresponder-compat]
+ )
+"
+RDEPEND="${COMMON}
+ media-fonts/corefonts
+ media-fonts/dejavu
+ media-fonts/liberation-fonts
+ x11-apps/xinit
+ autostart? (
+ net-dialup/mingetty
+ x11-apps/xset
+ x11-wm/evilwm
+ )
+ dvd? ( media-libs/libdvdcss )
+ xmltv? ( >=media-tv/xmltv-0.5.43 )
+"
+DEPEND="${COMMON}
+ dev-lang/yasm
+ virtual/pkgconfig
+ x11-base/xorg-proto
+"
+
+S="${WORKDIR}/${P}-r1/mythtv"
+
+DISABLE_AUTOFORMATTING="yes"
+DOC_CONTENTS="
+If a MYSQL server is installed, a mythtv MySQL user and mythconverg database
+is created if it does not already exist.
+You will be prompted for your MySQL root password.
+
+To have this machine operate as recording host for MythTV,
+mythbackend must be running. Run the following:
+rc-update add mythbackend default
+
+Your recordings folder must be owned 'mythtv'. e.g.
+chown -R mythtv /var/lib/mythtv
+
+Want mythfrontend to start automatically?
+Set USE=autostart. Details can be found at:
+https://dev.gentoo.org/~cardoe/mythtv/autostart.html
+
+Note that the systemd unit now restarts by default and logs
+to journald via the console at the notice verbosity.
+"
+
+MYTHTV_GROUPS="video,audio,tty,uucp"
+
+PATCHES=(
+ "${FILESDIR}/${P}-exiv2-0.27.1.patch"
+ "${FILESDIR}/${P}-Fix_create_webbrowser_window.patch"
+)
+
+pkg_setup() {
+ python-single-r1_pkg_setup
+ # The acct-user/mythtv package creates/manages the user 'mythtv'
+}
+
+src_prepare() {
+ default
+
+ # Perl bits need to go into vender_perl and not site_perl
+ sed -e "s:pure_install:pure_install INSTALLDIRS=vendor:" \
+ -i "${S}"/bindings/perl/Makefile
+
+ # Fix up the version info since we are using the fixes/${PV} branch
+ echo "SOURCE_VERSION=\"v${MY_PV}\"" > "${S}"/VERSION
+ echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/VERSION
+ echo "SOURCE_VERSION=\"${BACKPORTS}\"" > "${S}"/EXPORTED_VERSION
+ echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/EXPORTED_VERSION
+
+ echo "setting.extra -= -ldconfig" >> "${S}"/programs/mythfrontend/mythfrontend.pro
+}
+
+src_configure() {
+ local myconf=
+
+ # Setup paths
+ myconf="${myconf} --prefix=${EPREFIX}/usr"
+ myconf="${myconf} --libdir=${EPREFIX}/usr/$(get_libdir)"
+ myconf="${myconf} --libdir-name=$(get_libdir)"
+ myconf="${myconf} --mandir=${EPREFIX}/usr/share/man"
+
+ # Audio
+ myconf="${myconf} $(use_enable alsa audio-alsa)"
+ myconf="${myconf} $(use_enable jack audio-jack)"
+ use pulseaudio || myconf="${myconf} --disable-audio-pulseoutput"
+
+ use altivec || myconf="${myconf} --disable-altivec"
+ myconf="${myconf} $(use_enable dvb)"
+ myconf="${myconf} $(use_enable ieee1394 firewire)"
+ myconf="${myconf} $(use_enable lirc)"
+ myconf="${myconf} $(use_enable xvid libxvid)"
+ myconf="${myconf} --dvb-path=/usr/include"
+ myconf="${myconf} --enable-xrandr"
+ myconf="${myconf} --enable-xv"
+ myconf="${myconf} --enable-x11"
+ myconf="${myconf} --enable-nonfree"
+ myconf="${myconf} --enable-libmp3lame" # lame is not optional it is required for some broadcasts for silence detection of commercials
+ use cec || myconf="${myconf} --disable-libcec"
+ use zeroconf || myconf="${myconf} --disable-libdns-sd"
+ myconf="${myconf} $(use_enable theora libtheora)"
+ myconf="${myconf} $(use_enable vorbis libvorbis)"
+
+ if use hls; then
+ myconf="${myconf} --enable-libx264"
+ myconf="${myconf} --enable-libvpx"
+ fi
+
+ myconf="${myconf} $(use_enable libass)"
+
+ if use perl && use python; then
+ myconf="${myconf} --with-bindings=perl,python"
+ elif use perl; then
+ myconf="${myconf} --without-bindings=python"
+ myconf="${myconf} --with-bindings=perl"
+ elif use python; then
+ myconf="${myconf} --without-bindings=perl"
+ myconf="${myconf} --with-bindings=python"
+ else
+ myconf="${myconf} --without-bindings=perl,python"
+ fi
+
+ use python && myconf="${myconf} --python=${EPYTHON}"
+
+ if use debug; then
+ myconf="${myconf} --compile-type=debug"
+ else
+ myconf="${myconf} --compile-type=release"
+ #myconf="${myconf} --enable-debug" does nothing per sphery
+ myconf="${myconf} --disable-stripping" # FIXME: does not disable for all files, only for some
+ fi
+
+ # Video
+ myconf="${myconf} $(use_enable vdpau)"
+ myconf="${myconf} $(use_enable vaapi)"
+
+ # Input
+ use input_devices_joystick || myconf="${myconf} --disable-joystick-menu"
+
+ # Clean up DSO load times and other compiler bits
+ myconf="${myconf} --enable-symbol-visibility"
+ myconf="${myconf} --enable-pic"
+
+ # CPU settings
+ for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
+ [ "${i}" = "native" ] && i="host"
+ myconf="${myconf} --cpu=${i}"
+ break
+ done
+
+ if tc-is-cross-compiler ; then
+ myconf="${myconf} --enable-cross-compile --arch=$(tc-arch-kernel)"
+ myconf="${myconf} --cross-prefix=${CHOST}-"
+ fi
+
+ # Build boosters
+ has distcc ${FEATURES} || myconf="${myconf} --disable-distcc"
+ has ccache ${FEATURES} || myconf="${myconf} --disable-ccache"
+
+ myconf="${myconf} $(use_enable systemd systemd_notify)"
+ myconf="${myconf} $(use_enable systemd systemd_journal)"
+ use systemd || myconf="${myconf} $(use_enable mythlogserver)"
+
+ chmod +x ./external/FFmpeg/version.sh
+
+ einfo "Running ./configure ${myconf}"
+ ./configure \
+ --cc="$(tc-getCC)" \
+ --cxx="$(tc-getCXX)" \
+ --ar="$(tc-getAR)" \
+ --extra-cflags="${CFLAGS}" \
+ --extra-cxxflags="${CXXFLAGS}" \
+ --extra-ldflags="${LDFLAGS}" \
+ --qmake=$(qt5_get_bindir)/qmake \
+ ${myconf} || die "configure died"
+}
+
+src_install() {
+ emake STRIP="true" INSTALL_ROOT="${D}" install
+ dodoc AUTHORS UPGRADING README
+ use python && python_optimize # does all packages by default
+ readme.gentoo_create_doc
+
+ insinto /usr/share/mythtv/database
+ doins database/*
+
+ newinitd "${FILESDIR}"/mythbackend.init-r2 mythbackend
+ newconfd "${FILESDIR}"/mythbackend.conf-r1 mythbackend
+ systemd_newunit "${FILESDIR}"/mythbackend.service-28 mythbackend.service
+
+ dodoc keys.txt
+
+ keepdir /etc/mythtv
+ chown -R mythtv "${ED}"/etc/mythtv
+ keepdir /var/log/mythtv
+ chown -R mythtv "${ED}"/var/log/mythtv
+ dodir /var/log/mythtv/old
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/mythtv.logrotate.d-r4 mythtv
+
+ insinto /usr/share/mythtv/contrib
+ # Ensure we don't install scripts needing the perl bindings (bug #516968)
+ use perl || find contrib/ -name '*.pl' -exec rm -f {} \;
+ # Ensure we don't install scripts needing the python bindings (bug #516968)
+ use python || find contrib/ -name '*.py' -exec rm -f {} \;
+ doins -r contrib/*
+
+ # Install our mythfrontend wrapper which is similar to Mythbuntu's
+ if use wrapper; then
+ mv "${ED}/usr/bin/mythfrontend" "${ED}/usr/bin/mythfrontend.real"
+ newbin "${FILESDIR}"/mythfrontend.wrapper mythfrontend
+ newconfd "${FILESDIR}"/mythfrontend.conf mythfrontend
+ fi
+
+ if use autostart; then
+ dodir /etc/env.d/
+ echo 'CONFIG_PROTECT="/home/mythtv/"' > "${ED}"/etc/env.d/95mythtv
+
+ insinto /home/mythtv
+ newins "${FILESDIR}"/bash_profile .bash_profile
+ newins "${FILESDIR}"/xinitrc-r1 .xinitrc
+ fi
+
+ # Make Python files executable
+ find "${ED}/usr/share/mythtv" -type f -name '*.py' | while read file; do
+ if [[ ! "${file##*/}" = "__init__.py" ]]; then
+ chmod a+x "${file}"
+ fi
+ done
+
+ # Ensure that Python scripts are executed by Python 2
+ use python && python_fix_shebang "${ED}/usr/share/mythtv"
+
+ # Make shell & perl scripts executable
+ find "${ED}" -type f -name '*.sh' -o -type f -name '*.pl' | \
+ while read file; do
+ chmod a+x "${file}"
+ done
+
+ # Remove empty dir
+ rmdir "${ED}"/var/log/mythtv/old
+}
+
+pkg_preinst() {
+ export CONFIG_PROTECT="${CONFIG_PROTECT} ${EROOT}/home/mythtv/"
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+}
+
+pkg_info() {
+ if [[ -f "${EROOT}"/usr/bin/mythfrontend ]]; then
+ "${EROOT}"/usr/bin/mythfrontend --version
+ fi
+}
+
+pkg_config() {
+ if [[ -e "${EROOT}"/usr/bin/mysql ]]; then
+ "${EROOT}"/usr/bin/mysql -u root -p < "${EROOT}"/usr/share/mythtv/database/mc.sql
+ fi
+}
diff --git a/media-tv/mythtv/mythtv-30.0_p20190808-r3.ebuild b/media-tv/mythtv/mythtv-30.0_p20190808-r3.ebuild
new file mode 100644
index 00000000000..d18a3162d6f
--- /dev/null
+++ b/media-tv/mythtv/mythtv-30.0_p20190808-r3.ebuild
@@ -0,0 +1,430 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python2_7 )
+
+BACKPORTS="5cde0578d84926171b20c8f7e95a101e9b0b9457" # August 8, 2019
+
+MY_P=${P%_p*}
+MY_PV=${PV%_p*}
+
+inherit eutils flag-o-matic python-single-r1 qmake-utils readme.gentoo-r1 systemd user-info vcs-snapshot
+
+MYTHTV_BRANCH="fixes/${P%.*}"
+
+DESCRIPTION="Open Source DVR and media center hub"
+HOMEPAGE="https://www.mythtv.org"
+SRC_URI="https://github.com/MythTV/mythtv/archive/${BACKPORTS}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+"
+KEYWORDS="~amd64 ~x86"
+SLOT="0/${PV}"
+
+IUSE_INPUT_DEVICES="input_devices_joystick"
+IUSE_VIDEO_CAPTURE_DEVICES="v4l ivtv ieee1394 hdpvr hdhomerun vbox ceton"
+IUSE="alsa altivec asi autostart bluray cdda cdr cec debug dvd dvb egl exif fftw jack java
+ +lame lcd libass lirc +opengl oss perl pulseaudio python raw systemd vaapi vdpau vpx
+ +wrapper x264 x265 +xml xmltv xnvctrl +xvid +X zeroconf
+ ${IUSE_INPUT_DEVICES} ${IUSE_VIDEO_CAPTURE_DEVICES}"
+REQUIRED_USE="
+ python? ( ${PYTHON_REQUIRED_USE} )
+ bluray? ( xml )
+ cdr? ( cdda )
+"
+COMMON_DEPEND="
+ acct-user/mythtv
+ dev-libs/glib:2
+ dev-libs/lzo
+ dev-qt/qtcore:5
+ dev-qt/qtdbus:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5
+ opengl? ( dev-qt/qtopengl:5 )
+ dev-qt/qtscript:5
+ dev-qt/qtsql:5[mysql]
+ dev-qt/qtwebkit:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ media-gfx/exiv2:=
+ media-libs/freetype:2
+ media-libs/libsamplerate
+ media-libs/taglib
+ lame? ( >=media-sound/lame-3.93.1 )
+ sys-libs/zlib
+ opengl? ( virtual/opengl )
+ X? (
+ x11-libs/libX11:=
+ x11-libs/libXext:=
+ x11-libs/libXinerama:=
+ x11-libs/libXrandr:=
+ x11-libs/libXv:=
+ x11-libs/libXxf86vm:=
+ x11-misc/wmctrl:=
+ )
+ alsa? ( >=media-libs/alsa-lib-1.0.24 )
+ bluray? (
+ media-libs/libbluray:=[java?]
+ dev-libs/libcdio:=
+ sys-fs/udisks:2
+ )
+ cec? ( dev-libs/libcec )
+ dvd? (
+ dev-libs/libcdio:=
+ sys-fs/udisks:2
+ )
+ egl? ( media-libs/mesa[egl] )
+ fftw? ( sci-libs/fftw:3.0=[threads] )
+ hdhomerun? ( media-libs/libhdhomerun )
+ ieee1394? (
+ >=media-libs/libiec61883-1.0.0
+ >=sys-libs/libavc1394-0.5.3
+ >=sys-libs/libraw1394-1.2.0
+ )
+ jack? ( media-sound/jack-audio-connection-kit )
+ java? ( dev-java/ant-core )
+ lcd? ( app-misc/lcdproc )
+ libass? ( >=media-libs/libass-0.9.11:= )
+ lirc? ( app-misc/lirc )
+ perl? (
+ >=dev-perl/libwww-perl-5
+ dev-perl/DBD-mysql
+ dev-perl/HTTP-Message
+ dev-perl/IO-Socket-INET6
+ dev-perl/LWP-Protocol-https
+ dev-perl/Net-UPnP
+ )
+ pulseaudio? ( media-sound/pulseaudio )
+ systemd? ( sys-apps/systemd:= )
+ vaapi? ( x11-libs/libva:=[opengl] )
+ vdpau? ( x11-libs/libvdpau )
+ vpx? ( <media-libs/libvpx-1.8.0:= )
+ xnvctrl? ( x11-drivers/nvidia-drivers:=[tools,static-libs] )
+ x264? ( >=media-libs/x264-0.0.20111220:= )
+ x265? ( media-libs/x265 )
+ xml? ( >=dev-libs/libxml2-2.6.0 )
+ xvid? ( >=media-libs/xvid-1.1.0 )
+ zeroconf? (
+ dev-libs/openssl:0=
+ net-dns/avahi[mdnsresponder-compat]
+ )
+"
+RDEPEND="${COMMON_DEPEND}
+ python? (
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep '
+ dev-python/lxml[${PYTHON_MULTI_USEDEP}]
+ dev-python/mysqlclient[${PYTHON_MULTI_USEDEP}]
+ dev-python/urlgrabber[${PYTHON_MULTI_USEDEP}]
+ dev-python/future[${PYTHON_MULTI_USEDEP}]
+ dev-python/requests-cache[${PYTHON_MULTI_USEDEP}]
+ ')
+ )
+ media-fonts/corefonts
+ media-fonts/dejavu
+ media-fonts/liberation-fonts
+ x11-apps/xinit
+ autostart? (
+ net-dialup/mingetty
+ x11-apps/xset
+ x11-wm/evilwm
+ )
+ dvd? ( media-libs/libdvdcss )
+ xmltv? ( >=media-tv/xmltv-0.5.43 )
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ dev-lang/yasm
+ x11-base/xorg-proto
+"
+
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}/${P}-respect_LDFLAGS.patch"
+ "${FILESDIR}/${P}-cast_constants_to_short.patch"
+ "${FILESDIR}/${P}-Fix_Dereferencing_type-punned_pointer.patch"
+ "${FILESDIR}/${P}-Fix_unitialized_variables.patch"
+ "${FILESDIR}/${PN}-29.1-Fix_create_webbrowser_window.patch"
+)
+
+# mythtv and mythplugins are separate builds in the github mythtv project
+S="${WORKDIR}/${P}/mythtv"
+
+DISABLE_AUTOFORMATTING="yes"
+DOC_CONTENTS="
+If a MYSQL server is installed, a mythtv MySQL user and mythconverg database
+is created if it does not already exist.
+You will be prompted for your MySQL root password.
+
+A mythtv user is maintained by acct-user/mythtv. An existing mythtv user
+may be modified to the configuration defined by acct-user/mythtv.
+An existing mythtv user may be changed which may alter some functionality.
+If it breaks mythtv you may need to (choose one):
+ * Restore the original mythtv user
+ * Create custom acct-user/mythtv overlay for your system
+ * Fix you system to use mythtv as daemon only
+Failure to emerge acct-user/mythtv indicates that the existing mythtv user
+is customized and not changed. Corrective action (choose one):
+ * Ignore emerge failure
+ * Create custom acct-user/mythtv overlay for your system
+ * Fix you system to use mythtv as daemon only
+ * Delete existing user and try again (dangerous)
+
+Mythtv is updated to use correct FHS/Gentoo policy paths.
+Updating mythtv installations may report:
+ * mythtv is in use, cannot update home
+ * There was an error when attempting to update the home directory for mythtv
+ * Please update it manually on your system (as root):
+ * usermod -d "/var/lib/mythtv" "mythtv"
+This can be ignored. The previous default was "/home/mythtv".
+Use caution if you change the home directory.
+
+To have this machine operate as recording host for MythTV,
+mythbackend must be running. Run the following:
+rc-update add mythbackend default
+
+Your recordings folder must be owned 'mythtv'. e.g.
+chown -R mythtv /var/lib/mythtv
+
+Want mythfrontend to start automatically?
+Set USE=autostart. Details can be found at:
+https://dev.gentoo.org/~cardoe/mythtv/autostart.html
+
+Note that the systemd unit now restarts by default and logs
+to journald via the console at the notice verbosity.
+"
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+ # The acct-user/mythtv package creates/manages the user 'mythtv'
+}
+
+src_prepare() {
+ default
+
+ # Perl bits need to go into vender_perl and not site_perl
+ sed -e "s:pure_install:pure_install INSTALLDIRS=vendor:" \
+ -i "${S}"/bindings/perl/Makefile || die "Cannot convert site_perl to vendor_perl!"
+
+ # Fix up the version info since we are using the fixes/${PV} branch
+ echo "SOURCE_VERSION=\"v${MY_PV}\"" > "${S}"/VERSION
+ echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/VERSION
+ echo "SOURCE_VERSION=\"${BACKPORTS}\"" > "${S}"/EXPORTED_VERSION
+ echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/EXPORTED_VERSION
+
+ echo "setting.extra -= -ldconfig" >> "${S}"/programs/mythfrontend/mythfrontend.pro
+}
+
+src_configure() {
+ local -a myconf
+
+ # Setup paths
+ myconf+=(--prefix="${EPREFIX}"/usr)
+ myconf+=(--libdir="${EPREFIX}"/usr/$(get_libdir))
+ myconf+=(--libdir-name=$(get_libdir))
+ myconf+=(--mandir="${EPREFIX}"/usr/share/man)
+
+ if use debug; then
+ myconf+=(--compile-type=debug)
+ myconf+=(--disable-stripping) # FIXME: does not disable for all files, only for some
+ myconf+=(--enable-valgrind) # disables timeouts for valgrind memory debugging
+ else
+ myconf+=(--compile-type=release)
+ fi
+
+ # Build boosters
+ has ccache "${FEATURES}" || myconf+=(--disable-ccache)
+ has distcc "${FEATURES}" || myconf+=(--disable-distcc)
+
+ # CPU settings
+ # Mythtv's configure is borrowed from ffmpeg,
+ # Bug #172723
+ # Try to get cpu type based on CFLAGS.
+ # We need to do this so that features of that CPU will be better used
+ # If they contain an unknown CPU it will not hurt since ffmpeg's configure
+ # will just ignore it.
+ for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
+ [ "${i}" = "native" ] && i="host" # bug #273421
+ myconf+=(--cpu="${i}")
+ break
+ done
+ myconf+=($(use_enable altivec))
+
+ # Sound Output Support
+ myconf+=(
+ $(use_enable oss audio-oss)
+ $(use_enable alsa audio-alsa)
+ $(use_enable jack audio-jack)
+ $(use_enable pulseaudio audio-pulseoutput)
+ )
+
+ # Input Support
+ myconf+=(
+ $(use_enable lirc)
+ $(use_enable input_devices_joystick joystick-menu)
+ $(use_enable cec libcec)
+ $(use_enable ieee1394 firewire)
+ $(use_enable hdhomerun)
+ $(use_enable vbox)
+ $(use_enable ceton)
+ $(use_enable v4l v4l2)
+ $(use_enable ivtv)
+ $(use_enable hdpvr)
+ $(use_enable dvb)
+ $(use_enable asi)
+ )
+
+ # Video Output Support
+ myconf+=(
+ $(use_enable X x11)
+ $(use_enable xnvctrl)
+ $(use_enable X xrandr)
+ $(use_enable X xv)
+ )
+
+ # Hardware accellerators
+ myconf+=(
+ $(use_enable vdpau)
+ $(use_enable vaapi)
+ $(use_enable vaapi vaapi2)
+ $(use_enable opengl opengl-video)
+ $(use_enable opengl opengl-themepainter)
+ $(use_enable libass)
+ )
+
+ # System tools
+ myconf+=(
+ $(use_enable systemd systemd_notify)
+ $(use_enable systemd systemd_journal)
+ $(use_enable xml libxml2)
+ $(use_enable zeroconf libdns-sd)
+ )
+
+ # Bindings
+ if use perl && use python; then
+ myconf+=(--with-bindings=perl,python)
+ elif use perl; then
+ myconf+=(--without-bindings=python)
+ myconf+=(--with-bindings=perl)
+ elif use python; then
+ myconf+=(--without-bindings=perl)
+ myconf+=(--with-bindings=python)
+ else
+ myconf+=(--without-bindings=perl,python)
+ fi
+ use python && myconf+=(--python="${EPYTHON}")
+ myconf+=($(use_enable java bdjava))
+
+ # External codec library options (used for mythffmpeg and streaming transcode)
+ # lame is required for some broadcasts for silence detection of commercials
+ # default enable in IUSE with +lame
+ myconf+=(
+ $(use_enable lame libmp3lame)
+ $(use_enable xvid libxvid)
+ $(use_enable x264 libx264)
+ $(use_enable x265 libx265)
+ $(use_enable vpx libvpx)
+ )
+
+ # Clean up DSO load times and other compiler bits
+ myconf+=(--enable-symbol-visibility)
+ myconf+=(--enable-pic)
+
+ if tc-is-cross-compiler ; then
+ myconf+=(--enable-cross-compile --arch=$(tc-arch-kernel))
+ myconf+=(--cross-prefix="${CHOST}"-)
+ fi
+
+ myconf+=($(use_enable bluray libbluray_external))
+
+ # econf sets these options that are not handled by configure:
+ # --build --host --infodir --localstatedir --sysconfdir
+
+ einfo "Running ./configure ${myconf[@]} - THIS MAY TAKE A WHILE."
+ ./configure \
+ --prefix="${EPREFIX}/usr" \
+ --cc="$(tc-getCC)" \
+ --cxx="$(tc-getCXX)" \
+ --ar="$(tc-getAR)" \
+ --optflags="${CFLAGS}" \
+ --extra-cflags="${CFLAGS}" \
+ --extra-cxxflags="${CXXFLAGS}" \
+ --extra-ldflags="${LDFLAGS}" \
+ --qmake=$(qt5_get_bindir)/qmake \
+ "${myconf[@]}"
+}
+
+src_install() {
+ emake STRIP="true" INSTALL_ROOT="${D}" install
+ use python && python_optimize # does all packages by default
+ dodoc AUTHORS UPGRADING README
+ readme.gentoo_create_doc
+
+ insinto /usr/share/mythtv/database
+ doins database/*
+
+ newinitd "${FILESDIR}"/mythbackend.init-r2 mythbackend
+ newconfd "${FILESDIR}"/mythbackend.conf-r1 mythbackend
+ if use systemd; then
+ systemd_newunit "${FILESDIR}"/mythbackend.service-28 mythbackend.service
+ fi
+
+ dodoc keys.txt
+
+ keepdir /etc/mythtv
+ fowners -R mythtv /etc/mythtv
+ keepdir /var/log/mythtv
+ fowners -R mythtv /var/log/mythtv
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/mythtv.logrotate.d-r4 mythtv
+
+ insinto /usr/share/mythtv/contrib
+ # Ensure we don't install scripts needing the perl bindings (bug #516968)
+ use perl || find contrib/ -name '*.pl' -exec rm -f {} \;
+ # Ensure we don't install scripts needing the python bindings (bug #516968)
+ use python || find contrib/ -name '*.py' -exec rm -f {} \;
+ doins -r contrib/*
+
+ # Install our mythfrontend wrapper which is similar to Mythbuntu's
+ if use wrapper; then
+ mv "${ED}/usr/bin/mythfrontend" "${ED}/usr/bin/mythfrontend.real" || die "Failed to install mythfrontend.real"
+ newbin "${FILESDIR}"/mythfrontend.wrapper mythfrontend
+ newconfd "${FILESDIR}"/mythfrontend.conf mythfrontend
+ fi
+
+ if use autostart; then
+ echo CONFIG_PROTECT=\"$(egethome mythtv)\" > "${T}"/95mythtv
+ doenvd "${T}"/95mythtv
+
+ insinto $(egethome mythtv)
+ newins "${FILESDIR}"/bash_profile .bash_profile
+ newins "${FILESDIR}"/xinitrc-r1 .xinitrc
+ fi
+
+ # Make Python files executable but not files named "__init__.py"
+ find "${ED}/usr/share/mythtv" -type f -name '*.py' -exec expr \( {} : '.*__init__.py' \) = 0 \; \
+ -exec chmod a+x {} \; || die "Failed to make python file $(basename ${file}) executable"
+
+ # Ensure that Python scripts are executed by Python 2
+ use python && python_fix_shebang "${ED}/usr/share/mythtv"
+
+ # Make shell & perl scripts executable
+ find "${ED}" -type f \( -name '*.sh' -o -name '*.pl' \) -exec chmod a+x {} \; || die "Failed to make script executable"
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+}
+
+pkg_info() {
+ return
+}
+
+pkg_config() {
+ if [[ -e "${EROOT}"/usr/bin/mysql ]]; then
+ "${EROOT}"/usr/bin/mysql -u root -p < "${EROOT}"/usr/share/mythtv/database/mc.sql
+ fi
+}
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/, media-tv/mythtv/files/
@ 2020-06-11 8:03 Joonas Niilola
0 siblings, 0 replies; 16+ messages in thread
From: Joonas Niilola @ 2020-06-11 8:03 UTC (permalink / raw
To: gentoo-commits
commit: 2bf3442e0ee9957afdf9a9f4f153297dc3e28e43
Author: Wilson Michaels <thebitpit <AT> earthlink <DOT> net>
AuthorDate: Sat Apr 4 14:41:48 2020 +0000
Commit: Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Thu Jun 11 08:03:24 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2bf3442e
media-tv/mythtv: Bump version 31.0
Bug: https://bugs.gentoo.org/712956
Package-Manager: Portage-2.3.99, Repoman-2.3.22
Signed-off-by: Wilson Michaels <thebitpit <AT> earthlink.net>
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>
media-tv/mythtv/Manifest | 1 +
media-tv/mythtv/files/mythbackend.init-r3 | 72 ++++
.../files/mythtv-31.0-Include_QPainterPath.patch | 15 +
.../mythtv/files/mythtv-31.0-Remove_ldconfig.patch | 13 +
media-tv/mythtv/metadata.xml | 1 +
media-tv/mythtv/mythtv-31.0.ebuild | 436 +++++++++++++++++++++
6 files changed, 538 insertions(+)
diff --git a/media-tv/mythtv/Manifest b/media-tv/mythtv/Manifest
index fe458fa1553..75765988e47 100644
--- a/media-tv/mythtv/Manifest
+++ b/media-tv/mythtv/Manifest
@@ -1,2 +1,3 @@
DIST mythtv-29.1-r1.tar.gz 105657217 BLAKE2B 9d42464b0c75c2d3a359b528e3f7917cfb281f48451167afc6517caa9702da44fce2d48566fd902ec08af35117232113b4d499e2c9a3cf2ad2634d91cf532ca7 SHA512 0eadc37661d9fa93a63c0f425cd43d43533889b0afcea1478b2645e083ba6c96eebf2eec088db1ed6f0a0727c03b7c90c0c18b83c194d630dda3bac45bca5d87
DIST mythtv-30.0_p20190808.tar.gz 101208060 BLAKE2B af8966dd6353fc514c9a95083f28e8b7b19f16e1bd5a4f7590a946c306bf16a09f0028c76da975e423136834f8f06d7f2a570b43957ef4ae5e42ee241b579f0a SHA512 c02371c0b2162556e40a560a0fd9cb121f46f2ccedbc2ca74cd03aa9caf2b7ea4bbaa09ae6320eb782f932190f449e7fdd274a6d6ba9676e5fd9b7f5432632a2
+DIST mythtv-31.0.tar.gz 102552136 BLAKE2B b09b41230eb2cae19d770c3cc59151863e0a56e95a86627473d52613e62f0acf3bd0c4bb37afb340ab874c222899f9d3c219ded470785d27960db9b39d784ceb SHA512 d53817231409934ef37d12739c38cf6936f04f816b0ba1c9738ce99b5b4ff387c70b683ccd84f649ff2f74992b2158829f5f1d1ffe06c8768da1922b90439f6e
diff --git a/media-tv/mythtv/files/mythbackend.init-r3 b/media-tv/mythtv/files/mythbackend.init-r3
new file mode 100644
index 00000000000..41ad04f0fa0
--- /dev/null
+++ b/media-tv/mythtv/files/mythbackend.init-r3
@@ -0,0 +1,72 @@
+#!/sbin/openrc-run
+# Copyright 1999-2020 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="MythTV backend recording daemon"
+extra_started_commands="resched upnprebuild"
+description_resched="Forces the recording scheduler to update"
+description_upnprebuild="Rebuilds the UPnP media cache"
+
+MYTHBACKEND_OPTS=${MYTHBACKEND_OPTS:-"${MYTHBACKEND_OPTS}"}
+MYTHBACKEND_VERBOSE=${MYTHBACKEND_VERBOSE:-"general"}
+MYTHBACKEND_LOGGING=${MYTHBACKEND_LOGGING:-"files"}
+
+name="MythTV backend"
+command="/usr/bin/mythbackend"
+pidfile="/run/mythtv/mythbackend.pid"
+start_stop_daemon_args="--pidfile ${pidfile} --user mythtv:mythtv"
+command_args="--daemon --pidfile ${pidfile} --verbose ${MYTHBACKEND_VERBOSE} ${MYTHBACKEND_OPTS}"
+
+depend() {
+ # mythbackend doesn't need to run on the same machine that
+ # mysql runs on. so its use for that reason
+ use logger net.lo mysql LCDd
+}
+
+start_pre() {
+ case "${MYTHBACKEND_LOGGING}" in
+ database) logging="--enable-dblog" ;;
+ syslog\ *) logging="--${MYTHBACKEND_LOGGING}" ;;
+ files) logging="--logpath /var/log/mythtv" ;;
+ console) logging="--nologserver" ;;
+ *)
+ eerror "Invalid MYTHBACKEND_LOGGING value"
+ exit 1
+ ;;
+ esac
+
+ #fixes for bug #101308
+ unset DISPLAY
+ unset SESSION_MANAGER
+
+ # Work around any strange permissions that may be on these files.
+ [ "x${MYTHBACKEND_LOGGING}" = "xfiles" ] && \
+ checkpath --directory --owner mythtv:mythtv --mode 0755 /var/log/mythtv
+ checkpath --directory --owner mythtv:mythtv --mode 0775 "{$HOME}"
+ checkpath --directory --owner mythtv:mythtv --mode 0750 /run/mythtv
+}
+
+start() {
+ ebegin "Starting ${name}"
+ start-stop-daemon --start ${start_stop_daemon_args} --exec ${command} \
+ -- ${command_args} ${logging}
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping ${name}"
+ start-stop-daemon --stop --retry 10 --progress --pidfile ${pidfile}
+ eend $?
+}
+
+resched() {
+ ebegin "Updating the recording scheduler"
+ ${command} --resched
+ eend $?
+}
+
+upnprebuild() {
+ ebegin "Rebuilding UPnP media cache"
+ ${command} --upnprebuild
+ eend $?
+}
diff --git a/media-tv/mythtv/files/mythtv-31.0-Include_QPainterPath.patch b/media-tv/mythtv/files/mythtv-31.0-Include_QPainterPath.patch
new file mode 100644
index 00000000000..f0f09a5c451
--- /dev/null
+++ b/media-tv/mythtv/files/mythtv-31.0-Include_QPainterPath.patch
@@ -0,0 +1,15 @@
+# Change in upstream master after release mythtv-31.0
+
+diff --git a/mythtv/libs/libmythui/mythpainter.cpp b/mythtv/libs/libmythui/mythpainter.cpp
+index 639ea41b30..221a7fe2b7 100644
+--- a/libs/libmythui/mythpainter.cpp
++++ b/libs/libmythui/mythpainter.cpp
+@@ -5,6 +5,7 @@
+ // QT headers
+ #include <QRect>
+ #include <QPainter>
++#include <QPainterPath>
+
+ // libmythbase headers
+ #include "mythlogging.h"
+
diff --git a/media-tv/mythtv/files/mythtv-31.0-Remove_ldconfig.patch b/media-tv/mythtv/files/mythtv-31.0-Remove_ldconfig.patch
new file mode 100644
index 00000000000..7182f4e69f8
--- /dev/null
+++ b/media-tv/mythtv/files/mythtv-31.0-Remove_ldconfig.patch
@@ -0,0 +1,13 @@
+diff --git a/mythtv/programs/mythfrontend/mythfrontend.pro b/mythtv/programs/mythfrontend/mythfrontend.pro
+index 82c9ea1bb6..cd6894dcbc 100644
+--- a/programs/mythfrontend/mythfrontend.pro
++++ b/programs/mythfrontend/mythfrontend.pro
+@@ -21,7 +21,6 @@ INSTALLS = target
+
+ setting.path = $${PREFIX}/share/mythtv/
+ setting.files += MFEXML_scpd.xml
+-setting.extra = -ldconfig
+
+ INSTALLS += setting
+
+
diff --git a/media-tv/mythtv/metadata.xml b/media-tv/mythtv/metadata.xml
index 3360a064da6..bdf4a7d2994 100644
--- a/media-tv/mythtv/metadata.xml
+++ b/media-tv/mythtv/metadata.xml
@@ -29,6 +29,7 @@
<flag name="lcd">Enable use of <pkg>app-misc/lcdproc</pkg> data display</flag>
<flag name="lirc">LIRC remote control device support</flag>
<flag name="mythlogserver">Enable support for syslog and file logging</flag>
+ <flag name="nvdec">Enable NVDEC (NVCUVID) hardware accelerated video decoding</flag>
<flag name="perl">Build the perl bindings for MythTV</flag>
<flag name="vbox">V@Box Communications network-attached tuner devices support</flag>
<flag name="vpx">Enable VP8/VP9 support for <pkg>media-libs/libvpx</pkg></flag>
diff --git a/media-tv/mythtv/mythtv-31.0.ebuild b/media-tv/mythtv/mythtv-31.0.ebuild
new file mode 100644
index 00000000000..88bd8690dfe
--- /dev/null
+++ b/media-tv/mythtv/mythtv-31.0.ebuild
@@ -0,0 +1,436 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python2_7 python3_{6,7} )
+
+MY_P=${P%_p*}
+MY_PV=${PV%_p*}
+
+inherit eutils flag-o-matic python-any-r1 qmake-utils readme.gentoo-r1 systemd user-info
+
+MYTHTV_BRANCH="fixes/${P%.*}"
+
+DESCRIPTION="Open Source DVR and media center hub"
+HOMEPAGE="https://www.mythtv.org https://github.com/MythTV/mythtv"
+SRC_URI="https://github.com/MythTV/mythtv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+"
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+
+IUSE_INPUT_DEVICES="input_devices_joystick"
+IUSE_VIDEO_CAPTURE_DEVICES="v4l ivtv ieee1394 hdpvr hdhomerun vbox ceton"
+IUSE="alsa altivec asi autostart bluray cdda cdr cec debug dvd dvb egl exif fftw jack java
+ +lame lcd libass lirc nvdec +opengl oss perl pulseaudio python raw systemd vaapi vdpau vpx
+ +wrapper x264 x265 +xml xmltv +xvid +X zeroconf
+ ${IUSE_INPUT_DEVICES} ${IUSE_VIDEO_CAPTURE_DEVICES}"
+
+REQUIRED_USE="
+ bluray? ( xml )
+ cdr? ( cdda )
+"
+RDEPEND="
+ acct-user/mythtv
+ dev-libs/glib:2
+ dev-libs/lzo
+ dev-qt/qtcore:5
+ dev-qt/qtdbus:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtscript:5
+ dev-qt/qtsql:5[mysql]
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ media-fonts/corefonts
+ media-fonts/dejavu
+ media-fonts/liberation-fonts
+ media-fonts/tex-gyre
+ media-gfx/exiv2:=
+ media-libs/freetype:2
+ media-libs/libsamplerate
+ media-libs/taglib
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ autostart? (
+ net-dialup/mingetty
+ x11-apps/xset
+ x11-wm/evilwm
+ )
+ bluray? (
+ dev-libs/libcdio:=
+ media-libs/libbluray:=[java?]
+ sys-fs/udisks:2
+ )
+ cec? ( dev-libs/libcec )
+ dvd? (
+ dev-libs/libcdio:=
+ media-libs/libdvdcss
+ sys-fs/udisks:2
+ )
+ egl? ( media-libs/mesa[egl] )
+ fftw? ( sci-libs/fftw:3.0=[threads] )
+ hdhomerun? ( media-libs/libhdhomerun )
+ ieee1394? (
+ media-libs/libiec61883
+ sys-libs/libavc1394
+ sys-libs/libraw1394
+ )
+ jack? ( media-sound/jack-audio-connection-kit )
+ java? ( dev-java/ant-core )
+ lame? ( media-sound/lame )
+ lcd? ( app-misc/lcdproc )
+ libass? ( media-libs/libass:= )
+ lirc? ( app-misc/lirc )
+ nvdec? ( x11-drivers/nvidia-drivers )
+ opengl? ( dev-qt/qtopengl:5 )
+ pulseaudio? ( media-sound/pulseaudio )
+ systemd? ( sys-apps/systemd:= )
+ vaapi? ( x11-libs/libva:=[opengl] )
+ vdpau? ( x11-libs/libvdpau )
+ vpx? ( media-libs/libvpx:= )
+ x264? ( media-libs/x264:= )
+ X? (
+ x11-apps/xinit
+ x11-libs/libX11:=
+ x11-libs/libXext:=
+ x11-libs/libXinerama:=
+ x11-libs/libXrandr:=
+ x11-libs/libXv:=
+ x11-libs/libXxf86vm:=
+ x11-misc/wmctrl:=
+ )
+ x265? ( media-libs/x265 )
+ xml? ( dev-libs/libxml2:2 )
+ xmltv? (
+ dev-perl/XML-LibXML
+ dev-qt/qtwebkit:5
+ media-tv/xmltv
+ )
+ xvid? ( media-libs/xvid )
+ zeroconf? (
+ dev-libs/openssl:=
+ net-dns/avahi[mdnsresponder-compat]
+ )
+"
+BDEPEND="
+ virtual/pkgconfig
+ opengl? ( virtual/opengl )
+ python? ( ${PYTHON_DEPS} )
+"
+DEPEND="
+ ${RDEPEND}
+ dev-lang/yasm
+ x11-base/xorg-proto
+ perl? (
+ dev-perl/DBD-mysql
+ dev-perl/DBI
+ dev-perl/HTTP-Message
+ dev-perl/IO-Socket-INET6
+ dev-perl/LWP-Protocol-https
+ dev-perl/Net-UPnP
+ dev-perl/XML-Simple
+ )
+ python? (
+ $(python_gen_any_dep '
+ dev-python/future[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/mysqlclient[${PYTHON_USEDEP}]
+ dev-python/simplejson[${PYTHON_USEDEP}]
+ ')
+ )
+"
+python_check_deps() {
+ use python || return 0
+ has_version "dev-python/future[${PYTHON_USEDEP}]" &&
+ has_version "dev-python/lxml[${PYTHON_USEDEP}]" &&
+ has_version "dev-python/mysqlclient[${PYTHON_USEDEP}]" &&
+ has_version "dev-python/simplejson[${PYTHON_USEDEP}]"
+}
+
+PATCHES=(
+ "${FILESDIR}/${PN}-30.0_p20190808-respect_LDFLAGS.patch"
+ "${FILESDIR}/${P}-Remove_ldconfig.patch"
+ "${FILESDIR}/${P}-Include_QPainterPath.patch"
+)
+
+# mythtv and mythplugins are separate builds in the github mythtv project
+S="${WORKDIR}/${P}/mythtv"
+
+DISABLE_AUTOFORMATTING="yes"
+DOC_CONTENTS="
+If a MYSQL server is installed, a mythtv MySQL user and mythconverg database
+is created if it does not already exist.
+You will be prompted for your MySQL root password.
+
+A mythtv user is maintained by acct-user/mythtv. An existing mythtv user
+may be modified to the configuration defined by acct-user/mythtv.
+The mythtv user's primary group is now mythtv. (formerly video)
+An existing mythtv user may be changed which may alter some functionality.
+If it breaks mythtv you may need to (choose one):
+ * Restore the original mythtv user
+ * Create custom acct-user/mythtv overlay for your system
+ * Fix you system to use mythtv as daemon only (recommended)
+Failure to emerge acct-user/mythtv indicates that the existing mythtv user
+is customized and not changed. Corrective action (choose one):
+ * Ignore emerge failure
+ * Create custom acct-user/mythtv overlay for your system
+ * Fix you system to use mythtv as daemon only
+ * Delete existing user and try again (dangerous)
+
+Mythtv is updated to use correct FHS/Gentoo policy paths.
+Updating mythtv installations may report:
+ * mythtv is in use, cannot update home
+ * There was an error when attempting to update the home directory for mythtv
+ * Please update it manually on your system (as root):
+ * usermod -d "/var/lib/mythtv" "mythtv"
+This can be ignored. The previous default was "/home/mythtv".
+Use caution if you change the home directory.
+
+To have this machine operate as recording host for MythTV,
+mythbackend must be running. Run the following:
+rc-update add mythbackend default
+
+Your recordings folder must be owned 'mythtv'. e.g.
+chown -R mythtv /var/lib/mythtv
+
+Want mythfrontend to start automatically?
+Set USE=autostart. Details can be found at:
+https://dev.gentoo.org/~cardoe/mythtv/autostart.html
+
+Note that the systemd unit now restarts by default and logs
+to journald via the console at the notice verbosity.
+"
+
+pkg_setup() {
+ use python && python-any-r1_pkg_setup
+ # The acct-user/mythtv package creates/manages the user 'mythtv'
+}
+
+src_prepare() {
+ default
+
+ # Perl bits need to go into vender_perl and not site_perl
+ sed -e "s:pure_install:pure_install INSTALLDIRS=vendor:" \
+ -i "${S}"/bindings/perl/Makefile || die "Cannot convert site_perl to vendor_perl!"
+
+ # Fix up the version info when using the fixes/${PV} branch
+# echo "SOURCE_VERSION=\"v${MY_PV}\"" > "${S}"/VERSION
+# echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/VERSION
+# echo "SOURCE_VERSION=\"${BACKPORTS}\"" > "${S}"/EXPORTED_VERSION
+# echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/EXPORTED_VERSION
+}
+
+src_configure() {
+ local -a myconf
+
+ # Setup paths
+ myconf+=(--prefix="${EPREFIX}"/usr)
+ myconf+=(--libdir="${EPREFIX}"/usr/$(get_libdir))
+ myconf+=(--libdir-name=$(get_libdir))
+ myconf+=(--mandir="${EPREFIX}"/usr/share/man)
+
+ if use debug; then
+ myconf+=(--compile-type=debug)
+ myconf+=(--disable-stripping) # FIXME: does not disable for all files, only for some
+ myconf+=(--enable-valgrind) # disables timeouts for valgrind memory debugging
+ else
+ myconf+=(--compile-type=release)
+ fi
+
+ # Build boosters
+ has ccache "${FEATURES}" || myconf+=(--disable-ccache)
+ has distcc "${FEATURES}" || myconf+=(--disable-distcc)
+
+ # CPU settings
+ # Mythtv's configure is borrowed from ffmpeg,
+ # Bug #172723
+ # Try to get cpu type based on CFLAGS.
+ # We need to do this so that features of that CPU will be better used
+ # If they contain an unknown CPU it will not hurt since ffmpeg's configure
+ # will just ignore it.
+ for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
+ [ "${i}" = "native" ] && i="host" # bug #273421
+ myconf+=(--cpu="${i}")
+ break
+ done
+ myconf+=($(use_enable altivec))
+
+ # Sound Output Support
+ myconf+=(
+ $(use_enable oss audio-oss)
+ $(use_enable alsa audio-alsa)
+ $(use_enable jack audio-jack)
+ $(use_enable pulseaudio audio-pulseoutput)
+ )
+
+ # Input Support
+ myconf+=(
+ $(use_enable lirc)
+ $(use_enable input_devices_joystick joystick-menu)
+ $(use_enable cec libcec)
+ $(use_enable ieee1394 firewire)
+ $(use_enable hdhomerun)
+ $(use_enable vbox)
+ $(use_enable ceton)
+ $(use_enable v4l v4l2)
+ $(use_enable ivtv)
+ $(use_enable hdpvr)
+ $(use_enable dvb)
+ $(use_enable asi)
+ )
+
+ # Video Output Support
+ myconf+=(
+ $(use_enable X x11)
+ $(use_enable X xrandr)
+ )
+
+ # Hardware accellerators
+ myconf+=(
+ $(use_enable nvdec)
+ $(use_enable vaapi)
+ $(use_enable vdpau)
+ $(use_enable opengl)
+ $(use_enable libass)
+ )
+
+ # System tools
+ myconf+=(
+ $(use_enable systemd systemd_notify)
+ $(use_enable systemd systemd_journal)
+ $(use_enable xml libxml2)
+ $(use_enable zeroconf libdns-sd)
+ )
+
+ # Bindings
+ if use perl && use python; then
+ myconf+=(--with-bindings=perl,python)
+ elif use perl; then
+ myconf+=(--without-bindings=python)
+ myconf+=(--with-bindings=perl)
+ elif use python; then
+ myconf+=(--without-bindings=perl)
+ myconf+=(--with-bindings=python)
+ else
+ myconf+=(--without-bindings=perl,python)
+ fi
+ use python && myconf+=(--python="${EPYTHON}")
+ myconf+=($(use_enable java bdjava))
+
+ # External codec library options (used for mythffmpeg and streaming transcode)
+ # lame is required for some broadcasts for silence detection of commercials
+ # default enable in IUSE with +lame
+ myconf+=(
+ $(use_enable lame libmp3lame)
+ $(use_enable xvid libxvid)
+ $(use_enable x264 libx264)
+ $(use_enable x265 libx265)
+ $(use_enable vpx libvpx)
+ )
+
+ # Clean up DSO load times and other compiler bits
+ myconf+=(--enable-symbol-visibility)
+ myconf+=(--enable-pic)
+
+ if tc-is-cross-compiler ; then
+ myconf+=(--enable-cross-compile --arch=$(tc-arch-kernel))
+ myconf+=(--cross-prefix="${CHOST}"-)
+ fi
+
+ myconf+=($(use_enable bluray libbluray_external))
+
+ # econf sets these options that are not handled by configure:
+ # --build --host --infodir --localstatedir --sysconfdir
+
+ einfo "Running ./configure ${myconf[@]} - THIS MAY TAKE A WHILE."
+ ./configure \
+ --prefix="${EPREFIX}/usr" \
+ --cc="$(tc-getCC)" \
+ --cxx="$(tc-getCXX)" \
+ --ar="$(tc-getAR)" \
+ --optflags="${CFLAGS}" \
+ --extra-cflags="${CFLAGS}" \
+ --extra-cxxflags="${CXXFLAGS}" \
+ --extra-ldflags="${LDFLAGS}" \
+ --qmake=$(qt5_get_bindir)/qmake \
+ "${myconf[@]}"
+}
+
+src_install() {
+ emake STRIP="true" INSTALL_ROOT="${D}" install
+ use python && python_optimize # does all packages by default
+ dodoc AUTHORS UPGRADING README
+ readme.gentoo_create_doc
+
+ insinto /usr/share/mythtv/database
+ doins database/*
+
+ newinitd "${FILESDIR}"/mythbackend.init-r3 mythbackend
+ newconfd "${FILESDIR}"/mythbackend.conf-r1 mythbackend
+ if use systemd; then
+ systemd_newunit "${FILESDIR}"/mythbackend.service-28 mythbackend.service
+ fi
+
+ dodoc keys.txt
+
+ keepdir /etc/mythtv
+ fowners -R mythtv /etc/mythtv
+ keepdir /var/log/mythtv
+ fowners -R mythtv /var/log/mythtv
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/mythtv.logrotate.d-r4 mythtv
+
+ insinto /usr/share/mythtv/contrib
+ # Ensure we don't install scripts needing the perl bindings (bug #516968) Finding none is OK.
+ if use perl; then
+ find contrib/ -name '*.pl' -exec rm {} \;
+ fi
+ # Ensure we don't install scripts needing the python bindings (bug #516968) Finding none is OK.
+ if use python; then
+ find contrib/ -name '*.py' -exec rm {} \;
+ fi
+ doins -r contrib/*
+
+ # Install our mythfrontend wrapper which is similar to Mythbuntu's
+ if use wrapper; then
+ mv "${ED}/usr/bin/mythfrontend" "${ED}/usr/bin/mythfrontend.real" || die "Failed to install mythfrontend.real"
+ newbin "${FILESDIR}"/mythfrontend.wrapper mythfrontend
+ newconfd "${FILESDIR}"/mythfrontend.conf mythfrontend
+ fi
+
+ if use autostart; then
+ newenvd - 95mythtv <<- _EOF_
+ CONFIG_PROTECT=\"$(egethome mythtv)\"
+ _EOF_
+ insinto $(egethome mythtv)
+ newins "${FILESDIR}"/bash_profile .bash_profile
+ newins "${FILESDIR}"/xinitrc-r1 .xinitrc
+ fi
+
+ # Make Python files executable but not files named "__init__.py"
+ find "${ED}/usr/share/mythtv" -type f -name '*.py' -exec expr \( {} : '.*__init__.py' \) = 0 \; \
+ -exec chmod a+x {} \; || die "Failed to make python file $(basename ${file}) executable"
+
+ # Ensure that Python scripts are executed by Python 2
+ use python && python_fix_shebang "${ED}/usr/share/mythtv"
+
+ # Make shell & perl scripts executable
+ find "${ED}" -type f \( -name '*.sh' -o -name '*.pl' \) -exec chmod a+x {} \; || die "Failed to make script executable"
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+}
+
+pkg_info() {
+ return
+}
+
+pkg_config() {
+ if [[ -e "${EROOT}"/usr/bin/mysql ]]; then
+ "${EROOT}"/usr/bin/mysql -u root -p < "${EROOT}"/usr/share/mythtv/database/mc.sql
+ fi
+}
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/, media-tv/mythtv/files/
@ 2020-07-25 15:51 Andreas Sturmlechner
0 siblings, 0 replies; 16+ messages in thread
From: Andreas Sturmlechner @ 2020-07-25 15:51 UTC (permalink / raw
To: gentoo-commits
commit: 6a1960b5bef9b9416f1438b6bdaaaa5a22b4c8d5
Author: Wilson Michaels <thebitpit <AT> earthlink <DOT> net>
AuthorDate: Sat Jul 25 14:57:07 2020 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Jul 25 15:51:21 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6a1960b5
media-tv/mythtv: remove old ebuild, metadata, and patch files
Package-Manager: Portage-2.3.103, Repoman-2.3.23
Signed-off-by: Wilson Michaels <thebitpit <AT> earthlink.net>
Closes: https://github.com/gentoo/gentoo/pull/16814
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
media-tv/mythtv/Manifest | 1 -
.../mythtv/files/mythtv-29.1-exiv2-0.27.1.patch | 21 --
media-tv/mythtv/metadata.xml | 2 -
media-tv/mythtv/mythtv-29.1-r3.ebuild | 374 ---------------------
4 files changed, 398 deletions(-)
diff --git a/media-tv/mythtv/Manifest b/media-tv/mythtv/Manifest
index 75765988e47..2cd0c5dfd6b 100644
--- a/media-tv/mythtv/Manifest
+++ b/media-tv/mythtv/Manifest
@@ -1,3 +1,2 @@
-DIST mythtv-29.1-r1.tar.gz 105657217 BLAKE2B 9d42464b0c75c2d3a359b528e3f7917cfb281f48451167afc6517caa9702da44fce2d48566fd902ec08af35117232113b4d499e2c9a3cf2ad2634d91cf532ca7 SHA512 0eadc37661d9fa93a63c0f425cd43d43533889b0afcea1478b2645e083ba6c96eebf2eec088db1ed6f0a0727c03b7c90c0c18b83c194d630dda3bac45bca5d87
DIST mythtv-30.0_p20190808.tar.gz 101208060 BLAKE2B af8966dd6353fc514c9a95083f28e8b7b19f16e1bd5a4f7590a946c306bf16a09f0028c76da975e423136834f8f06d7f2a570b43957ef4ae5e42ee241b579f0a SHA512 c02371c0b2162556e40a560a0fd9cb121f46f2ccedbc2ca74cd03aa9caf2b7ea4bbaa09ae6320eb782f932190f449e7fdd274a6d6ba9676e5fd9b7f5432632a2
DIST mythtv-31.0.tar.gz 102552136 BLAKE2B b09b41230eb2cae19d770c3cc59151863e0a56e95a86627473d52613e62f0acf3bd0c4bb37afb340ab874c222899f9d3c219ded470785d27960db9b39d784ceb SHA512 d53817231409934ef37d12739c38cf6936f04f816b0ba1c9738ce99b5b4ff387c70b683ccd84f649ff2f74992b2158829f5f1d1ffe06c8768da1922b90439f6e
diff --git a/media-tv/mythtv/files/mythtv-29.1-exiv2-0.27.1.patch b/media-tv/mythtv/files/mythtv-29.1-exiv2-0.27.1.patch
deleted file mode 100644
index afdf423355e..00000000000
--- a/media-tv/mythtv/files/mythtv-29.1-exiv2-0.27.1.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-Fix build with exiv2-0.27.1
-Thanks-to: Amel Hodzic <ilmostro7@gmail.com>
-
---- a/libs/libmythmetadata/imagemetadata.cpp
-+++ b/libs/libmythmetadata/imagemetadata.cpp
-@@ -7,14 +7,7 @@
- #include "exitcodes.h" // for ffprobe
-
- // libexiv2 for Exif metadata
--//#include <exiv2/exiv2.hpp>
--// Note: Older versions of Exiv2 don't have the exiv2.hpp include
--// file. Using image.hpp instead seems to work.
--#ifdef _MSC_VER
--#include <exiv2/src/image.hpp>
--#else
--#include <exiv2/image.hpp>
--#endif
-+#include <exiv2/exiv2.hpp>
-
- // To read FFMPEG Metadata
- extern "C" {
diff --git a/media-tv/mythtv/metadata.xml b/media-tv/mythtv/metadata.xml
index bdf4a7d2994..73a0226c88a 100644
--- a/media-tv/mythtv/metadata.xml
+++ b/media-tv/mythtv/metadata.xml
@@ -21,14 +21,12 @@
<flag name="fftw">Support visualizations via <pkg>sci-libs/fftw</pkg></flag>
<flag name="hdhomerun">Silicondust USA Inc.network-attached tuner support</flag>
<flag name="hdpvr">Hauppauge HD-PVR?</flag>
- <flag name="hls">HTTP Live Streaming support</flag>
<flag name="ieee1394">Firewire enabled Cable boxe support</flag>
<flag name="ivtv">Support kernel driver for the iTVC15 family of MPEG codecs</flag>
<flag name="jack">Allows MythTV to use JACK as your sound output device</flag>
<flag name="java">BD-J support for Blu-ray discs</flag>
<flag name="lcd">Enable use of <pkg>app-misc/lcdproc</pkg> data display</flag>
<flag name="lirc">LIRC remote control device support</flag>
- <flag name="mythlogserver">Enable support for syslog and file logging</flag>
<flag name="nvdec">Enable NVDEC (NVCUVID) hardware accelerated video decoding</flag>
<flag name="perl">Build the perl bindings for MythTV</flag>
<flag name="vbox">V@Box Communications network-attached tuner devices support</flag>
diff --git a/media-tv/mythtv/mythtv-29.1-r3.ebuild b/media-tv/mythtv/mythtv-29.1-r3.ebuild
deleted file mode 100644
index 36d423879a1..00000000000
--- a/media-tv/mythtv/mythtv-29.1-r3.ebuild
+++ /dev/null
@@ -1,374 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-PYTHON_COMPAT=( python2_7 )
-
-# git diff --relative=mythtv v0.27.6.. > ~/mythtv-0.27.6/patches/mythtv.patch
-BACKPORTS="d8a2db77f5731cf32c6d31127452391c6cf7f91f"
-MY_P=${P%_p*}
-MY_PV=${PV%_p*}
-
-inherit flag-o-matic python-single-r1 qmake-utils user-info readme.gentoo-r1 systemd toolchain-funcs vcs-snapshot
-
-MYTHTV_BRANCH="fixes/29"
-
-DESCRIPTION="Homebrew PVR project"
-HOMEPAGE="https://www.mythtv.org"
-SRC_URI="https://github.com/MythTV/mythtv/archive/${BACKPORTS}.tar.gz -> ${P}-r1.tar.gz"
-
-LICENSE="GPL-2"
-KEYWORDS="~amd64 ~x86"
-SLOT="0/${PV}"
-
-IUSE_INPUT_DEVICES="input_devices_joystick"
-IUSE="alsa altivec autostart bluray cec debug dvb dvd egl fftw +hls \
- ieee1394 jack lcd libass lirc mythlogserver perl pulseaudio python systemd +theora \
- vaapi vdpau +vorbis +wrapper +xml xmltv +xvid zeroconf ${IUSE_INPUT_DEVICES}"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- bluray? ( xml )
- theora? ( vorbis )
-"
-
-COMMON="
- acct-user/mythtv
- dev-libs/glib:2
- dev-qt/qtcore:5
- dev-qt/qtdbus:5
- dev-qt/qtgui:5
- dev-qt/qtnetwork:5
- dev-qt/qtscript:5
- dev-qt/qtsql:5[mysql]
- dev-qt/qtopengl:5
- dev-qt/qtwebkit:5
- dev-qt/qtwidgets:5
- dev-qt/qtxml:5
- media-gfx/exiv2:=
- media-libs/freetype:2
- media-libs/taglib
- >=media-sound/lame-3.93.1
- sys-libs/zlib
- virtual/opengl
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXinerama
- x11-libs/libXv
- x11-libs/libXrandr
- x11-libs/libXxf86vm
- x11-misc/wmctrl
- alsa? ( >=media-libs/alsa-lib-1.0.24 )
- bluray? (
- dev-libs/libcdio:=
- media-libs/libbluray:=
- sys-fs/udisks:2
- )
- cec? ( dev-libs/libcec )
- dvd? (
- dev-libs/libcdio:=
- sys-fs/udisks:2
- )
- egl? ( media-libs/mesa[egl] )
- fftw? ( sci-libs/fftw:3.0= )
- hls? (
- <media-libs/libvpx-1.8.0:=
- >=media-libs/x264-0.0.20111220:=
- )
- ieee1394? (
- >=media-libs/libiec61883-1.0.0
- >=sys-libs/libavc1394-0.5.3
- >=sys-libs/libraw1394-1.2.0
- )
- jack? ( media-sound/jack-audio-connection-kit )
- lcd? ( app-misc/lcdproc )
- libass? ( >=media-libs/libass-0.9.11:= )
- lirc? ( app-misc/lirc )
- perl? (
- >=dev-perl/libwww-perl-5
- dev-perl/DBD-mysql
- dev-perl/HTTP-Message
- dev-perl/IO-Socket-INET6
- dev-perl/LWP-Protocol-https
- dev-perl/Net-UPnP
- )
- pulseaudio? ( media-sound/pulseaudio )
- python? (
- ${PYTHON_DEPS}
- dev-python/lxml
- dev-python/mysql-python
- dev-python/urlgrabber
- dev-python/future
- dev-python/requests-cache
- )
- systemd? ( sys-apps/systemd:= )
- theora? ( media-libs/libtheora media-libs/libogg )
- vaapi? ( x11-libs/libva:=[opengl] )
- vdpau? ( x11-libs/libvdpau )
- vorbis? ( >=media-libs/libvorbis-1.0 media-libs/libogg )
- xml? ( >=dev-libs/libxml2-2.6.0 )
- xvid? ( >=media-libs/xvid-1.1.0 )
- zeroconf? (
- dev-libs/openssl:0=
- net-dns/avahi[mdnsresponder-compat]
- )
-"
-RDEPEND="${COMMON}
- media-fonts/corefonts
- media-fonts/dejavu
- media-fonts/liberation-fonts
- x11-apps/xinit
- autostart? (
- net-dialup/mingetty
- x11-apps/xset
- x11-wm/evilwm
- )
- dvd? ( media-libs/libdvdcss )
- xmltv? ( >=media-tv/xmltv-0.5.43 )
-"
-DEPEND="${COMMON}
- dev-lang/yasm
- virtual/pkgconfig
- x11-base/xorg-proto
-"
-
-S="${WORKDIR}/${P}-r1/mythtv"
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-If a MYSQL server is installed, a mythtv MySQL user and mythconverg database
-is created if it does not already exist.
-You will be prompted for your MySQL root password.
-
-To have this machine operate as recording host for MythTV,
-mythbackend must be running. Run the following:
-rc-update add mythbackend default
-
-Your recordings folder must be owned 'mythtv'. e.g.
-chown -R mythtv /var/lib/mythtv
-
-Want mythfrontend to start automatically?
-Set USE=autostart. Details can be found at:
-https://dev.gentoo.org/~cardoe/mythtv/autostart.html
-
-Note that the systemd unit now restarts by default and logs
-to journald via the console at the notice verbosity.
-"
-
-MYTHTV_GROUPS="video,audio,tty,uucp"
-
-PATCHES=(
- "${FILESDIR}/${P}-exiv2-0.27.1.patch"
- "${FILESDIR}/${P}-Fix_create_webbrowser_window.patch"
- "${FILESDIR}/${P}-Include_QPainterPath.patch"
-)
-
-pkg_setup() {
- python-single-r1_pkg_setup
- # The acct-user/mythtv package creates/manages the user 'mythtv'
-}
-
-src_prepare() {
- default
-
- # Perl bits need to go into vender_perl and not site_perl
- sed -e "s:pure_install:pure_install INSTALLDIRS=vendor:" \
- -i "${S}"/bindings/perl/Makefile
-
- # Fix up the version info since we are using the fixes/${PV} branch
- echo "SOURCE_VERSION=\"v${MY_PV}\"" > "${S}"/VERSION
- echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/VERSION
- echo "SOURCE_VERSION=\"${BACKPORTS}\"" > "${S}"/EXPORTED_VERSION
- echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/EXPORTED_VERSION
-
- echo "setting.extra -= -ldconfig" >> "${S}"/programs/mythfrontend/mythfrontend.pro
-}
-
-src_configure() {
- local myconf=
-
- # Setup paths
- myconf="${myconf} --prefix=${EPREFIX}/usr"
- myconf="${myconf} --libdir=${EPREFIX}/usr/$(get_libdir)"
- myconf="${myconf} --libdir-name=$(get_libdir)"
- myconf="${myconf} --mandir=${EPREFIX}/usr/share/man"
-
- # Audio
- myconf="${myconf} $(use_enable alsa audio-alsa)"
- myconf="${myconf} $(use_enable jack audio-jack)"
- use pulseaudio || myconf="${myconf} --disable-audio-pulseoutput"
-
- use altivec || myconf="${myconf} --disable-altivec"
- myconf="${myconf} $(use_enable dvb)"
- myconf="${myconf} $(use_enable ieee1394 firewire)"
- myconf="${myconf} $(use_enable lirc)"
- myconf="${myconf} $(use_enable xvid libxvid)"
- myconf="${myconf} --dvb-path=/usr/include"
- myconf="${myconf} --enable-xrandr"
- myconf="${myconf} --enable-xv"
- myconf="${myconf} --enable-x11"
- myconf="${myconf} --enable-nonfree"
- myconf="${myconf} --enable-libmp3lame" # lame is not optional it is required for some broadcasts for silence detection of commercials
- use cec || myconf="${myconf} --disable-libcec"
- use zeroconf || myconf="${myconf} --disable-libdns-sd"
- myconf="${myconf} $(use_enable theora libtheora)"
- myconf="${myconf} $(use_enable vorbis libvorbis)"
-
- if use hls; then
- myconf="${myconf} --enable-libx264"
- myconf="${myconf} --enable-libvpx"
- fi
-
- myconf="${myconf} $(use_enable libass)"
-
- if use perl && use python; then
- myconf="${myconf} --with-bindings=perl,python"
- elif use perl; then
- myconf="${myconf} --without-bindings=python"
- myconf="${myconf} --with-bindings=perl"
- elif use python; then
- myconf="${myconf} --without-bindings=perl"
- myconf="${myconf} --with-bindings=python"
- else
- myconf="${myconf} --without-bindings=perl,python"
- fi
-
- use python && myconf="${myconf} --python=${EPYTHON}"
-
- if use debug; then
- myconf="${myconf} --compile-type=debug"
- else
- myconf="${myconf} --compile-type=release"
- #myconf="${myconf} --enable-debug" does nothing per sphery
- myconf="${myconf} --disable-stripping" # FIXME: does not disable for all files, only for some
- fi
-
- # Video
- myconf="${myconf} $(use_enable vdpau)"
- myconf="${myconf} $(use_enable vaapi)"
-
- # Input
- use input_devices_joystick || myconf="${myconf} --disable-joystick-menu"
-
- # Clean up DSO load times and other compiler bits
- myconf="${myconf} --enable-symbol-visibility"
- myconf="${myconf} --enable-pic"
-
- # CPU settings
- for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
- [ "${i}" = "native" ] && i="host"
- myconf="${myconf} --cpu=${i}"
- break
- done
-
- if tc-is-cross-compiler ; then
- myconf="${myconf} --enable-cross-compile --arch=$(tc-arch-kernel)"
- myconf="${myconf} --cross-prefix=${CHOST}-"
- fi
-
- # Build boosters
- has distcc ${FEATURES} || myconf="${myconf} --disable-distcc"
- has ccache ${FEATURES} || myconf="${myconf} --disable-ccache"
-
- myconf="${myconf} $(use_enable systemd systemd_notify)"
- myconf="${myconf} $(use_enable systemd systemd_journal)"
- use systemd || myconf="${myconf} $(use_enable mythlogserver)"
-
- chmod +x ./external/FFmpeg/version.sh
-
- einfo "Running ./configure ${myconf}"
- ./configure \
- --cc="$(tc-getCC)" \
- --cxx="$(tc-getCXX)" \
- --ar="$(tc-getAR)" \
- --extra-cflags="${CFLAGS}" \
- --extra-cxxflags="${CXXFLAGS}" \
- --extra-ldflags="${LDFLAGS}" \
- --qmake=$(qt5_get_bindir)/qmake \
- ${myconf} || die "configure died"
-}
-
-src_install() {
- emake STRIP="true" INSTALL_ROOT="${D}" install
- dodoc AUTHORS UPGRADING README
- use python && python_optimize # does all packages by default
- readme.gentoo_create_doc
-
- insinto /usr/share/mythtv/database
- doins database/*
-
- newinitd "${FILESDIR}"/mythbackend.init-r2 mythbackend
- newconfd "${FILESDIR}"/mythbackend.conf-r1 mythbackend
- systemd_newunit "${FILESDIR}"/mythbackend.service-28 mythbackend.service
-
- dodoc keys.txt
-
- keepdir /etc/mythtv
- chown -R mythtv "${ED}"/etc/mythtv
- keepdir /var/log/mythtv
- chown -R mythtv "${ED}"/var/log/mythtv
- dodir /var/log/mythtv/old
-
- insinto /etc/logrotate.d
- newins "${FILESDIR}"/mythtv.logrotate.d-r4 mythtv
-
- insinto /usr/share/mythtv/contrib
- # Ensure we don't install scripts needing the perl bindings (bug #516968)
- use perl || find contrib/ -name '*.pl' -exec rm -f {} \;
- # Ensure we don't install scripts needing the python bindings (bug #516968)
- use python || find contrib/ -name '*.py' -exec rm -f {} \;
- doins -r contrib/*
-
- # Install our mythfrontend wrapper which is similar to Mythbuntu's
- if use wrapper; then
- mv "${ED}/usr/bin/mythfrontend" "${ED}/usr/bin/mythfrontend.real"
- newbin "${FILESDIR}"/mythfrontend.wrapper mythfrontend
- newconfd "${FILESDIR}"/mythfrontend.conf mythfrontend
- fi
-
- if use autostart; then
- dodir /etc/env.d/
- echo 'CONFIG_PROTECT="/home/mythtv/"' > "${ED}"/etc/env.d/95mythtv
-
- insinto /home/mythtv
- newins "${FILESDIR}"/bash_profile .bash_profile
- newins "${FILESDIR}"/xinitrc-r1 .xinitrc
- fi
-
- # Make Python files executable
- find "${ED}/usr/share/mythtv" -type f -name '*.py' | while read file; do
- if [[ ! "${file##*/}" = "__init__.py" ]]; then
- chmod a+x "${file}"
- fi
- done
-
- # Ensure that Python scripts are executed by Python 2
- use python && python_fix_shebang "${ED}/usr/share/mythtv"
-
- # Make shell & perl scripts executable
- find "${ED}" -type f -name '*.sh' -o -type f -name '*.pl' | \
- while read file; do
- chmod a+x "${file}"
- done
-
- # Remove empty dir
- rmdir "${ED}"/var/log/mythtv/old
-}
-
-pkg_preinst() {
- export CONFIG_PROTECT="${CONFIG_PROTECT} ${EROOT}/home/mythtv/"
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
-}
-
-pkg_info() {
- if [[ -f "${EROOT}"/usr/bin/mythfrontend ]]; then
- "${EROOT}"/usr/bin/mythfrontend --version
- fi
-}
-
-pkg_config() {
- if [[ -e "${EROOT}"/usr/bin/mysql ]]; then
- "${EROOT}"/usr/bin/mysql -u root -p < "${EROOT}"/usr/share/mythtv/database/mc.sql
- fi
-}
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/, media-tv/mythtv/files/
@ 2020-12-12 0:01 Andreas Sturmlechner
0 siblings, 0 replies; 16+ messages in thread
From: Andreas Sturmlechner @ 2020-12-12 0:01 UTC (permalink / raw
To: gentoo-commits
commit: b63da8a7200e661b89994f3728c738ea43c23dd8
Author: Wilson Michaels <thebitpit <AT> earthlink <DOT> net>
AuthorDate: Sat Nov 28 22:47:53 2020 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Dec 12 00:01:22 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b63da8a7
media-tv/mythtv: cleanup Python 2.7, drop dev-qt/qtwebkit:5
Closes: https://bugs.gentoo.org/735986
Closes: https://bugs.gentoo.org/750887
Package-Manager: Portage-3.0.9, Repoman-3.0.2
Signed-off-by: Wilson Michaels <thebitpit <AT> austincustomerrands.com>
Closes: https://github.com/gentoo/gentoo/pull/18443
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
media-tv/mythtv/Manifest | 2 -
.../mythtv-29.1-Fix_create_webbrowser_window.patch | 61 ---
...808-Fix_Dereferencing_type-punned_pointer.patch | 34 --
...-30.0_p20190808-Fix_unitialized_variables.patch | 22 --
media-tv/mythtv/metadata.xml | 1 -
media-tv/mythtv/mythtv-30.0_p20190808-r3.ebuild | 432 ---------------------
...mythtv-31.0-r3.ebuild => mythtv-31.0-r4.ebuild} | 6 +-
7 files changed, 2 insertions(+), 556 deletions(-)
diff --git a/media-tv/mythtv/Manifest b/media-tv/mythtv/Manifest
index 261a47d69a2..e2859fa3242 100644
--- a/media-tv/mythtv/Manifest
+++ b/media-tv/mythtv/Manifest
@@ -1,3 +1 @@
-DIST mythtv-30.0_p20190808-cast_constants_to_short.patch 24201 BLAKE2B d76e519666914f6c9a510fb0aec493e361e857f51e56bd7d120657f350b0bf5da329a89eb58c9789f8f030c6d08bfe0171750690b76d8c2add807942aa686d59 SHA512 c2724ad248222ac4190412cf68e54ee0b265fdde128996e68a2e178e6debe0180c23f9c7d1878466f9a5689fab8172370c6b31c90aa9a096fb5919ec6e8960fe
-DIST mythtv-30.0_p20190808.tar.gz 101208060 BLAKE2B af8966dd6353fc514c9a95083f28e8b7b19f16e1bd5a4f7590a946c306bf16a09f0028c76da975e423136834f8f06d7f2a570b43957ef4ae5e42ee241b579f0a SHA512 c02371c0b2162556e40a560a0fd9cb121f46f2ccedbc2ca74cd03aa9caf2b7ea4bbaa09ae6320eb782f932190f449e7fdd274a6d6ba9676e5fd9b7f5432632a2
DIST mythtv-31.0.tar.gz 102552136 BLAKE2B b09b41230eb2cae19d770c3cc59151863e0a56e95a86627473d52613e62f0acf3bd0c4bb37afb340ab874c222899f9d3c219ded470785d27960db9b39d784ceb SHA512 d53817231409934ef37d12739c38cf6936f04f816b0ba1c9738ce99b5b4ff387c70b683ccd84f649ff2f74992b2158829f5f1d1ffe06c8768da1922b90439f6e
diff --git a/media-tv/mythtv/files/mythtv-29.1-Fix_create_webbrowser_window.patch b/media-tv/mythtv/files/mythtv-29.1-Fix_create_webbrowser_window.patch
deleted file mode 100644
index 168c2337942..00000000000
--- a/media-tv/mythtv/files/mythtv-29.1-Fix_create_webbrowser_window.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-Index: mythtv/libs/libmythui/mythuiwebbrowser.cpp
-Mythtv bug #13544
-===================================================================
---- a/libs/libmythui/mythuiwebbrowser.cpp
-+++ b/libs/libmythui/mythuiwebbrowser.cpp
-@@ -873,4 +873,8 @@
- void MythUIWebBrowser::Init(void)
- {
-+ // only do the initialisation for widgets not being stored in the global object store
-+ if (parent() == GetGlobalObjectStore())
-+ return;
-+
- if (m_initialized)
- return;
-@@ -1128,4 +1132,7 @@
- void MythUIWebBrowser::SetActive(bool active)
- {
-+ if (!m_browser)
-+ return;
-+
- if (m_active == active)
- return;
-@@ -1326,4 +1333,7 @@
- void MythUIWebBrowser::Scroll(int dx, int dy)
- {
-+ if (!m_browser)
-+ return;
-+
- QPoint startPos = m_browser->page()->currentFrame()->scrollPosition();
- QPoint endPos = startPos + QPoint(dx, dy);
-@@ -1435,4 +1445,7 @@
- void MythUIWebBrowser::UpdateScrollBars(void)
- {
-+ if (!m_browser)
-+ return;
-+
- QPoint position = m_browser->page()->currentFrame()->scrollPosition();
- if (m_verticalScrollbar)
-@@ -1461,5 +1474,5 @@
- UpdateScrollBars();
-
-- if (!m_image)
-+ if (!m_image || !m_browser)
- return;
-
-@@ -1480,4 +1493,7 @@
- void MythUIWebBrowser::Pulse(void)
- {
-+ if (!m_browser)
-+ return;
-+
- if (m_scrollAnimation.IsActive() &&
- m_destinationScrollPos !=
-@@ -1522,4 +1538,7 @@
- bool MythUIWebBrowser::keyPressEvent(QKeyEvent *event)
- {
-+ if (!m_browser)
-+ return false;
-+
- QStringList actions;
- bool handled = false;
diff --git a/media-tv/mythtv/files/mythtv-30.0_p20190808-Fix_Dereferencing_type-punned_pointer.patch b/media-tv/mythtv/files/mythtv-30.0_p20190808-Fix_Dereferencing_type-punned_pointer.patch
deleted file mode 100644
index bc0751c887c..00000000000
--- a/media-tv/mythtv/files/mythtv-30.0_p20190808-Fix_Dereferencing_type-punned_pointer.patch
+++ /dev/null
@@ -1,34 +0,0 @@
---- a/libs/libmythfreemheg/Programs.cpp
-+++ b/libs/libmythfreemheg/Programs.cpp
-@@ -232,7 +232,10 @@ void MHResidentProgram::CallProgram(bool fIsFork, const MHObjectRef &success, co
- for (int i = 0; i < format.Size(); i++)
- {
- unsigned char ch = format.GetAt(i);
-- char buffer[5]; // Largest text is 4 chars for a year + null terminator
-+ // Largest text is 4 chars for a year + null terminator
-+ // But... adding a constant to the value might be 5 chars + null terminator
-+ // Using 6 gets rid of compiler warning
-+ char buffer[6];
-
- if (ch == '%')
- {
-@@ -249,16 +252,16 @@ void MHResidentProgram::CallProgram(bool fIsFork, const MHObjectRef &success, co
- switch (ch)
- {
- case 'Y':
-- sprintf(buffer, "%04d", timeStr->tm_year + 1900);
-+ sprintf(buffer, "%04d", (unsigned short)(timeStr->tm_year + 1900));
- break;
- case 'y':
- sprintf(buffer, "%02d", timeStr->tm_year % 100);
- break;
- case 'X':
-- sprintf(buffer, "%02d", timeStr->tm_mon + 1);
-+ sprintf(buffer, "%02d", (unsigned short)(timeStr->tm_mon + 1));
- break;
- case 'x':
-- sprintf(buffer, "%1d", timeStr->tm_mon + 1);
-+ sprintf(buffer, "%1d", (unsigned short)(timeStr->tm_mon + 1));
- break;
- case 'D':
- sprintf(buffer, "%02d", timeStr->tm_mday);
diff --git a/media-tv/mythtv/files/mythtv-30.0_p20190808-Fix_unitialized_variables.patch b/media-tv/mythtv/files/mythtv-30.0_p20190808-Fix_unitialized_variables.patch
deleted file mode 100644
index db296242515..00000000000
--- a/media-tv/mythtv/files/mythtv-30.0_p20190808-Fix_unitialized_variables.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/libs/libmythtv/eitfixup.cpp
-+++ b/libs/libmythtv/eitfixup.cpp
-@@ -842,7 +842,7 @@ void EITFixUp::SetUKSubtitle(DBEventEIT &event) const
- void EITFixUp::FixUK(DBEventEIT &event) const
- {
- int position1;
-- int position2;
-+ int position2 = 0;
- QString strFull;
-
- bool isMovie = event.m_category.startsWith("Movie",Qt::CaseInsensitive) ||
---- a/libs/libmythui/mythuitext.cpp
-+++ b/libs/libmythui/mythuitext.cpp
-@@ -1058,7 +1058,7 @@ int MythUIText::MoveCursor(int lines)
- int lineCount = 0;
- int currPos = 0;
- int layoutStartPos = 0;
-- int xPos;
-+ int xPos = 0;
-
- for (int x = 0; x < m_Layouts.count(); x++)
- {
diff --git a/media-tv/mythtv/metadata.xml b/media-tv/mythtv/metadata.xml
index 24e993307ee..0de2e5e50fa 100644
--- a/media-tv/mythtv/metadata.xml
+++ b/media-tv/mythtv/metadata.xml
@@ -34,7 +34,6 @@
<flag name="wrapper">Use Ubuntu mythtfrontend wrapper</flag>
<flag name="x265">Enable h265 encoding using x265</flag>
<flag name="xmltv">Support <pkg>media-tv/xmltv</pkg> TV listing - not used by Schedules Direct]</flag>
- <flag name="xnvctrl">External XNVCtrl support using Nvidia proprietary driver</flag>
</use>
<upstream>
<remote-id type="github">MythTV/mythtv</remote-id>
diff --git a/media-tv/mythtv/mythtv-30.0_p20190808-r3.ebuild b/media-tv/mythtv/mythtv-30.0_p20190808-r3.ebuild
deleted file mode 100644
index 4809398bba7..00000000000
--- a/media-tv/mythtv/mythtv-30.0_p20190808-r3.ebuild
+++ /dev/null
@@ -1,432 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python2_7 )
-
-BACKPORTS="5cde0578d84926171b20c8f7e95a101e9b0b9457" # August 8, 2019
-
-MY_P=${P%_p*}
-MY_PV=${PV%_p*}
-
-inherit eutils flag-o-matic python-single-r1 qmake-utils readme.gentoo-r1 systemd user-info vcs-snapshot
-
-MYTHTV_BRANCH="fixes/${P%.*}"
-
-DESCRIPTION="Open Source DVR and media center hub"
-HOMEPAGE="https://www.mythtv.org"
-SRC_URI="https://github.com/MythTV/mythtv/archive/${BACKPORTS}.tar.gz -> ${P}.tar.gz
- https://dev.gentoo.org/~juippis/distfiles/tmp/mythtv-30.0_p20190808-cast_constants_to_short.patch"
-
-LICENSE="GPL-2+"
-KEYWORDS="~amd64 ~x86"
-SLOT="0/${PV}"
-
-IUSE_INPUT_DEVICES="input_devices_joystick"
-IUSE_VIDEO_CAPTURE_DEVICES="v4l ivtv ieee1394 hdpvr hdhomerun vbox ceton"
-IUSE="alsa altivec asi autostart bluray cdda cdr cec debug dvd dvb egl exif fftw jack java
- +lame lcd libass lirc +opengl oss perl pulseaudio python raw systemd vaapi vdpau vpx
- +wrapper x264 x265 +xml xmltv xnvctrl +xvid +X zeroconf
- ${IUSE_INPUT_DEVICES} ${IUSE_VIDEO_CAPTURE_DEVICES}"
-REQUIRED_USE="
- python? ( ${PYTHON_REQUIRED_USE} )
- bluray? ( xml )
- cdr? ( cdda )
-"
-COMMON_DEPEND="
- acct-user/mythtv
- dev-libs/glib:2
- dev-libs/lzo
- dev-qt/qtcore:5
- dev-qt/qtdbus:5
- dev-qt/qtgui:5
- dev-qt/qtnetwork:5
- opengl? ( dev-qt/qtopengl:5 )
- dev-qt/qtscript:5
- dev-qt/qtsql:5[mysql]
- dev-qt/qtwebkit:5
- dev-qt/qtwidgets:5
- dev-qt/qtxml:5
- media-gfx/exiv2:=
- media-libs/freetype:2
- media-libs/libsamplerate
- media-libs/taglib
- lame? ( >=media-sound/lame-3.93.1 )
- sys-libs/zlib
- opengl? ( virtual/opengl )
- X? (
- x11-libs/libX11:=
- x11-libs/libXext:=
- x11-libs/libXinerama:=
- x11-libs/libXrandr:=
- x11-libs/libXv:=
- x11-libs/libXxf86vm:=
- x11-misc/wmctrl:=
- )
- alsa? ( >=media-libs/alsa-lib-1.0.24 )
- bluray? (
- media-libs/libbluray:=[java?]
- dev-libs/libcdio:=
- sys-fs/udisks:2
- )
- cec? ( dev-libs/libcec )
- dvd? (
- dev-libs/libcdio:=
- sys-fs/udisks:2
- )
- egl? ( media-libs/mesa[egl] )
- fftw? ( sci-libs/fftw:3.0=[threads] )
- hdhomerun? ( media-libs/libhdhomerun )
- ieee1394? (
- >=media-libs/libiec61883-1.0.0
- >=sys-libs/libavc1394-0.5.3
- >=sys-libs/libraw1394-1.2.0
- )
- jack? ( media-sound/jack-audio-connection-kit )
- java? ( dev-java/ant-core )
- lcd? ( app-misc/lcdproc )
- libass? ( >=media-libs/libass-0.9.11:= )
- lirc? ( app-misc/lirc )
- perl? (
- >=dev-perl/libwww-perl-5
- dev-perl/DBD-mysql
- dev-perl/HTTP-Message
- dev-perl/IO-Socket-INET6
- dev-perl/LWP-Protocol-https
- dev-perl/Net-UPnP
- )
- pulseaudio? ( media-sound/pulseaudio )
- systemd? ( sys-apps/systemd:= )
- vaapi? ( x11-libs/libva:=[opengl] )
- vdpau? ( x11-libs/libvdpau )
- vpx? ( <media-libs/libvpx-1.8.0:= )
- xnvctrl? ( x11-drivers/nvidia-drivers:=[tools,static-libs] )
- x264? ( >=media-libs/x264-0.0.20111220:= )
- x265? ( media-libs/x265 )
- xml? ( >=dev-libs/libxml2-2.6.0 )
- xvid? ( >=media-libs/xvid-1.1.0 )
- zeroconf? (
- dev-libs/openssl:0=
- net-dns/avahi[mdnsresponder-compat]
- )
-"
-RDEPEND="${COMMON_DEPEND}
- python? (
- ${PYTHON_DEPS}
- $(python_gen_cond_dep '
- dev-python/lxml[${PYTHON_MULTI_USEDEP}]
- dev-python/mysqlclient[${PYTHON_MULTI_USEDEP}]
- dev-python/urlgrabber[${PYTHON_MULTI_USEDEP}]
- dev-python/future[${PYTHON_MULTI_USEDEP}]
- dev-python/requests-cache[${PYTHON_MULTI_USEDEP}]
- ')
- )
- media-fonts/corefonts
- media-fonts/dejavu
- media-fonts/liberation-fonts
- x11-apps/xinit
- autostart? (
- net-dialup/mingetty
- x11-apps/xset
- x11-wm/evilwm
- )
- dvd? ( media-libs/libdvdcss )
- xmltv? ( >=media-tv/xmltv-0.5.43 )
-"
-DEPEND="
- ${COMMON_DEPEND}
- dev-lang/yasm
- x11-base/xorg-proto
-"
-
-BDEPEND="virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}/${P}-respect_LDFLAGS.patch"
- "${DISTDIR}/${P}-cast_constants_to_short.patch"
- "${FILESDIR}/${P}-Fix_Dereferencing_type-punned_pointer.patch"
- "${FILESDIR}/${P}-Fix_unitialized_variables.patch"
- "${FILESDIR}/${PN}-29.1-Fix_create_webbrowser_window.patch"
- "${FILESDIR}/${PN}-31.0-Include_QPainterPath.patch"
-)
-
-# mythtv and mythplugins are separate builds in the github mythtv project
-S="${WORKDIR}/${P}/mythtv"
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-If a MYSQL server is installed, a mythtv MySQL user and mythconverg database
-is created if it does not already exist.
-You will be prompted for your MySQL root password.
-
-A mythtv user is maintained by acct-user/mythtv. An existing mythtv user
-may be modified to the configuration defined by acct-user/mythtv.
-An existing mythtv user may be changed which may alter some functionality.
-If it breaks mythtv you may need to (choose one):
- * Restore the original mythtv user
- * Create custom acct-user/mythtv overlay for your system
- * Fix you system to use mythtv as daemon only
-Failure to emerge acct-user/mythtv indicates that the existing mythtv user
-is customized and not changed. Corrective action (choose one):
- * Ignore emerge failure
- * Create custom acct-user/mythtv overlay for your system
- * Fix you system to use mythtv as daemon only
- * Delete existing user and try again (dangerous)
-
-Mythtv is updated to use correct FHS/Gentoo policy paths.
-Updating mythtv installations may report:
- * mythtv is in use, cannot update home
- * There was an error when attempting to update the home directory for mythtv
- * Please update it manually on your system (as root):
- * usermod -d "/var/lib/mythtv" "mythtv"
-This can be ignored. The previous default was "/home/mythtv".
-Use caution if you change the home directory.
-
-To have this machine operate as recording host for MythTV,
-mythbackend must be running. Run the following:
-rc-update add mythbackend default
-
-Your recordings folder must be owned 'mythtv'. e.g.
-chown -R mythtv /var/lib/mythtv
-
-Want mythfrontend to start automatically?
-Set USE=autostart. Details can be found at:
-https://dev.gentoo.org/~cardoe/mythtv/autostart.html
-
-Note that the systemd unit now restarts by default and logs
-to journald via the console at the notice verbosity.
-"
-
-pkg_setup() {
- use python && python-single-r1_pkg_setup
- # The acct-user/mythtv package creates/manages the user 'mythtv'
-}
-
-src_prepare() {
- default
-
- # Perl bits need to go into vender_perl and not site_perl
- sed -e "s:pure_install:pure_install INSTALLDIRS=vendor:" \
- -i "${S}"/bindings/perl/Makefile || die "Cannot convert site_perl to vendor_perl!"
-
- # Fix up the version info since we are using the fixes/${PV} branch
- echo "SOURCE_VERSION=\"v${MY_PV}\"" > "${S}"/VERSION
- echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/VERSION
- echo "SOURCE_VERSION=\"${BACKPORTS}\"" > "${S}"/EXPORTED_VERSION
- echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/EXPORTED_VERSION
-
- echo "setting.extra -= -ldconfig" >> "${S}"/programs/mythfrontend/mythfrontend.pro
-}
-
-src_configure() {
- local -a myconf
-
- # Setup paths
- myconf+=(--prefix="${EPREFIX}"/usr)
- myconf+=(--libdir="${EPREFIX}"/usr/$(get_libdir))
- myconf+=(--libdir-name=$(get_libdir))
- myconf+=(--mandir="${EPREFIX}"/usr/share/man)
-
- if use debug; then
- myconf+=(--compile-type=debug)
- myconf+=(--disable-stripping) # FIXME: does not disable for all files, only for some
- myconf+=(--enable-valgrind) # disables timeouts for valgrind memory debugging
- else
- myconf+=(--compile-type=release)
- fi
-
- # Build boosters
- has ccache "${FEATURES}" || myconf+=(--disable-ccache)
- has distcc "${FEATURES}" || myconf+=(--disable-distcc)
-
- # CPU settings
- # Mythtv's configure is borrowed from ffmpeg,
- # Bug #172723
- # Try to get cpu type based on CFLAGS.
- # We need to do this so that features of that CPU will be better used
- # If they contain an unknown CPU it will not hurt since ffmpeg's configure
- # will just ignore it.
- for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
- [ "${i}" = "native" ] && i="host" # bug #273421
- myconf+=(--cpu="${i}")
- break
- done
- myconf+=($(use_enable altivec))
-
- # Sound Output Support
- myconf+=(
- $(use_enable oss audio-oss)
- $(use_enable alsa audio-alsa)
- $(use_enable jack audio-jack)
- $(use_enable pulseaudio audio-pulseoutput)
- )
-
- # Input Support
- myconf+=(
- $(use_enable lirc)
- $(use_enable input_devices_joystick joystick-menu)
- $(use_enable cec libcec)
- $(use_enable ieee1394 firewire)
- $(use_enable hdhomerun)
- $(use_enable vbox)
- $(use_enable ceton)
- $(use_enable v4l v4l2)
- $(use_enable ivtv)
- $(use_enable hdpvr)
- $(use_enable dvb)
- $(use_enable asi)
- )
-
- # Video Output Support
- myconf+=(
- $(use_enable X x11)
- $(use_enable xnvctrl)
- $(use_enable X xrandr)
- $(use_enable X xv)
- )
-
- # Hardware accellerators
- myconf+=(
- $(use_enable vdpau)
- $(use_enable vaapi)
- $(use_enable vaapi vaapi2)
- $(use_enable opengl opengl-video)
- $(use_enable opengl opengl-themepainter)
- $(use_enable libass)
- )
-
- # System tools
- myconf+=(
- $(use_enable systemd systemd_notify)
- $(use_enable systemd systemd_journal)
- $(use_enable xml libxml2)
- $(use_enable zeroconf libdns-sd)
- )
-
- # Bindings
- if use perl && use python; then
- myconf+=(--with-bindings=perl,python)
- elif use perl; then
- myconf+=(--without-bindings=python)
- myconf+=(--with-bindings=perl)
- elif use python; then
- myconf+=(--without-bindings=perl)
- myconf+=(--with-bindings=python)
- else
- myconf+=(--without-bindings=perl,python)
- fi
- use python && myconf+=(--python="${EPYTHON}")
- myconf+=($(use_enable java bdjava))
-
- # External codec library options (used for mythffmpeg and streaming transcode)
- # lame is required for some broadcasts for silence detection of commercials
- # default enable in IUSE with +lame
- myconf+=(
- $(use_enable lame libmp3lame)
- $(use_enable xvid libxvid)
- $(use_enable x264 libx264)
- $(use_enable x265 libx265)
- $(use_enable vpx libvpx)
- )
-
- # Clean up DSO load times and other compiler bits
- myconf+=(--enable-symbol-visibility)
- myconf+=(--enable-pic)
-
- if tc-is-cross-compiler ; then
- myconf+=(--enable-cross-compile --arch=$(tc-arch-kernel))
- myconf+=(--cross-prefix="${CHOST}"-)
- fi
-
- myconf+=($(use_enable bluray libbluray_external))
-
- # econf sets these options that are not handled by configure:
- # --build --host --infodir --localstatedir --sysconfdir
-
- einfo "Running ./configure ${myconf[@]} - THIS MAY TAKE A WHILE."
- ./configure \
- --prefix="${EPREFIX}/usr" \
- --cc="$(tc-getCC)" \
- --cxx="$(tc-getCXX)" \
- --ar="$(tc-getAR)" \
- --optflags="${CFLAGS}" \
- --extra-cflags="${CFLAGS}" \
- --extra-cxxflags="${CXXFLAGS}" \
- --extra-ldflags="${LDFLAGS}" \
- --qmake=$(qt5_get_bindir)/qmake \
- "${myconf[@]}"
-}
-
-src_install() {
- emake STRIP="true" INSTALL_ROOT="${D}" install
- use python && python_optimize # does all packages by default
- dodoc AUTHORS UPGRADING README
- readme.gentoo_create_doc
-
- insinto /usr/share/mythtv/database
- doins database/*
-
- newinitd "${FILESDIR}"/mythbackend.init-r2 mythbackend
- newconfd "${FILESDIR}"/mythbackend.conf-r1 mythbackend
- if use systemd; then
- systemd_newunit "${FILESDIR}"/mythbackend.service-28 mythbackend.service
- fi
-
- dodoc keys.txt
-
- keepdir /etc/mythtv
- fowners -R mythtv /etc/mythtv
- keepdir /var/log/mythtv
- fowners -R mythtv /var/log/mythtv
-
- insinto /etc/logrotate.d
- newins "${FILESDIR}"/mythtv.logrotate.d-r4 mythtv
-
- insinto /usr/share/mythtv/contrib
- # Ensure we don't install scripts needing the perl bindings (bug #516968)
- use perl || find contrib/ -name '*.pl' -exec rm -f {} \;
- # Ensure we don't install scripts needing the python bindings (bug #516968)
- use python || find contrib/ -name '*.py' -exec rm -f {} \;
- doins -r contrib/*
-
- # Install our mythfrontend wrapper which is similar to Mythbuntu's
- if use wrapper; then
- mv "${ED}/usr/bin/mythfrontend" "${ED}/usr/bin/mythfrontend.real" || die "Failed to install mythfrontend.real"
- newbin "${FILESDIR}"/mythfrontend.wrapper mythfrontend
- newconfd "${FILESDIR}"/mythfrontend.conf mythfrontend
- fi
-
- if use autostart; then
- echo CONFIG_PROTECT=\"$(egethome mythtv)\" > "${T}"/95mythtv
- doenvd "${T}"/95mythtv
-
- insinto $(egethome mythtv)
- newins "${FILESDIR}"/bash_profile .bash_profile
- newins "${FILESDIR}"/xinitrc-r1 .xinitrc
- fi
-
- # Make Python files executable but not files named "__init__.py"
- find "${ED}/usr/share/mythtv" -type f -name '*.py' -exec expr \( {} : '.*__init__.py' \) = 0 \; \
- -exec chmod a+x {} \; || die "Failed to make python file $(basename ${file}) executable"
-
- # Ensure that Python scripts are executed by Python 2
- use python && python_fix_shebang "${ED}/usr/share/mythtv"
-
- # Make shell & perl scripts executable
- find "${ED}" -type f \( -name '*.sh' -o -name '*.pl' \) -exec chmod a+x {} \; || die "Failed to make script executable"
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
-}
-
-pkg_info() {
- return
-}
-
-pkg_config() {
- if [[ -e "${EROOT}"/usr/bin/mysql ]]; then
- "${EROOT}"/usr/bin/mysql -u root -p < "${EROOT}"/usr/share/mythtv/database/mc.sql
- fi
-}
diff --git a/media-tv/mythtv/mythtv-31.0-r3.ebuild b/media-tv/mythtv/mythtv-31.0-r4.ebuild
similarity index 98%
rename from media-tv/mythtv/mythtv-31.0-r3.ebuild
rename to media-tv/mythtv/mythtv-31.0-r4.ebuild
index b45f36f1ae7..1a3a406636b 100644
--- a/media-tv/mythtv/mythtv-31.0-r3.ebuild
+++ b/media-tv/mythtv/mythtv-31.0-r4.ebuild
@@ -105,7 +105,6 @@ RDEPEND="
xml? ( dev-libs/libxml2:2 )
xmltv? (
dev-perl/XML-LibXML
- dev-qt/qtwebkit:5
media-tv/xmltv
)
xvid? ( media-libs/xvid )
@@ -162,6 +161,8 @@ S="${WORKDIR}/${P}/mythtv"
DISABLE_AUTOFORMATTING="yes"
DOC_CONTENTS="
+Suppport for Python 2.7 has been removed.
+
If a MYSQL server is installed, a mythtv MySQL user and mythconverg database
is created if it does not already exist.
You will be prompted for your MySQL root password.
@@ -200,9 +201,6 @@ chown -R mythtv /var/lib/mythtv
Want mythfrontend to start automatically?
Set USE=autostart. Details can be found at:
https://dev.gentoo.org/~cardoe/mythtv/autostart.html
-
-Note that the systemd unit now restarts by default and logs
-to journald via the console at the notice verbosity.
"
pkg_setup() {
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/, media-tv/mythtv/files/
@ 2022-11-15 18:17 Michał Górny
0 siblings, 0 replies; 16+ messages in thread
From: Michał Górny @ 2022-11-15 18:17 UTC (permalink / raw
To: gentoo-commits
commit: 6f2e180a97ba9b89e5a10a1c9bff69b1a3999c9d
Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Nov 15 18:09:00 2022 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Nov 15 18:16:56 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6f2e180a
media-tv/mythtv: Remove py3.8-only versions
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
media-tv/mythtv/Manifest | 1 -
.../files/mythtv-31.0-Include_QPainterPath.patch | 15 -
.../mythtv/files/mythtv-31.0-Remove_ldconfig.patch | 13 -
media-tv/mythtv/mythtv-31.0-r7.ebuild | 437 ---------------------
4 files changed, 466 deletions(-)
diff --git a/media-tv/mythtv/Manifest b/media-tv/mythtv/Manifest
index 8f45d129c78d..4ecb2ca1f93c 100644
--- a/media-tv/mythtv/Manifest
+++ b/media-tv/mythtv/Manifest
@@ -1,3 +1,2 @@
-DIST mythtv-31.0.tar.gz 102552136 BLAKE2B b09b41230eb2cae19d770c3cc59151863e0a56e95a86627473d52613e62f0acf3bd0c4bb37afb340ab874c222899f9d3c219ded470785d27960db9b39d784ceb SHA512 d53817231409934ef37d12739c38cf6936f04f816b0ba1c9738ce99b5b4ff387c70b683ccd84f649ff2f74992b2158829f5f1d1ffe06c8768da1922b90439f6e
DIST mythtv-31.0_p20210731.tar.gz 102637029 BLAKE2B 0ca6124d20d428c8b9999813c819c01a97c4806fbd2f70f5b50d698c5f9c3cafd3141ee1379b2b63510705e2083109d91362c3fcc6277f58d461f2138d1604fd SHA512 e262ce91fd8a523daa772d13675ff6639f95202f66be67b2a405e9ea9204d6663128621c5142752f2a889e25cbc8be6d92b3759508767e94207326343a91f092
DIST mythtv-32.0.tar.gz 115960698 BLAKE2B 3be4106fa2c4fcb95fd5414b347fd6256658566bbb9775ed32cb9686e4a61ecf89e7c684db8d3408292c3737ae6090771862aa65ac0d5d467e90c3a110484898 SHA512 6a1472c954b929319a570d76769ababad43d086d53b6679c9d6da91446677f04b71918b326bb4ff0fc16fbaf7d9a447a86f623a6f1399f9ed29ca86a9782396c
diff --git a/media-tv/mythtv/files/mythtv-31.0-Include_QPainterPath.patch b/media-tv/mythtv/files/mythtv-31.0-Include_QPainterPath.patch
deleted file mode 100644
index f0f09a5c4517..000000000000
--- a/media-tv/mythtv/files/mythtv-31.0-Include_QPainterPath.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-# Change in upstream master after release mythtv-31.0
-
-diff --git a/mythtv/libs/libmythui/mythpainter.cpp b/mythtv/libs/libmythui/mythpainter.cpp
-index 639ea41b30..221a7fe2b7 100644
---- a/libs/libmythui/mythpainter.cpp
-+++ b/libs/libmythui/mythpainter.cpp
-@@ -5,6 +5,7 @@
- // QT headers
- #include <QRect>
- #include <QPainter>
-+#include <QPainterPath>
-
- // libmythbase headers
- #include "mythlogging.h"
-
diff --git a/media-tv/mythtv/files/mythtv-31.0-Remove_ldconfig.patch b/media-tv/mythtv/files/mythtv-31.0-Remove_ldconfig.patch
deleted file mode 100644
index 7182f4e69f86..000000000000
--- a/media-tv/mythtv/files/mythtv-31.0-Remove_ldconfig.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/mythtv/programs/mythfrontend/mythfrontend.pro b/mythtv/programs/mythfrontend/mythfrontend.pro
-index 82c9ea1bb6..cd6894dcbc 100644
---- a/programs/mythfrontend/mythfrontend.pro
-+++ b/programs/mythfrontend/mythfrontend.pro
-@@ -21,7 +21,6 @@ INSTALLS = target
-
- setting.path = $${PREFIX}/share/mythtv/
- setting.files += MFEXML_scpd.xml
--setting.extra = -ldconfig
-
- INSTALLS += setting
-
-
diff --git a/media-tv/mythtv/mythtv-31.0-r7.ebuild b/media-tv/mythtv/mythtv-31.0-r7.ebuild
deleted file mode 100644
index ae6bd247778e..000000000000
--- a/media-tv/mythtv/mythtv-31.0-r7.ebuild
+++ /dev/null
@@ -1,437 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8} )
-
-MY_P=${P%_p*}
-MY_PV=${PV%_p*}
-
-inherit eutils flag-o-matic python-any-r1 qmake-utils readme.gentoo-r1 systemd user-info
-
-MYTHTV_BRANCH="fixes/${P%.*}"
-
-DESCRIPTION="Open Source DVR and media center hub"
-HOMEPAGE="https://www.mythtv.org https://github.com/MythTV/mythtv"
-SRC_URI="https://github.com/MythTV/mythtv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2+"
-KEYWORDS="~amd64 ~x86"
-SLOT="0"
-
-IUSE_INPUT_DEVICES="input_devices_joystick"
-IUSE_VIDEO_CAPTURE_DEVICES="v4l ivtv ieee1394 hdpvr hdhomerun vbox ceton"
-IUSE="alsa asi autostart bluray cdda cdr cec cpu_flags_ppc_altivec debug dvd dvb egl exif fftw jack java
- +lame lcd libass lirc nvdec +opengl oss perl pulseaudio python raw systemd vaapi vdpau vpx
- +wrapper x264 x265 +xml xmltv +xvid +X zeroconf
- ${IUSE_INPUT_DEVICES} ${IUSE_VIDEO_CAPTURE_DEVICES}"
-
-REQUIRED_USE="
- bluray? ( xml )
- cdr? ( cdda )
-"
-RDEPEND="
- acct-user/mythtv
- dev-libs/glib:2
- dev-libs/lzo
- dev-qt/qtcore:5
- dev-qt/qtdbus:5
- dev-qt/qtgui:5[jpeg]
- dev-qt/qtnetwork:5
- dev-qt/qtscript:5
- dev-qt/qtsql:5[mysql]
- dev-qt/qtwidgets:5
- dev-qt/qtxml:5
- media-fonts/corefonts
- media-fonts/dejavu
- media-fonts/liberation-fonts
- media-fonts/tex-gyre
- media-gfx/exiv2:=
- <media-libs/dav1d-1.0.0:=
- media-libs/freetype:2
- media-libs/libsamplerate
- media-libs/taglib
- sys-libs/zlib
- alsa? ( media-libs/alsa-lib )
- autostart? (
- net-dialup/mingetty
- x11-apps/xset
- x11-wm/evilwm
- )
- bluray? (
- dev-libs/libcdio:=
- media-libs/libbluray:=[java?]
- sys-fs/udisks:2
- )
- cec? ( dev-libs/libcec )
- dvd? (
- dev-libs/libcdio:=
- media-libs/libdvdcss
- sys-fs/udisks:2
- )
- egl? ( media-libs/mesa[egl(+)] )
- fftw? ( sci-libs/fftw:3.0=[threads] )
- hdhomerun? ( media-libs/libhdhomerun )
- ieee1394? (
- media-libs/libiec61883
- sys-libs/libavc1394
- sys-libs/libraw1394
- )
- jack? ( virtual/jack )
- java? ( dev-java/ant-core )
- lame? ( media-sound/lame )
- lcd? ( app-misc/lcdproc )
- libass? ( media-libs/libass:= )
- lirc? ( app-misc/lirc )
- nvdec? ( x11-drivers/nvidia-drivers )
- opengl? ( dev-qt/qtopengl:5 )
- pulseaudio? ( media-sound/pulseaudio )
- systemd? ( sys-apps/systemd:= )
- vaapi? ( media-libs/libva:=[opengl] )
- vdpau? ( x11-libs/libvdpau )
- vpx? ( media-libs/libvpx:= )
- x264? ( media-libs/x264:= )
- X? (
- x11-apps/xinit
- x11-libs/libX11:=
- x11-libs/libXext:=
- x11-libs/libXinerama:=
- x11-libs/libXrandr:=
- x11-libs/libXv:=
- x11-libs/libXxf86vm:=
- x11-misc/wmctrl:=
- )
- x265? ( media-libs/x265 )
- xml? ( dev-libs/libxml2:2 )
- xmltv? (
- dev-perl/XML-LibXML
- media-tv/xmltv
- )
- xvid? ( media-libs/xvid )
- zeroconf? (
- dev-libs/openssl:=
- net-dns/avahi[mdnsresponder-compat]
- )
-"
-BDEPEND="
- virtual/pkgconfig
- opengl? ( virtual/opengl )
- python? ( ${PYTHON_DEPS} )
-"
-DEPEND="
- ${RDEPEND}
- dev-lang/yasm
- x11-base/xorg-proto
- perl? (
- dev-perl/DBD-mysql
- dev-perl/DBI
- dev-perl/HTTP-Message
- dev-perl/IO-Socket-INET6
- dev-perl/LWP-Protocol-https
- dev-perl/Net-UPnP
- dev-perl/XML-Simple
- )
- python? (
- $(python_gen_any_dep '
- dev-python/future[${PYTHON_USEDEP}]
- dev-python/lxml[${PYTHON_USEDEP}]
- dev-python/mysqlclient[${PYTHON_USEDEP}]
- dev-python/requests-cache[${PYTHON_USEDEP}]
- dev-python/simplejson[${PYTHON_USEDEP}]
- ')
- )
-"
-python_check_deps() {
- use python || return 0
- has_version "dev-python/future[${PYTHON_USEDEP}]" &&
- has_version "dev-python/lxml[${PYTHON_USEDEP}]" &&
- has_version "dev-python/mysqlclient[${PYTHON_USEDEP}]" &&
- has_version "dev-python/requests-cache[${PYTHON_USEDEP}]" &&
- has_version "dev-python/simplejson[${PYTHON_USEDEP}]"
-}
-
-PATCHES=(
- "${FILESDIR}/${PN}-30.0_p20190808-respect_LDFLAGS.patch"
- "${FILESDIR}/${P}-Remove_ldconfig.patch"
- "${FILESDIR}/${P}-Include_QPainterPath.patch"
-)
-
-# mythtv and mythplugins are separate builds in the github mythtv project
-S="${WORKDIR}/${P}/mythtv"
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Suppport for Python 2.7 has been removed.
-
-If a MYSQL server is installed, a mythtv MySQL user and mythconverg database
-is created if it does not already exist.
-You will be prompted for your MySQL root password.
-
-A mythtv user is maintained by acct-user/mythtv. An existing mythtv user
-may be modified to the configuration defined by acct-user/mythtv.
-The mythtv user's primary group is now mythtv. (formerly video)
-An existing mythtv user may be changed which may alter some functionality.
-If it breaks mythtv you may need to (choose one):
- * Restore the original mythtv user
- * Create custom acct-user/mythtv overlay for your system
- * Fix you system to use mythtv as daemon only (recommended)
-Failure to emerge acct-user/mythtv indicates that the existing mythtv user
-is customized and not changed. Corrective action (choose one):
- * Ignore emerge failure
- * Create custom acct-user/mythtv overlay for your system
- * Fix you system to use mythtv as daemon only
- * Delete existing user and try again (dangerous)
-
-Mythtv is updated to use correct FHS/Gentoo policy paths.
-Updating mythtv installations may report:
- * mythtv is in use, cannot update home
- * There was an error when attempting to update the home directory for mythtv
- * Please update it manually on your system (as root):
- * usermod -d "/var/lib/mythtv" "mythtv"
-This can be ignored. The previous default was "/home/mythtv".
-Use caution if you change the home directory.
-
-To have this machine operate as recording host for MythTV,
-mythbackend must be running. Run the following:
-rc-update add mythbackend default
-
-Your recordings folder must be owned 'mythtv'. e.g.
-chown -R mythtv /var/lib/mythtv
-
-Want mythfrontend to start automatically?
-Set USE=autostart. Details can be found at:
-https://dev.gentoo.org/~cardoe/mythtv/autostart.html
-"
-
-pkg_setup() {
- use python && python-any-r1_pkg_setup
- # The acct-user/mythtv package creates/manages the user 'mythtv'
-}
-
-src_prepare() {
- default
-
- # Perl bits need to go into vender_perl and not site_perl
- sed -e "s:pure_install:pure_install INSTALLDIRS=vendor:" \
- -i "${S}"/bindings/perl/Makefile || die "Cannot convert site_perl to vendor_perl!"
-
- # Fix up the version info when using the fixes/${PV} branch
-# echo "SOURCE_VERSION=\"v${MY_PV}\"" > "${S}"/VERSION
-# echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/VERSION
-# echo "SOURCE_VERSION=\"${BACKPORTS}\"" > "${S}"/EXPORTED_VERSION
-# echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/EXPORTED_VERSION
-}
-
-src_configure() {
- local -a myconf
-
- # Setup paths
- myconf+=(--prefix="${EPREFIX}"/usr)
- myconf+=(--libdir="${EPREFIX}"/usr/$(get_libdir))
- myconf+=(--libdir-name=$(get_libdir))
- myconf+=(--mandir="${EPREFIX}"/usr/share/man)
-
- if use debug; then
- myconf+=(--compile-type=debug)
- myconf+=(--disable-stripping) # FIXME: does not disable for all files, only for some
- myconf+=(--enable-valgrind) # disables timeouts for valgrind memory debugging
- else
- myconf+=(--compile-type=release)
- fi
-
- # Build boosters
- has ccache "${FEATURES}" || myconf+=(--disable-ccache)
- has distcc "${FEATURES}" || myconf+=(--disable-distcc)
-
- # CPU settings
- # Mythtv's configure is borrowed from ffmpeg,
- # Bug #172723
- # Try to get cpu type based on CFLAGS.
- # We need to do this so that features of that CPU will be better used
- # If they contain an unknown CPU it will not hurt since ffmpeg's configure
- # will just ignore it.
- for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
- [ "${i}" = "native" ] && i="host" # bug #273421
- myconf+=(--cpu="${i}")
- break
- done
- myconf+=($(use_enable cpu_flags_ppc_altivec altivec))
-
- # Sound Output Support
- myconf+=(
- $(use_enable oss audio-oss)
- $(use_enable alsa audio-alsa)
- $(use_enable jack audio-jack)
- $(use_enable pulseaudio audio-pulseoutput)
- )
-
- # Input Support
- myconf+=(
- $(use_enable lirc)
- $(use_enable input_devices_joystick joystick-menu)
- $(use_enable cec libcec)
- $(use_enable ieee1394 firewire)
- $(use_enable hdhomerun)
- $(use_enable vbox)
- $(use_enable ceton)
- $(use_enable v4l v4l2)
- $(use_enable ivtv)
- $(use_enable hdpvr)
- $(use_enable dvb)
- $(use_enable asi)
- )
-
- # Video Output Support
- myconf+=(
- $(use_enable X x11)
- $(use_enable X xrandr)
- )
-
- # Hardware accellerators
- myconf+=(
- $(use_enable nvdec)
- $(use_enable vaapi)
- $(use_enable vdpau)
- $(use_enable opengl)
- $(use_enable libass)
- )
-
- # System tools
- myconf+=(
- $(use_enable systemd systemd_notify)
- $(use_enable systemd systemd_journal)
- $(use_enable xml libxml2)
- $(use_enable zeroconf libdns-sd)
- )
-
- # Bindings
- if use perl && use python; then
- myconf+=(--with-bindings=perl,python)
- elif use perl; then
- myconf+=(--without-bindings=python)
- myconf+=(--with-bindings=perl)
- elif use python; then
- myconf+=(--without-bindings=perl)
- myconf+=(--with-bindings=python)
- else
- myconf+=(--without-bindings=perl,python)
- fi
- use python && myconf+=(--python="${EPYTHON}")
- myconf+=($(use_enable java bdjava))
-
- # External codec library options (used for mythffmpeg and streaming transcode)
- # lame is required for some broadcasts for silence detection of commercials
- # default enable in IUSE with +lame
- myconf+=(
- $(use_enable lame libmp3lame)
- $(use_enable xvid libxvid)
- $(use_enable x264 libx264)
- $(use_enable x265 libx265)
- $(use_enable vpx libvpx)
- )
-
- # Clean up DSO load times and other compiler bits
- myconf+=(--enable-symbol-visibility)
- myconf+=(--enable-pic)
-
- if tc-is-cross-compiler ; then
- myconf+=(--enable-cross-compile --arch=$(tc-arch-kernel))
- myconf+=(--cross-prefix="${CHOST}"-)
- fi
-
- myconf+=($(use_enable bluray libbluray_external))
-
- # econf sets these options that are not handled by configure:
- # --build --host --infodir --localstatedir --sysconfdir
-
- einfo "Running ./configure ${myconf[@]} - THIS MAY TAKE A WHILE."
- ./configure \
- --prefix="${EPREFIX}/usr" \
- --cc="$(tc-getCC)" \
- --cxx="$(tc-getCXX)" \
- --ar="$(tc-getAR)" \
- --optflags="${CFLAGS}" \
- --extra-cflags="${CFLAGS}" \
- --extra-cxxflags="${CXXFLAGS}" \
- --extra-ldflags="${LDFLAGS}" \
- --qmake=$(qt5_get_bindir)/qmake \
- "${myconf[@]}"
-}
-
-src_install() {
- emake STRIP="true" INSTALL_ROOT="${D}" install
- use python && python_optimize # does all packages by default
- dodoc AUTHORS UPGRADING README
- readme.gentoo_create_doc
-
- insinto /usr/share/mythtv/database
- doins database/*
-
- newinitd "${FILESDIR}"/mythbackend.init-r3 mythbackend
- newconfd "${FILESDIR}"/mythbackend.conf-r1 mythbackend
- if use systemd; then
- systemd_newunit "${FILESDIR}"/mythbackend.service-28 mythbackend.service
- fi
-
- dodoc keys.txt
-
- keepdir /etc/mythtv
- fowners -R mythtv /etc/mythtv
- keepdir /var/log/mythtv
- fowners -R mythtv /var/log/mythtv
-
- insinto /etc/logrotate.d
- newins "${FILESDIR}"/mythtv.logrotate.d-r4 mythtv
-
- insinto /usr/share/mythtv/contrib
- # Ensure we don't install scripts needing the perl bindings (bug #516968) Finding none is OK.
- if ! use perl; then
- find contrib/ -name '*.pl' -exec rm {} \;
- fi
- # Ensure we don't install scripts needing the python bindings (bug #516968) Finding none is OK.
- if ! use python; then
- find contrib/ -name '*.py' -exec rm {} \;
- fi
- doins -r contrib/*
-
- # Install our mythfrontend wrapper which is similar to Mythbuntu's
- if use wrapper; then
- mv "${ED}/usr/bin/mythfrontend" "${ED}/usr/bin/mythfrontend.real" || die "Failed to install mythfrontend.real"
- newbin "${FILESDIR}"/mythfrontend.wrapper mythfrontend
- newconfd "${FILESDIR}"/mythfrontend.conf mythfrontend
- fi
-
- if use autostart; then
- newenvd - 95mythtv <<- _EOF_
- CONFIG_PROTECT=\"$(egethome mythtv)\"
- _EOF_
- insinto $(egethome mythtv)
- newins "${FILESDIR}"/bash_profile .bash_profile
- newins "${FILESDIR}"/xinitrc-r1 .xinitrc
- fi
-
- # Make Python files executable but not files named "__init__.py"
- find "${ED}/usr/share/mythtv" -type f -name '*.py' -exec expr \( {} : '.*__init__.py' \) = 0 \; \
- -exec chmod a+x {} \; || die "Failed to make python file $(basename ${file}) executable"
-
- # Ensure that Python scripts are executed by Python 2
- use python && python_fix_shebang "${ED}/usr/share/mythtv"
-
- # Make shell & perl scripts executable
- find "${ED}" -type f \( -name '*.sh' -o -name '*.pl' \) -exec chmod a+x {} \; || die "Failed to make script executable"
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
-}
-
-pkg_info() {
- return
-}
-
-pkg_config() {
- if [[ -e "${EROOT}"/usr/bin/mysql ]]; then
- "${EROOT}"/usr/bin/mysql -u root -p < "${EROOT}"/usr/share/mythtv/database/mc.sql
- fi
-}
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/, media-tv/mythtv/files/
@ 2023-04-18 7:48 Sam James
0 siblings, 0 replies; 16+ messages in thread
From: Sam James @ 2023-04-18 7:48 UTC (permalink / raw
To: gentoo-commits
commit: cf3855f776dce67949d4e046a78c4ed9fd7590b5
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 18 07:47:58 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Apr 18 07:48:12 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cf3855f7
media-tv/mythtv: fix build w/ newer setuptools
Note that we need a revbump for this as it affects installed files.
Closes: https://bugs.gentoo.org/891189
Signed-off-by: Sam James <sam <AT> gentoo.org>
.../mythtv/files/mythtv-32.0-python-version.patch | 25 ++++++++++++++++++++++
...mythtv-32.0-r3.ebuild => mythtv-32.0-r4.ebuild} | 3 ++-
2 files changed, 27 insertions(+), 1 deletion(-)
diff --git a/media-tv/mythtv/files/mythtv-32.0-python-version.patch b/media-tv/mythtv/files/mythtv-32.0-python-version.patch
new file mode 100644
index 000000000000..8f86cdda3764
--- /dev/null
+++ b/media-tv/mythtv/files/mythtv-32.0-python-version.patch
@@ -0,0 +1,25 @@
+https://bugs.gentoo.org/891189
+https://github.com/MythTV/mythtv/issues/711
+https://github.com/MythTV/mythtv/commit/23e158cbd9357e0d31834dff9c45022758671255
+
+From 23e158cbd9357e0d31834dff9c45022758671255 Mon Sep 17 00:00:00 2001
+From: David Hampton <mythtv@love2code.net>
+Date: Sun, 5 Jun 2022 00:43:38 -0400
+Subject: [PATCH] Fix "XX.0.-1 is an invalid version" warning in python
+ bindings.
+
+(cherry picked from commit 0f8e58b20a4246d46a77406fcf3c5368fbabaf8b)
+
+Fixes #711.
+--- a/bindings/python/setup.cfg
++++ b/bindings/python/setup.cfg
+@@ -2,7 +2,7 @@
+
+ [metadata]
+ name = MythTV
+-version = 32.0.-1
++version = 32.0
+ description = MythTV Python bindings.
+ long_description = Provides canned database and protocol access to the MythTV database, mythproto, mythxml, services_api and frontend remote control.
+ url = https://mythtv.org
+
diff --git a/media-tv/mythtv/mythtv-32.0-r3.ebuild b/media-tv/mythtv/mythtv-32.0-r4.ebuild
similarity index 99%
rename from media-tv/mythtv/mythtv-32.0-r3.ebuild
rename to media-tv/mythtv/mythtv-32.0-r4.ebuild
index 29e1671cf498..ce9af87d74fa 100644
--- a/media-tv/mythtv/mythtv-32.0-r3.ebuild
+++ b/media-tv/mythtv/mythtv-32.0-r4.ebuild
@@ -151,6 +151,7 @@ python_check_deps() {
}
PATCHES=(
+ "${FILESDIR}"/${PN}-32.0-python-version.patch
)
DISABLE_AUTOFORMATTING="yes"
@@ -158,7 +159,7 @@ DOC_CONTENTS="
Support for metadata lookup changes is added. User configuration required.
Details at: https://www.mythtv.org/wiki/Metadata_Lookup_Changes_March_2021
-Suppport for Python 2.7 is removed.
+Support for Python 2.7 is removed.
If a MYSQL server is installed, a mythtv MySQL user and mythconverg database
is created if it does not already exist.
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/, media-tv/mythtv/files/
@ 2023-05-01 12:41 Michał Górny
0 siblings, 0 replies; 16+ messages in thread
From: Michał Górny @ 2023-05-01 12:41 UTC (permalink / raw
To: gentoo-commits
commit: eb432ace0010e2d7b5b8784802c9a700333363c9
Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Mon May 1 12:40:57 2023 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon May 1 12:40:57 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=eb432ace
media-tv/mythtv: Remove old
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
media-tv/mythtv/Manifest | 1 -
.../mythtv-30.0_p20190808-respect_LDFLAGS.patch | 14 -
media-tv/mythtv/mythtv-31.0_p20210731-r3.ebuild | 436 ---------------------
3 files changed, 451 deletions(-)
diff --git a/media-tv/mythtv/Manifest b/media-tv/mythtv/Manifest
index 4ecb2ca1f93c..7888baa74d98 100644
--- a/media-tv/mythtv/Manifest
+++ b/media-tv/mythtv/Manifest
@@ -1,2 +1 @@
-DIST mythtv-31.0_p20210731.tar.gz 102637029 BLAKE2B 0ca6124d20d428c8b9999813c819c01a97c4806fbd2f70f5b50d698c5f9c3cafd3141ee1379b2b63510705e2083109d91362c3fcc6277f58d461f2138d1604fd SHA512 e262ce91fd8a523daa772d13675ff6639f95202f66be67b2a405e9ea9204d6663128621c5142752f2a889e25cbc8be6d92b3759508767e94207326343a91f092
DIST mythtv-32.0.tar.gz 115960698 BLAKE2B 3be4106fa2c4fcb95fd5414b347fd6256658566bbb9775ed32cb9686e4a61ecf89e7c684db8d3408292c3737ae6090771862aa65ac0d5d467e90c3a110484898 SHA512 6a1472c954b929319a570d76769ababad43d086d53b6679c9d6da91446677f04b71918b326bb4ff0fc16fbaf7d9a447a86f623a6f1399f9ed29ca86a9782396c
diff --git a/media-tv/mythtv/files/mythtv-30.0_p20190808-respect_LDFLAGS.patch b/media-tv/mythtv/files/mythtv-30.0_p20190808-respect_LDFLAGS.patch
deleted file mode 100644
index 8bfc2796cffe..000000000000
--- a/media-tv/mythtv/files/mythtv-30.0_p20190808-respect_LDFLAGS.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- a/configure
-+++ b/configure
-@@ -7919,9 +7919,9 @@ EOF
- #echo "endif # FFMPEG_CONFIG_MAK" >> $TMPMAK
-
- # Should be done on all platforms, but for the time being limit it to mac only
--if enabled darwin; then
-+#if enabled darwin; then
- echo "QMAKE_LFLAGS+=\"$LDFLAGS\"" >> $TMPMAK
--fi
-+#fi
-
- cp_if_changed $TMPH $MYTH_CONFIG_H
-
diff --git a/media-tv/mythtv/mythtv-31.0_p20210731-r3.ebuild b/media-tv/mythtv/mythtv-31.0_p20210731-r3.ebuild
deleted file mode 100644
index 1065b21829e0..000000000000
--- a/media-tv/mythtv/mythtv-31.0_p20210731-r3.ebuild
+++ /dev/null
@@ -1,436 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_9 )
-
-inherit eutils flag-o-matic python-any-r1 qmake-utils readme.gentoo-r1 systemd user-info
-
-MY_COMMIT="5824c588db24b4e71a7d94e829e6419f71089297"
-
-DESCRIPTION="Open Source DVR and media center hub"
-HOMEPAGE="https://www.mythtv.org https://github.com/MythTV/mythtv"
-if [[ $(ver_cut 3) == "p" ]] ; then
- SRC_URI="https://github.com/MythTV/mythtv/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
- # mythtv and mythplugins are separate builds in the github MythTV project
- S="${WORKDIR}/mythtv-${MY_COMMIT}/mythtv"
-else
- SRC_URI="https://github.com/MythTV/mythtv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- # mythtv and mythplugins are separate builds in the github mythtv project
- S="${WORKDIR}/${P}/mythtv"
-fi
-KEYWORDS="~amd64 ~x86"
-LICENSE="GPL-2+"
-SLOT="0"
-
-IUSE_INPUT_DEVICES="input_devices_joystick"
-IUSE_VIDEO_CAPTURE_DEVICES="v4l ivtv ieee1394 hdpvr hdhomerun vbox ceton"
-IUSE="alsa asi autostart bluray cdda cdr cec cpu_flags_ppc_altivec debug dvd dvb egl exif fftw jack java
- +lame lcd libass lirc nvdec +opengl oss perl pulseaudio python raw systemd vaapi vdpau vpx
- +wrapper x264 x265 +xml xmltv +xvid +X zeroconf
- ${IUSE_INPUT_DEVICES} ${IUSE_VIDEO_CAPTURE_DEVICES}"
-
-REQUIRED_USE="
- bluray? ( xml )
- cdr? ( cdda )
-"
-RDEPEND="
- acct-user/mythtv
- dev-libs/glib:2
- dev-libs/lzo
- dev-qt/qtcore:5
- dev-qt/qtdbus:5
- dev-qt/qtgui:5[jpeg]
- dev-qt/qtnetwork:5
- dev-qt/qtscript:5
- dev-qt/qtsql:5[mysql]
- dev-qt/qtwidgets:5
- dev-qt/qtxml:5
- media-fonts/corefonts
- media-fonts/dejavu
- media-fonts/liberation-fonts
- media-fonts/tex-gyre
- media-gfx/exiv2:=
- <media-libs/dav1d-1.0.0:=
- media-libs/freetype:2
- media-libs/libsamplerate
- media-libs/taglib
- sys-libs/zlib
- alsa? ( media-libs/alsa-lib )
- autostart? (
- net-dialup/mingetty
- x11-apps/xset
- x11-wm/evilwm
- )
- bluray? (
- dev-libs/libcdio:=
- media-libs/libbluray:=[java?]
- sys-fs/udisks:2
- )
- cec? ( dev-libs/libcec )
- dvd? (
- dev-libs/libcdio:=
- media-libs/libdvdcss
- sys-fs/udisks:2
- )
- egl? ( media-libs/mesa[egl(+)] )
- fftw? ( sci-libs/fftw:3.0=[threads] )
- hdhomerun? ( media-libs/libhdhomerun )
- ieee1394? (
- media-libs/libiec61883
- sys-libs/libavc1394
- sys-libs/libraw1394
- )
- jack? ( virtual/jack )
- java? ( dev-java/ant-core )
- lame? ( media-sound/lame )
- lcd? ( app-misc/lcdproc )
- libass? ( media-libs/libass:= )
- lirc? ( app-misc/lirc )
- nvdec? ( x11-drivers/nvidia-drivers )
- opengl? ( dev-qt/qtopengl:5 )
- pulseaudio? ( media-sound/pulseaudio )
- systemd? ( sys-apps/systemd:= )
- vaapi? ( media-libs/libva:= )
- vdpau? ( x11-libs/libvdpau )
- vpx? ( media-libs/libvpx:= )
- x264? ( media-libs/x264:= )
- X? (
- x11-apps/xinit
- x11-libs/libX11:=
- x11-libs/libXext:=
- x11-libs/libXinerama:=
- x11-libs/libXrandr:=
- x11-libs/libXv:=
- x11-libs/libXxf86vm:=
- x11-misc/wmctrl:=
- )
- x265? ( media-libs/x265 )
- xml? ( dev-libs/libxml2:2 )
- xmltv? (
- dev-perl/XML-LibXML
- media-tv/xmltv
- )
- xvid? ( media-libs/xvid )
- zeroconf? (
- dev-libs/openssl:=
- net-dns/avahi[mdnsresponder-compat]
- )
-"
-BDEPEND="
- virtual/pkgconfig
- opengl? ( virtual/opengl )
- python? ( ${PYTHON_DEPS} )
-"
-DEPEND="
- ${RDEPEND}
- dev-lang/yasm
- x11-base/xorg-proto
- perl? (
- dev-perl/DBD-mysql
- dev-perl/DBI
- dev-perl/HTTP-Message
- dev-perl/IO-Socket-INET6
- dev-perl/LWP-Protocol-https
- dev-perl/Net-UPnP
- dev-perl/XML-Simple
- )
- python? (
- $(python_gen_any_dep '
- dev-python/python-dateutil[${PYTHON_USEDEP}]
- dev-python/future[${PYTHON_USEDEP}]
- dev-python/lxml[${PYTHON_USEDEP}]
- dev-python/mysqlclient[${PYTHON_USEDEP}]
- dev-python/requests-cache[${PYTHON_USEDEP}]
- dev-python/simplejson[${PYTHON_USEDEP}]
- ')
- )
-"
-python_check_deps() {
- use python || return 0
- has_version "dev-python/python-dateutil[${PYTHON_USEDEP}]" &&
- has_version "dev-python/future[${PYTHON_USEDEP}]" &&
- has_version "dev-python/lxml[${PYTHON_USEDEP}]" &&
- has_version "dev-python/mysqlclient[${PYTHON_USEDEP}]" &&
- has_version "dev-python/requests-cache[${PYTHON_USEDEP}]" &&
- has_version "dev-python/simplejson[${PYTHON_USEDEP}]"
-}
-
-PATCHES=(
- "${FILESDIR}/${PN}-30.0_p20190808-respect_LDFLAGS.patch"
-)
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Support for metadata lookup changes is added. User configuration required.
-Details at: https://www.mythtv.org/wiki/Metadata_Lookup_Changes_March_2021
-
-Suppport for Python 2.7 is removed.
-
-If a MYSQL server is installed, a mythtv MySQL user and mythconverg database
-is created if it does not already exist.
-You will be prompted for your MySQL root password.
-
-A mythtv user is maintained by acct-user/mythtv. An existing mythtv user
-may be modified to the configuration defined by acct-user/mythtv.
-The mythtv user's primary group is now mythtv. (formerly video)
-An existing mythtv user may be changed which may alter some functionality.
-If it breaks mythtv you may need to (choose one):
- * Restore the original mythtv user
- * Create custom acct-user/mythtv overlay for your system
- * Fix you system to use mythtv as daemon only (recommended)
-Failure to emerge acct-user/mythtv indicates that the existing mythtv user
-is customized and not changed. Corrective action (choose one):
- * Ignore emerge failure
- * Create custom acct-user/mythtv overlay for your system
- * Fix you system to use mythtv as daemon only
- * Delete existing user and try again (dangerous)
-
-Mythtv is updated to use correct FHS/Gentoo policy paths.
-Updating mythtv installations may report:
- * mythtv is in use, cannot update home
- * There was an error when attempting to update the home directory for mythtv
- * Please update it manually on your system (as root):
- * usermod -d "/var/lib/mythtv" "mythtv"
-This can be ignored. The previous default was "/home/mythtv".
-Use caution if you change the home directory.
-
-To have this machine operate as recording host for MythTV,
-mythbackend must be running. Run the following:
-rc-update add mythbackend default
-
-Your recordings folder must be owned 'mythtv'. e.g.
-chown -R mythtv /var/lib/mythtv
-
-Want mythfrontend to start automatically?
-Set USE=autostart. Details can be found at:
-https://dev.gentoo.org/~cardoe/mythtv/autostart.html
-"
-
-pkg_setup() {
- use python && python-any-r1_pkg_setup
- # The acct-user/mythtv package creates/manages the user 'mythtv'
-}
-
-src_prepare() {
- default
-
- # Perl bits need to go into vender_perl and not site_perl
- sed -e "s:pure_install:pure_install INSTALLDIRS=vendor:" \
- -i "${S}"/bindings/perl/Makefile || die "Cannot convert site_perl to vendor_perl!"
-
-}
-
-src_configure() {
- local -a myconf
-
- # Setup paths
- myconf+=(--prefix="${EPREFIX}"/usr)
- myconf+=(--libdir="${EPREFIX}"/usr/$(get_libdir))
- myconf+=(--libdir-name=$(get_libdir))
- myconf+=(--mandir="${EPREFIX}"/usr/share/man)
-
- if use debug; then
- myconf+=(--compile-type=debug)
- myconf+=(--disable-stripping) # FIXME: does not disable for all files, only for some
- myconf+=(--enable-valgrind) # disables timeouts for valgrind memory debugging
- else
- myconf+=(--compile-type=release)
- fi
-
- # Build boosters
- has ccache "${FEATURES}" || myconf+=(--disable-ccache)
- has distcc "${FEATURES}" || myconf+=(--disable-distcc)
-
- # CPU settings
- # Mythtv's configure is borrowed from ffmpeg,
- # Bug #172723
- # Try to get cpu type based on CFLAGS.
- # We need to do this so that features of that CPU will be better used
- # If they contain an unknown CPU it will not hurt since ffmpeg's configure
- # will just ignore it.
- for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
- [ "${i}" = "native" ] && i="host" # bug #273421
- myconf+=(--cpu="${i}")
- break
- done
- myconf+=($(use_enable cpu_flags_ppc_altivec altivec))
-
- # Sound Output Support
- myconf+=(
- $(use_enable oss audio-oss)
- $(use_enable alsa audio-alsa)
- $(use_enable jack audio-jack)
- $(use_enable pulseaudio audio-pulseoutput)
- )
-
- # Input Support
- myconf+=(
- $(use_enable lirc)
- $(use_enable input_devices_joystick joystick-menu)
- $(use_enable cec libcec)
- $(use_enable ieee1394 firewire)
- $(use_enable hdhomerun)
- $(use_enable vbox)
- $(use_enable ceton)
- $(use_enable v4l v4l2)
- $(use_enable ivtv)
- $(use_enable hdpvr)
- $(use_enable dvb)
- $(use_enable asi)
- )
-
- # Video Output Support
- myconf+=(
- $(use_enable X x11)
- $(use_enable X xrandr)
- )
-
- # Hardware accellerators
- myconf+=(
- $(use_enable nvdec)
- $(use_enable vaapi)
- $(use_enable vdpau)
- $(use_enable opengl)
- $(use_enable libass)
- )
-
- # System tools
- myconf+=(
- $(use_enable systemd systemd_notify)
- $(use_enable systemd systemd_journal)
- $(use_enable xml libxml2)
- $(use_enable zeroconf libdns-sd)
- )
-
- # Bindings
- if use perl && use python; then
- myconf+=(--with-bindings=perl,python)
- elif use perl; then
- myconf+=(--without-bindings=python)
- myconf+=(--with-bindings=perl)
- elif use python; then
- myconf+=(--without-bindings=perl)
- myconf+=(--with-bindings=python)
- else
- myconf+=(--without-bindings=perl,python)
- fi
- use python && myconf+=(--python="${EPYTHON}")
- myconf+=($(use_enable java bdjava))
-
- # External codec library options (used for mythffmpeg and streaming transcode)
- # lame is required for some broadcasts for silence detection of commercials
- # default enable in IUSE with +lame
- myconf+=(
- $(use_enable lame libmp3lame)
- $(use_enable xvid libxvid)
- $(use_enable x264 libx264)
- $(use_enable x265 libx265)
- $(use_enable vpx libvpx)
- )
-
- # Clean up DSO load times and other compiler bits
- myconf+=(--enable-symbol-visibility)
- myconf+=(--enable-pic)
-
- if tc-is-cross-compiler ; then
- myconf+=(--enable-cross-compile --arch=$(tc-arch-kernel))
- myconf+=(--cross-prefix="${CHOST}"-)
- fi
-
- myconf+=($(use_enable bluray libbluray_external))
-
- # econf sets these options that are not handled by configure:
- # --build --host --infodir --localstatedir --sysconfdir
-
- einfo "Running ./configure ${myconf[@]} - THIS MAY TAKE A WHILE."
- ./configure \
- --prefix="${EPREFIX}/usr" \
- --cc="$(tc-getCC)" \
- --cxx="$(tc-getCXX)" \
- --ar="$(tc-getAR)" \
- --optflags="${CFLAGS}" \
- --extra-cflags="${CFLAGS}" \
- --extra-cxxflags="${CXXFLAGS}" \
- --extra-ldflags="${LDFLAGS}" \
- --qmake=$(qt5_get_bindir)/qmake \
- "${myconf[@]}"
-}
-
-src_install() {
- emake STRIP="true" INSTALL_ROOT="${D}" install
- use python && python_optimize # does all packages by default
- dodoc AUTHORS UPGRADING README
- readme.gentoo_create_doc
-
- insinto /usr/share/mythtv/database
- doins database/*
-
- newinitd "${FILESDIR}"/mythbackend.init-r3 mythbackend
- newconfd "${FILESDIR}"/mythbackend.conf-r1 mythbackend
- if use systemd; then
- systemd_newunit "${FILESDIR}"/mythbackend.service-28 mythbackend.service
- fi
-
- dodoc keys.txt
-
- keepdir /etc/mythtv
- fowners -R mythtv /etc/mythtv
- keepdir /var/log/mythtv
- fowners -R mythtv /var/log/mythtv
-
- insinto /etc/logrotate.d
- newins "${FILESDIR}"/mythtv.logrotate.d-r4 mythtv
-
- insinto /usr/share/mythtv/contrib
- # Ensure we don't install scripts needing the perl bindings (bug #516968) Finding none is OK.
- if ! use perl; then
- find contrib/ -name '*.pl' -exec rm {} \;
- fi
- # Ensure we don't install scripts needing the python bindings (bug #516968) Finding none is OK.
- if ! use python; then
- find contrib/ -name '*.py' -exec rm {} \;
- fi
- doins -r contrib/*
-
- # Install our mythfrontend wrapper which is similar to Mythbuntu's
- if use wrapper; then
- mv "${ED}/usr/bin/mythfrontend" "${ED}/usr/bin/mythfrontend.real" || die "Failed to install mythfrontend.real"
- newbin "${FILESDIR}"/mythfrontend.wrapper mythfrontend
- newconfd "${FILESDIR}"/mythfrontend.conf mythfrontend
- fi
-
- if use autostart; then
- newenvd - 95mythtv <<- _EOF_
- CONFIG_PROTECT=\"$(egethome mythtv)\"
- _EOF_
- insinto $(egethome mythtv)
- newins "${FILESDIR}"/bash_profile .bash_profile
- newins "${FILESDIR}"/xinitrc-r1 .xinitrc
- fi
-
- # Make Python files executable but not files named "__init__.py"
- find "${ED}/usr/share/mythtv" -type f -name '*.py' -exec expr \( {} : '.*__init__.py' \) = 0 \; \
- -exec chmod a+x {} \; || die "Failed to make python file $(basename ${file}) executable"
-
- # Ensure that Python scripts are executed by Python 2
- use python && python_fix_shebang "${ED}/usr/share/mythtv"
-
- # Make shell & perl scripts executable
- find "${ED}" -type f \( -name '*.sh' -o -name '*.pl' \) -exec chmod a+x {} \; || die "Failed to make script executable"
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
-}
-
-pkg_info() {
- return
-}
-
-pkg_config() {
- if [[ -e "${EROOT}"/usr/bin/mysql ]]; then
- "${EROOT}"/usr/bin/mysql -u root -p < "${EROOT}"/usr/share/mythtv/database/mc.sql
- fi
-}
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/, media-tv/mythtv/files/
@ 2023-06-15 0:12 Sam James
0 siblings, 0 replies; 16+ messages in thread
From: Sam James @ 2023-06-15 0:12 UTC (permalink / raw
To: gentoo-commits
commit: c48ae7a5696fe3ddabd170e3e6e12f1ea26dc7bb
Author: Sebastian Parborg <darkdefende <AT> gmail <DOT> com>
AuthorDate: Wed Jun 14 10:06:12 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jun 14 23:58:47 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c48ae7a5
media-tv/mythtv: Bump to 33.1 and fix compilation with libva
Closes: https://bugs.gentoo.org/904437
Signed-off-by: Sebastian Parborg <darkdefende <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/31432
Signed-off-by: Sam James <sam <AT> gentoo.org>
media-tv/mythtv/Manifest | 1 +
media-tv/mythtv/files/mythtv-33.1-libva.patch | 105 +++++++
media-tv/mythtv/mythtv-33.1.ebuild | 421 ++++++++++++++++++++++++++
3 files changed, 527 insertions(+)
diff --git a/media-tv/mythtv/Manifest b/media-tv/mythtv/Manifest
index 7888baa74d98..ef07a7599acf 100644
--- a/media-tv/mythtv/Manifest
+++ b/media-tv/mythtv/Manifest
@@ -1 +1,2 @@
DIST mythtv-32.0.tar.gz 115960698 BLAKE2B 3be4106fa2c4fcb95fd5414b347fd6256658566bbb9775ed32cb9686e4a61ecf89e7c684db8d3408292c3737ae6090771862aa65ac0d5d467e90c3a110484898 SHA512 6a1472c954b929319a570d76769ababad43d086d53b6679c9d6da91446677f04b71918b326bb4ff0fc16fbaf7d9a447a86f623a6f1399f9ed29ca86a9782396c
+DIST mythtv-33.1.tar.gz 116920982 BLAKE2B bc784a12ee0acf3066d46896343ed15a2f7097364595d20e832da3197eb37c8d05342f82171b66ec842ec48b5829b7ace8c6043835b8de4a04afd8a4df72df1d SHA512 4dc2943915e5e3ca047edc0a005a9e0b58edf7bc51c7fb097a6715bbbb52028260065a7f52f35e4ed98559cc4f4ccca76f1cf6ae68e76b1f2d06a1befd4776e9
diff --git a/media-tv/mythtv/files/mythtv-33.1-libva.patch b/media-tv/mythtv/files/mythtv-33.1-libva.patch
new file mode 100644
index 000000000000..8c59f31002a9
--- /dev/null
+++ b/media-tv/mythtv/files/mythtv-33.1-libva.patch
@@ -0,0 +1,105 @@
+diff --git a/mythtv/libs/libmythtv/libmythtv.pro b/mythtv/libs/libmythtv/libmythtv.pro
+index 0ab94a295c..08b4c4d335 100644
+--- a/libs/libmythtv/libmythtv.pro
++++ b/libs/libmythtv/libmythtv.pro
+@@ -538,7 +538,7 @@ using_frontend {
+ DEFINES += USING_VAAPI
+ HEADERS += decoders/mythvaapicontext.h
+ SOURCES += decoders/mythvaapicontext.cpp
+- LIBS += -lva -lva-x11 -lva-glx -lva-drm
++ LIBS += -lva -lva-drm
+ }
+
+ using_nvdec {
+@@ -605,10 +605,9 @@ using_frontend {
+ SOURCES += opengl/mythopengltonemap.cpp
+ SOURCES += visualisations/videovisualcircles.cpp
+
+-
+ using_vaapi {
+- HEADERS += opengl/mythvaapiinterop.h opengl/mythvaapiglxinterop.h
+- SOURCES += opengl/mythvaapiinterop.cpp opengl/mythvaapiglxinterop.cpp
++ HEADERS += opengl/mythvaapiinterop.h
++ SOURCES += opengl/mythvaapiinterop.cpp
+ }
+
+ using_vdpau:using_x11 {
+@@ -649,6 +648,12 @@ using_frontend {
+ HEADERS += opengl/mythvaapidrminterop.h
+ SOURCES += opengl/mythvaapidrminterop.cpp
+ }
++ } else {
++ using_vaapi {
++ HEADERS += opengl/mythvaapiglxinterop.h
++ SOURCES += opengl/mythvaapiglxinterop.cpp
++ LIBS += -lva-x11 -lva-glx
++ }
+ }
+
+ !win32-msvc* {
+diff --git a/mythtv/libs/libmythtv/opengl/mythvaapiinterop.cpp b/mythtv/libs/libmythtv/opengl/mythvaapiinterop.cpp
+index 5f92a6beb0..b87ed0da35 100644
+--- a/libs/libmythtv/opengl/mythvaapiinterop.cpp
++++ b/libs/libmythtv/opengl/mythvaapiinterop.cpp
+@@ -8,8 +8,12 @@
+ #include "mythvideocolourspace.h"
+ #include "fourcc.h"
+ #include "mythvaapiinterop.h"
++
++#ifdef USING_EGL
+ #include "mythvaapidrminterop.h"
++#else
+ #include "mythvaapiglxinterop.h"
++#endif
+
+ extern "C" {
+ #include "libavfilter/buffersrc.h"
+@@ -57,14 +61,14 @@ void MythVAAPIInterop::GetVAAPITypes(MythRenderOpenGL* Context, MythInteropGPU::
+ // zero copy
+ if (egl && MythVAAPIInteropDRM::IsSupported(Context))
+ vaapitypes.emplace_back(GL_VAAPIEGLDRM);
+-#endif
++#else
+ // 1x copy
+ if (!egl && !wayland && MythVAAPIInteropGLXPixmap::IsSupported(Context))
+ vaapitypes.emplace_back(GL_VAAPIGLXPIX);
+ // 2x copy
+ if (!egl && !opengles && !wayland)
+ vaapitypes.emplace_back(GL_VAAPIGLXCOPY);
+-
++#endif
+ if (!vaapitypes.empty())
+ Types[FMT_VAAPI] = vaapitypes;
+ }
+@@ -82,11 +86,12 @@ MythVAAPIInterop* MythVAAPIInterop::CreateVAAPI(MythPlayerUI *Player, MythRender
+ #ifdef USING_EGL
+ if ((type == GL_VAAPIEGLDRM) || (type == DRM_DRMPRIME))
+ return new MythVAAPIInteropDRM(Player, Context, type);
+-#endif
++#else
+ if (type == GL_VAAPIGLXPIX)
+ return new MythVAAPIInteropGLXPixmap(Player, Context);
+ if (type == GL_VAAPIGLXCOPY)
+ return new MythVAAPIInteropGLXCopy(Player, Context);
++#endif
+ }
+ }
+ return nullptr;
+diff --git a/mythtv/libs/libmythtv/opengl/mythvaapiinterop.h b/mythtv/libs/libmythtv/opengl/mythvaapiinterop.h
+index 11358db236..2048d4586c 100644
+--- a/libs/libmythtv/opengl/mythvaapiinterop.h
++++ b/libs/libmythtv/opengl/mythvaapiinterop.h
+@@ -25,9 +25,12 @@ struct AVFilterContext;
+ #undef None // X11/X.h defines this. Causes compile failure in Qt6.
+ #undef Cursor
+ #undef pointer
+-#include "va/va_glx.h"
++#ifdef USING_EGL
+ #include "va/va_drm.h"
+ #include "va/va_drmcommon.h"
++#else
++#include "va/va_glx.h"
++#endif
+ #undef Bool // Interferes with cmake moc file compilation
+
+ #ifndef VA_FOURCC_I420
diff --git a/media-tv/mythtv/mythtv-33.1.ebuild b/media-tv/mythtv/mythtv-33.1.ebuild
new file mode 100644
index 000000000000..e847f0e1e1a0
--- /dev/null
+++ b/media-tv/mythtv/mythtv-33.1.ebuild
@@ -0,0 +1,421 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit flag-o-matic java-pkg-opt-2 java-ant-2 python-any-r1 qmake-utils readme.gentoo-r1 systemd user-info
+
+DESCRIPTION="Open Source DVR and media center hub"
+HOMEPAGE="https://www.mythtv.org https://github.com/MythTV/mythtv"
+if [[ $(ver_cut 3) == "p" ]] ; then
+ MY_COMMIT="5824c588db24b4e71a7d94e829e6419f71089297"
+ SRC_URI="https://github.com/MythTV/mythtv/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
+ # mythtv and mythplugins are separate builds in the github MythTV project
+ S="${WORKDIR}/mythtv-${MY_COMMIT}/mythtv"
+else
+ SRC_URI="https://github.com/MythTV/mythtv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ # mythtv and mythplugins are separate builds in the github mythtv project
+ S="${WORKDIR}/${P}/mythtv"
+fi
+KEYWORDS="~amd64 ~x86"
+LICENSE="GPL-2+"
+SLOT="0"
+
+IUSE_INPUT_DEVICES="input_devices_joystick"
+IUSE_VIDEO_CAPTURE_DEVICES="v4l ieee1394 hdhomerun vbox ceton"
+IUSE="alsa asi autostart cdda cdr cec cpu_flags_ppc_altivec debug dvd dvb exif fftw jack java
+ +lame lcd libass lirc nvdec +opengl oss perl pulseaudio python raw systemd vaapi vdpau vpx
+ +wrapper x264 x265 +xml xmltv +xvid +X zeroconf
+ ${IUSE_INPUT_DEVICES} ${IUSE_VIDEO_CAPTURE_DEVICES}"
+
+REQUIRED_USE="
+ cdr? ( cdda )
+"
+RDEPEND="
+ acct-user/mythtv
+ dev-libs/glib:2
+ dev-libs/lzo
+ dev-libs/libzip:=
+ dev-qt/qtcore:5
+ dev-qt/qtdbus:5
+ dev-qt/qtgui:5[jpeg]
+ dev-qt/qtnetwork:5
+ dev-qt/qtscript:5
+ dev-qt/qtsql:5[mysql]
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ media-fonts/corefonts
+ media-fonts/dejavu
+ media-fonts/liberation-fonts
+ media-fonts/tex-gyre
+ media-gfx/exiv2:=
+ media-libs/freetype:2
+ media-libs/libbluray:=[java?]
+ media-libs/libsamplerate
+ media-libs/libsoundtouch
+ media-libs/taglib
+ sys-libs/zlib
+ alsa? ( media-libs/alsa-lib )
+ autostart? (
+ net-dialup/mingetty
+ x11-apps/xset
+ x11-wm/evilwm
+ )
+ cec? ( dev-libs/libcec )
+ dvd? (
+ dev-libs/libcdio:=
+ media-libs/libdvdcss
+ sys-fs/udisks:2
+ )
+ fftw? ( sci-libs/fftw:3.0=[threads] )
+ hdhomerun? ( media-libs/libhdhomerun )
+ ieee1394? (
+ media-libs/libiec61883
+ sys-libs/libavc1394
+ sys-libs/libraw1394
+ )
+ jack? ( virtual/jack )
+ lame? ( media-sound/lame )
+ lcd? ( app-misc/lcdproc )
+ libass? ( media-libs/libass:= )
+ lirc? ( app-misc/lirc )
+ nvdec? ( x11-drivers/nvidia-drivers )
+ opengl? ( dev-qt/qtopengl:5 )
+ pulseaudio? ( media-sound/pulseaudio )
+ systemd? ( sys-apps/systemd:= )
+ vaapi? ( media-libs/libva:= )
+ vdpau? ( x11-libs/libvdpau )
+ vpx? ( media-libs/libvpx:= )
+ x264? ( media-libs/x264:= )
+ X? (
+ x11-apps/xinit
+ x11-libs/libX11:=
+ x11-libs/libXext:=
+ x11-libs/libXinerama:=
+ x11-libs/libXrandr:=
+ x11-libs/libXv:=
+ x11-libs/libXxf86vm:=
+ x11-misc/wmctrl:=
+ )
+ x265? ( media-libs/x265 )
+ xml? ( dev-libs/libxml2:2 )
+ xmltv? (
+ dev-perl/XML-LibXML
+ media-tv/xmltv
+ )
+ xvid? ( media-libs/xvid )
+ zeroconf? (
+ dev-libs/openssl:=
+ net-dns/avahi[mdnsresponder-compat]
+ )
+"
+BDEPEND="
+ virtual/pkgconfig
+ opengl? ( virtual/opengl )
+ python? ( ${PYTHON_DEPS} )
+"
+DEPEND="
+ ${RDEPEND}
+ dev-lang/yasm
+ x11-base/xorg-proto
+ perl? (
+ dev-perl/DBD-mysql
+ dev-perl/DBI
+ dev-perl/HTTP-Message
+ dev-perl/IO-Socket-INET6
+ dev-perl/LWP-Protocol-https
+ dev-perl/Net-UPnP
+ dev-perl/XML-Simple
+ )
+ python? (
+ $(python_gen_any_dep '
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ dev-python/future[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/mysqlclient[${PYTHON_USEDEP}]
+ dev-python/requests-cache[${PYTHON_USEDEP}]
+ dev-python/simplejson[${PYTHON_USEDEP}]
+ ')
+ )
+"
+python_check_deps() {
+ use python || return 0
+ has_version "dev-python/python-dateutil[${PYTHON_USEDEP}]" &&
+ has_version "dev-python/future[${PYTHON_USEDEP}]" &&
+ has_version "dev-python/lxml[${PYTHON_USEDEP}]" &&
+ has_version "dev-python/mysqlclient[${PYTHON_USEDEP}]" &&
+ has_version "dev-python/requests-cache[${PYTHON_USEDEP}]" &&
+ has_version "dev-python/simplejson[${PYTHON_USEDEP}]"
+}
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-33.1-libva.patch
+)
+
+DISABLE_AUTOFORMATTING="yes"
+DOC_CONTENTS="
+Support for metadata lookup changes is added. User configuration required.
+Details at: https://www.mythtv.org/wiki/Metadata_Lookup_Changes_March_2021
+
+Support for Python 2.7 is removed.
+
+If a MYSQL server is installed, a mythtv MySQL user and mythconverg database
+is created if it does not already exist.
+You will be prompted for your MySQL root password.
+
+A mythtv user is maintained by acct-user/mythtv. An existing mythtv user
+may be modified to the configuration defined by acct-user/mythtv.
+The mythtv user's primary group is now mythtv. (formerly video)
+An existing mythtv user may be changed which may alter some functionality.
+If it breaks mythtv you may need to (choose one):
+ * Restore the original mythtv user
+ * Create custom acct-user/mythtv overlay for your system
+ * Fix you system to use mythtv as daemon only (recommended)
+Failure to emerge acct-user/mythtv indicates that the existing mythtv user
+is customized and not changed. Corrective action (choose one):
+ * Ignore emerge failure
+ * Create custom acct-user/mythtv overlay for your system
+ * Fix you system to use mythtv as daemon only
+ * Delete existing user and try again (dangerous)
+
+Mythtv is updated to use correct FHS/Gentoo policy paths.
+Updating mythtv installations may report:
+ * mythtv is in use, cannot update home
+ * There was an error when attempting to update the home directory for mythtv
+ * Please update it manually on your system (as root):
+ * usermod -d "/var/lib/mythtv" "mythtv"
+This can be ignored. The previous default was "/home/mythtv".
+Use caution if you change the home directory.
+
+To have this machine operate as recording host for MythTV,
+mythbackend must be running. Run the following:
+rc-update add mythbackend default
+
+Your recordings folder must be owned 'mythtv'. e.g.
+chown -R mythtv /var/lib/mythtv
+
+Want mythfrontend to start automatically?
+Set USE=autostart. Details can be found at:
+https://dev.gentoo.org/~cardoe/mythtv/autostart.html
+"
+
+pkg_setup() {
+ use python && python-any-r1_pkg_setup
+ # The acct-user/mythtv package creates/manages the user 'mythtv'
+}
+
+src_prepare() {
+ default
+
+ # Perl bits need to go into vender_perl and not site_perl
+ sed -e "s:pure_install:pure_install INSTALLDIRS=vendor:" \
+ -i "${S}"/bindings/perl/Makefile || die "Cannot convert site_perl to vendor_perl!"
+
+}
+
+src_configure() {
+ local -a myconf
+
+ # Setup paths
+ myconf+=(--prefix="${EPREFIX}"/usr)
+ myconf+=(--libdir="${EPREFIX}"/usr/$(get_libdir))
+ myconf+=(--libdir-name=$(get_libdir))
+ myconf+=(--mandir="${EPREFIX}"/usr/share/man)
+
+ if use debug; then
+ myconf+=(--compile-type=debug)
+ myconf+=(--disable-stripping) # FIXME: does not disable for all files, only for some
+ myconf+=(--enable-valgrind) # disables timeouts for valgrind memory debugging
+ else
+ myconf+=(--compile-type=release)
+ fi
+
+ # Build boosters
+ has ccache "${FEATURES}" || myconf+=(--disable-ccache)
+ has distcc "${FEATURES}" || myconf+=(--disable-distcc)
+
+ # CPU settings
+ # Mythtv's configure is borrowed from ffmpeg,
+ # Bug #172723
+ # Try to get cpu type based on CFLAGS.
+ # We need to do this so that features of that CPU will be better used
+ # If they contain an unknown CPU it will not hurt since ffmpeg's configure
+ # will just ignore it.
+ local i
+ for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
+ [[ "${i}" == "native" ]] && i="host" # bug #273421
+ myconf+=(--cpu="${i}")
+ break
+ done
+ myconf+=($(use_enable cpu_flags_ppc_altivec altivec))
+
+ # Sound Output Support
+ myconf+=(
+ $(use_enable oss audio-oss)
+
+ $(use_enable alsa audio-alsa)
+ $(use_enable jack audio-jack)
+ $(use_enable pulseaudio audio-pulseoutput)
+ )
+
+ # Input Support
+ myconf+=(
+ $(use_enable lirc)
+ $(use_enable input_devices_joystick joystick-menu)
+ $(use_enable cec libcec)
+ $(use_enable ieee1394 firewire)
+ $(use_enable hdhomerun)
+ $(use_enable vbox)
+ $(use_enable ceton)
+ $(use_enable v4l v4l2)
+ $(use_enable dvb)
+ $(use_enable asi)
+ )
+
+ # Video Output Support
+ myconf+=(
+ $(use_enable X x11)
+ )
+
+ # Hardware accelerators
+ myconf+=(
+ $(use_enable nvdec)
+ $(use_enable vaapi)
+ $(use_enable vdpau)
+ $(use_enable opengl)
+ $(use_enable opengl egl)
+ $(use_enable libass)
+ )
+
+ # System tools
+ myconf+=(
+ $(use_enable systemd systemd_notify)
+ $(use_enable systemd systemd_journal)
+ $(use_enable xml libxml2)
+ $(use_enable zeroconf libdns-sd)
+ )
+
+ # Bindings
+ if use perl && use python; then
+ myconf+=(--with-bindings=perl,python)
+ elif use perl; then
+ myconf+=(--without-bindings=python)
+ myconf+=(--with-bindings=perl)
+ elif use python; then
+ myconf+=(--without-bindings=perl)
+ myconf+=(--with-bindings=python)
+ else
+ myconf+=(--without-bindings=perl,python)
+ fi
+ use python && myconf+=(--python="${EPYTHON}")
+ myconf+=($(use_enable java bdjava))
+
+ # External codec library options (used for mythffmpeg and streaming transcode)
+ # lame is required for some broadcasts for silence detection of commercials
+ # default enable in IUSE with +lame
+ myconf+=(
+ $(use_enable lame libmp3lame)
+ $(use_enable xvid libxvid)
+ $(use_enable x264 libx264)
+ $(use_enable x265 libx265)
+ $(use_enable vpx libvpx)
+ )
+
+ # Clean up DSO load times and other compiler bits
+ myconf+=(--enable-symbol-visibility)
+ myconf+=(--enable-pic)
+
+ if tc-is-cross-compiler ; then
+ myconf+=(--enable-cross-compile --arch=$(tc-arch-kernel))
+ myconf+=(--cross-prefix="${CHOST}"-)
+ fi
+
+ # econf sets these options that are not handled by configure:
+ # --build --host --infodir --localstatedir --sysconfdir
+
+ einfo "Running ./configure ${myconf[@]} - THIS MAY TAKE A WHILE."
+ ./configure \
+ --prefix="${EPREFIX}/usr" \
+ --cc="$(tc-getCC)" \
+ --cxx="$(tc-getCXX)" \
+ --ar="$(tc-getAR)" \
+ --optflags="${CFLAGS}" \
+ --extra-cflags="${CFLAGS}" \
+ --extra-cxxflags="${CXXFLAGS}" \
+ --extra-ldflags="${LDFLAGS}" \
+ --qmake=$(qt5_get_bindir)/qmake \
+ "${myconf[@]}" || die "Fail doing ./configure ${myconf[@]}"
+}
+
+src_install() {
+ emake STRIP="true" INSTALL_ROOT="${D}" install
+ use python && python_optimize # does all packages by default
+ dodoc AUTHORS README
+ readme.gentoo_create_doc
+
+ insinto /usr/share/mythtv/database
+ doins database/*
+
+ newinitd "${FILESDIR}"/mythbackend.init-r3 mythbackend
+ newconfd "${FILESDIR}"/mythbackend.conf-r1 mythbackend
+ if use systemd; then
+ systemd_newunit "${FILESDIR}"/mythbackend.service-28 mythbackend.service
+ fi
+
+ keepdir /etc/mythtv
+ fowners -R mythtv /etc/mythtv
+ keepdir /var/log/mythtv
+ fowners -R mythtv /var/log/mythtv
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/mythtv.logrotate.d-r4 mythtv
+
+ insinto /usr/share/mythtv/contrib
+ # Ensure we don't install scripts needing the perl bindings (bug #516968) Finding none is OK.
+ if ! use perl; then
+ find contrib/ -name '*.pl' -exec rm {} \;
+ fi
+ # Ensure we don't install scripts needing the python bindings (bug #516968) Finding none is OK.
+ if ! use python; then
+ find contrib/ -name '*.py' -exec rm {} \;
+ fi
+ doins -r contrib/*
+
+ # Install our mythfrontend wrapper which is similar to Mythbuntu's
+ if use wrapper; then
+ mv "${ED}/usr/bin/mythfrontend" "${ED}/usr/bin/mythfrontend.real" || die "Failed to install mythfrontend.real"
+ newbin "${FILESDIR}"/mythfrontend.wrapper mythfrontend
+ newconfd "${FILESDIR}"/mythfrontend.conf mythfrontend
+ fi
+
+ if use autostart; then
+ newenvd - 95mythtv <<- _EOF_
+ CONFIG_PROTECT=\"$(egethome mythtv)\"
+ _EOF_
+ insinto $(egethome mythtv)
+ newins "${FILESDIR}"/bash_profile .bash_profile
+ newins "${FILESDIR}"/xinitrc-r1 .xinitrc
+ fi
+
+ # Make Python files executable but not files named "__init__.py"
+ find "${ED}/usr/share/mythtv" -type f -name '*.py' -exec expr \( {} : '.*__init__.py' \) = 0 \; \
+ -exec chmod a+x {} \; || die "Failed to make python file $(basename ${file}) executable"
+
+ # Ensure that Python scripts are executed by Python 2
+ use python && python_fix_shebang "${ED}/usr/share/mythtv"
+
+ # Make shell & perl scripts executable
+ find "${ED}" -type f \( -name '*.sh' -o -name '*.pl' \) -exec chmod a+x {} \; || die "Failed to make script executable"
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+}
+
+pkg_config() {
+ if [[ -e "${EROOT}"/usr/bin/mysql ]]; then
+ "${EROOT}"/usr/bin/mysql -u root -p < "${EROOT}"/usr/share/mythtv/database/mc.sql
+ fi
+}
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/, media-tv/mythtv/files/
@ 2023-06-15 0:12 Sam James
0 siblings, 0 replies; 16+ messages in thread
From: Sam James @ 2023-06-15 0:12 UTC (permalink / raw
To: gentoo-commits
commit: d5982391838998cadcd4eea66274260c69f55123
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Jun 15 00:08:38 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Jun 15 00:12:04 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d5982391
media-tv/mythtv: modernise
- Use normal Gentoo style for arrays, variables, etc
- Rearrange layout a bit for readability
- Shift README into files/
Signed-off-by: Sam James <sam <AT> gentoo.org>
media-tv/mythtv/files/README.gentoo | 43 ++++++++++
media-tv/mythtv/mythtv-33.1.ebuild | 156 +++++++++++++-----------------------
2 files changed, 99 insertions(+), 100 deletions(-)
diff --git a/media-tv/mythtv/files/README.gentoo b/media-tv/mythtv/files/README.gentoo
new file mode 100644
index 000000000000..cd116011d11f
--- /dev/null
+++ b/media-tv/mythtv/files/README.gentoo
@@ -0,0 +1,43 @@
+Support for metadata lookup changes is added. User configuration required.
+Details at: https://www.mythtv.org/wiki/Metadata_Lookup_Changes_March_2021
+
+Support for Python 2.7 is removed.
+
+If a MYSQL server is installed, a mythtv MySQL user and mythconverg database
+is created if it does not already exist.
+You will be prompted for your MySQL root password.
+
+A mythtv user is maintained by acct-user/mythtv. An existing mythtv user
+may be modified to the configuration defined by acct-user/mythtv.
+The mythtv user's primary group is now mythtv. (formerly video)
+An existing mythtv user may be changed which may alter some functionality.
+If it breaks mythtv you may need to (choose one):
+ * Restore the original mythtv user
+ * Create custom acct-user/mythtv overlay for your system
+ * Fix you system to use mythtv as daemon only (recommended)
+Failure to emerge acct-user/mythtv indicates that the existing mythtv user
+is customized and not changed. Corrective action (choose one):
+ * Ignore emerge failure
+ * Create custom acct-user/mythtv overlay for your system
+ * Fix you system to use mythtv as daemon only
+ * Delete existing user and try again (dangerous)
+
+Mythtv is updated to use correct FHS/Gentoo policy paths.
+Updating mythtv installations may report:
+ * mythtv is in use, cannot update home
+ * There was an error when attempting to update the home directory for mythtv
+ * Please update it manually on your system (as root):
+ * usermod -d "/var/lib/mythtv" "mythtv"
+This can be ignored. The previous default was "/home/mythtv".
+Use caution if you change the home directory.
+
+To have this machine operate as recording host for MythTV,
+mythbackend must be running. Run the following:
+rc-update add mythbackend default
+
+Your recordings folder must be owned 'mythtv'. e.g.
+chown -R mythtv /var/lib/mythtv
+
+Want mythfrontend to start automatically?
+Set USE=autostart. Details can be found at:
+https://dev.gentoo.org/~cardoe/mythtv/autostart.html
diff --git a/media-tv/mythtv/mythtv-33.1.ebuild b/media-tv/mythtv/mythtv-33.1.ebuild
index e847f0e1e1a0..1f945c653588 100644
--- a/media-tv/mythtv/mythtv-33.1.ebuild
+++ b/media-tv/mythtv/mythtv-33.1.ebuild
@@ -3,13 +3,15 @@
EAPI=8
+DISABLE_AUTOFORMATTING="yes"
PYTHON_COMPAT=( python3_{10..11} )
-inherit flag-o-matic java-pkg-opt-2 java-ant-2 python-any-r1 qmake-utils readme.gentoo-r1 systemd user-info
+inherit edo flag-o-matic java-pkg-opt-2 java-ant-2 python-any-r1
+inherit qmake-utils readme.gentoo-r1 systemd toolchain-funcs user-info
DESCRIPTION="Open Source DVR and media center hub"
HOMEPAGE="https://www.mythtv.org https://github.com/MythTV/mythtv"
-if [[ $(ver_cut 3) == "p" ]] ; then
+if [[ ${PV} == *_p* ]] ; then
MY_COMMIT="5824c588db24b4e71a7d94e829e6419f71089297"
SRC_URI="https://github.com/MythTV/mythtv/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
# mythtv and mythplugins are separate builds in the github MythTV project
@@ -19,20 +21,21 @@ else
# mythtv and mythplugins are separate builds in the github mythtv project
S="${WORKDIR}/${P}/mythtv"
fi
-KEYWORDS="~amd64 ~x86"
+
LICENSE="GPL-2+"
SLOT="0"
+KEYWORDS="~amd64 ~x86"
IUSE_INPUT_DEVICES="input_devices_joystick"
IUSE_VIDEO_CAPTURE_DEVICES="v4l ieee1394 hdhomerun vbox ceton"
-IUSE="alsa asi autostart cdda cdr cec cpu_flags_ppc_altivec debug dvd dvb exif fftw jack java
- +lame lcd libass lirc nvdec +opengl oss perl pulseaudio python raw systemd vaapi vdpau vpx
- +wrapper x264 x265 +xml xmltv +xvid +X zeroconf
- ${IUSE_INPUT_DEVICES} ${IUSE_VIDEO_CAPTURE_DEVICES}"
-
+IUSE="alsa asi autostart cdda cdr cec cpu_flags_ppc_altivec debug dvd dvb exif fftw jack java"
+IUSE+=" +lame lcd libass lirc nvdec +opengl oss perl pulseaudio python raw systemd vaapi vdpau vpx"
+IUSE+=" +wrapper x264 x265 +xml xmltv +xvid +X zeroconf"
+IUSE+=" ${IUSE_INPUT_DEVICES} ${IUSE_VIDEO_CAPTURE_DEVICES}"
REQUIRED_USE="
cdr? ( cdda )
"
+
RDEPEND="
acct-user/mythtv
dev-libs/glib:2
@@ -83,7 +86,7 @@ RDEPEND="
lirc? ( app-misc/lirc )
nvdec? ( x11-drivers/nvidia-drivers )
opengl? ( dev-qt/qtopengl:5 )
- pulseaudio? ( media-sound/pulseaudio )
+ pulseaudio? ( media-libs/libpulse )
systemd? ( sys-apps/systemd:= )
vaapi? ( media-libs/libva:= )
vdpau? ( x11-libs/libvdpau )
@@ -111,11 +114,6 @@ RDEPEND="
net-dns/avahi[mdnsresponder-compat]
)
"
-BDEPEND="
- virtual/pkgconfig
- opengl? ( virtual/opengl )
- python? ( ${PYTHON_DEPS} )
-"
DEPEND="
${RDEPEND}
dev-lang/yasm
@@ -129,7 +127,12 @@ DEPEND="
dev-perl/Net-UPnP
dev-perl/XML-Simple
)
+"
+BDEPEND="
+ virtual/pkgconfig
+ opengl? ( virtual/opengl )
python? (
+ ${PYTHON_DEPS}
$(python_gen_any_dep '
dev-python/python-dateutil[${PYTHON_USEDEP}]
dev-python/future[${PYTHON_USEDEP}]
@@ -140,101 +143,54 @@ DEPEND="
')
)
"
-python_check_deps() {
- use python || return 0
- has_version "dev-python/python-dateutil[${PYTHON_USEDEP}]" &&
- has_version "dev-python/future[${PYTHON_USEDEP}]" &&
- has_version "dev-python/lxml[${PYTHON_USEDEP}]" &&
- has_version "dev-python/mysqlclient[${PYTHON_USEDEP}]" &&
- has_version "dev-python/requests-cache[${PYTHON_USEDEP}]" &&
- has_version "dev-python/simplejson[${PYTHON_USEDEP}]"
-}
PATCHES=(
"${FILESDIR}"/${PN}-33.1-libva.patch
)
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Support for metadata lookup changes is added. User configuration required.
-Details at: https://www.mythtv.org/wiki/Metadata_Lookup_Changes_March_2021
-
-Support for Python 2.7 is removed.
-
-If a MYSQL server is installed, a mythtv MySQL user and mythconverg database
-is created if it does not already exist.
-You will be prompted for your MySQL root password.
-
-A mythtv user is maintained by acct-user/mythtv. An existing mythtv user
-may be modified to the configuration defined by acct-user/mythtv.
-The mythtv user's primary group is now mythtv. (formerly video)
-An existing mythtv user may be changed which may alter some functionality.
-If it breaks mythtv you may need to (choose one):
- * Restore the original mythtv user
- * Create custom acct-user/mythtv overlay for your system
- * Fix you system to use mythtv as daemon only (recommended)
-Failure to emerge acct-user/mythtv indicates that the existing mythtv user
-is customized and not changed. Corrective action (choose one):
- * Ignore emerge failure
- * Create custom acct-user/mythtv overlay for your system
- * Fix you system to use mythtv as daemon only
- * Delete existing user and try again (dangerous)
-
-Mythtv is updated to use correct FHS/Gentoo policy paths.
-Updating mythtv installations may report:
- * mythtv is in use, cannot update home
- * There was an error when attempting to update the home directory for mythtv
- * Please update it manually on your system (as root):
- * usermod -d "/var/lib/mythtv" "mythtv"
-This can be ignored. The previous default was "/home/mythtv".
-Use caution if you change the home directory.
-
-To have this machine operate as recording host for MythTV,
-mythbackend must be running. Run the following:
-rc-update add mythbackend default
-
-Your recordings folder must be owned 'mythtv'. e.g.
-chown -R mythtv /var/lib/mythtv
-
-Want mythfrontend to start automatically?
-Set USE=autostart. Details can be found at:
-https://dev.gentoo.org/~cardoe/mythtv/autostart.html
-"
+python_check_deps() {
+ use python || return 0
+ python_has_version "dev-python/python-dateutil[${PYTHON_USEDEP}]" &&
+ python_has_version "dev-python/future[${PYTHON_USEDEP}]" &&
+ python_has_version "dev-python/lxml[${PYTHON_USEDEP}]" &&
+ python_has_version "dev-python/mysqlclient[${PYTHON_USEDEP}]" &&
+ python_has_version "dev-python/requests-cache[${PYTHON_USEDEP}]" &&
+ python_has_version "dev-python/simplejson[${PYTHON_USEDEP}]"
+}
pkg_setup() {
use python && python-any-r1_pkg_setup
- # The acct-user/mythtv package creates/manages the user 'mythtv'
}
src_prepare() {
default
- # Perl bits need to go into vender_perl and not site_perl
+ # Perl bits need to go into vendor_perl and not site_perl
sed -e "s:pure_install:pure_install INSTALLDIRS=vendor:" \
-i "${S}"/bindings/perl/Makefile || die "Cannot convert site_perl to vendor_perl!"
}
src_configure() {
- local -a myconf
+ local -a myconf=()
# Setup paths
- myconf+=(--prefix="${EPREFIX}"/usr)
- myconf+=(--libdir="${EPREFIX}"/usr/$(get_libdir))
- myconf+=(--libdir-name=$(get_libdir))
- myconf+=(--mandir="${EPREFIX}"/usr/share/man)
+ myconf+=( --prefix="${EPREFIX}"/usr )
+ myconf+=( --libdir="${EPREFIX}"/usr/$(get_libdir) )
+ myconf+=( --libdir-name=$(get_libdir) )
+ myconf+=( --mandir="${EPREFIX}"/usr/share/man )
if use debug; then
- myconf+=(--compile-type=debug)
- myconf+=(--disable-stripping) # FIXME: does not disable for all files, only for some
- myconf+=(--enable-valgrind) # disables timeouts for valgrind memory debugging
+ myconf+=( --compile-type=debug )
+ myconf+=( --disable-stripping ) # FIXME: does not disable for all files, only for some
+ myconf+=( --enable-valgrind ) # disables timeouts for valgrind memory debugging
else
- myconf+=(--compile-type=release)
+ myconf+=( --compile-type=release )
fi
# Build boosters
- has ccache "${FEATURES}" || myconf+=(--disable-ccache)
- has distcc "${FEATURES}" || myconf+=(--disable-distcc)
+ has ccache "${FEATURES}" || myconf+=( --disable-ccache )
+ has distcc "${FEATURES}" || myconf+=( --disable-distcc )
# CPU settings
# Mythtv's configure is borrowed from ffmpeg,
@@ -246,10 +202,10 @@ src_configure() {
local i
for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
[[ "${i}" == "native" ]] && i="host" # bug #273421
- myconf+=(--cpu="${i}")
+ myconf+=( --cpu="${i}" )
break
done
- myconf+=($(use_enable cpu_flags_ppc_altivec altivec))
+ myconf+=( $(use_enable cpu_flags_ppc_altivec altivec) )
# Sound Output Support
myconf+=(
@@ -299,18 +255,18 @@ src_configure() {
# Bindings
if use perl && use python; then
- myconf+=(--with-bindings=perl,python)
+ myconf+=( --with-bindings=perl,python )
elif use perl; then
- myconf+=(--without-bindings=python)
- myconf+=(--with-bindings=perl)
+ myconf+=( --without-bindings=python )
+ myconf+=( --with-bindings=perl )
elif use python; then
- myconf+=(--without-bindings=perl)
- myconf+=(--with-bindings=python)
+ myconf+=( --without-bindings=perl )
+ myconf+=( --with-bindings=python )
else
- myconf+=(--without-bindings=perl,python)
+ myconf+=( --without-bindings=perl,python )
fi
- use python && myconf+=(--python="${EPYTHON}")
- myconf+=($(use_enable java bdjava))
+ use python && myconf+=( --python="${EPYTHON}" )
+ myconf+=( $(use_enable java bdjava) )
# External codec library options (used for mythffmpeg and streaming transcode)
# lame is required for some broadcasts for silence detection of commercials
@@ -324,19 +280,18 @@ src_configure() {
)
# Clean up DSO load times and other compiler bits
- myconf+=(--enable-symbol-visibility)
- myconf+=(--enable-pic)
+ myconf+=( --enable-symbol-visibility )
+ myconf+=( --enable-pic )
if tc-is-cross-compiler ; then
- myconf+=(--enable-cross-compile --arch=$(tc-arch-kernel))
- myconf+=(--cross-prefix="${CHOST}"-)
+ myconf+=( --enable-cross-compile --arch=$(tc-arch-kernel) )
+ myconf+=( --cross-prefix="${CHOST}"- )
fi
# econf sets these options that are not handled by configure:
# --build --host --infodir --localstatedir --sysconfdir
- einfo "Running ./configure ${myconf[@]} - THIS MAY TAKE A WHILE."
- ./configure \
+ edo ./configure \
--prefix="${EPREFIX}/usr" \
--cc="$(tc-getCC)" \
--cxx="$(tc-getCXX)" \
@@ -345,8 +300,8 @@ src_configure() {
--extra-cflags="${CFLAGS}" \
--extra-cxxflags="${CXXFLAGS}" \
--extra-ldflags="${LDFLAGS}" \
- --qmake=$(qt5_get_bindir)/qmake \
- "${myconf[@]}" || die "Fail doing ./configure ${myconf[@]}"
+ --qmake="$(qt5_get_bindir)"/qmake \
+ "${myconf[@]}"
}
src_install() {
@@ -364,6 +319,7 @@ src_install() {
systemd_newunit "${FILESDIR}"/mythbackend.service-28 mythbackend.service
fi
+ # The acct-user/mythtv package creates/manages the user 'mythtv'
keepdir /etc/mythtv
fowners -R mythtv /etc/mythtv
keepdir /var/log/mythtv
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/, media-tv/mythtv/files/
@ 2023-09-27 2:40 Sam James
0 siblings, 0 replies; 16+ messages in thread
From: Sam James @ 2023-09-27 2:40 UTC (permalink / raw
To: gentoo-commits
commit: 774b04529956e09713bca5b731837db4963c58ac
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Sep 27 02:38:42 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Sep 27 02:38:42 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=774b0452
media-tv/mythtv: drop 32.0-r4
Closes: https://bugs.gentoo.org/913381
Signed-off-by: Sam James <sam <AT> gentoo.org>
media-tv/mythtv/Manifest | 1 -
media-tv/mythtv/files/mythtv-32.0-gcc13.patch | 40 --
.../mythtv/files/mythtv-32.0-python-version.patch | 25 --
media-tv/mythtv/mythtv-32.0-r4.ebuild | 422 ---------------------
4 files changed, 488 deletions(-)
diff --git a/media-tv/mythtv/Manifest b/media-tv/mythtv/Manifest
index ef07a7599acf..c40a1699bd0b 100644
--- a/media-tv/mythtv/Manifest
+++ b/media-tv/mythtv/Manifest
@@ -1,2 +1 @@
-DIST mythtv-32.0.tar.gz 115960698 BLAKE2B 3be4106fa2c4fcb95fd5414b347fd6256658566bbb9775ed32cb9686e4a61ecf89e7c684db8d3408292c3737ae6090771862aa65ac0d5d467e90c3a110484898 SHA512 6a1472c954b929319a570d76769ababad43d086d53b6679c9d6da91446677f04b71918b326bb4ff0fc16fbaf7d9a447a86f623a6f1399f9ed29ca86a9782396c
DIST mythtv-33.1.tar.gz 116920982 BLAKE2B bc784a12ee0acf3066d46896343ed15a2f7097364595d20e832da3197eb37c8d05342f82171b66ec842ec48b5829b7ace8c6043835b8de4a04afd8a4df72df1d SHA512 4dc2943915e5e3ca047edc0a005a9e0b58edf7bc51c7fb097a6715bbbb52028260065a7f52f35e4ed98559cc4f4ccca76f1cf6ae68e76b1f2d06a1befd4776e9
diff --git a/media-tv/mythtv/files/mythtv-32.0-gcc13.patch b/media-tv/mythtv/files/mythtv-32.0-gcc13.patch
deleted file mode 100644
index 5d60da0c72b1..000000000000
--- a/media-tv/mythtv/files/mythtv-32.0-gcc13.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-https://bugs.gentoo.org/899770
-https://github.com/MythTV/mythtv/commit/3b76df2bb45789f075b6b83d6e6b436aebaf2e83
-
-From 3b76df2bb45789f075b6b83d6e6b436aebaf2e83 Mon Sep 17 00:00:00 2001
-From: David Hampton <mythtv@love2code.net>
-Date: Thu, 19 Jan 2023 14:52:28 -0500
-Subject: [PATCH] Assume existence of stdint.h in exiv2.
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Based on this commit to exiv2.
-
- Author: Luis Díaz Más <piponazo@gmail.com>
- Date: Wed Sep 16 21:40:05 2020 +0200
-
- Assume existence of stdint.h
---- a/external/libexiv2/xmpsdk/include/MD5.h
-+++ b/external/libexiv2/xmpsdk/include/MD5.h
-@@ -25,18 +25,7 @@
-
- #include <sys/types.h>
-
--#ifdef _MSC_VER
--// _MSC_VER 1600 == Visual Studio 2010
--# if _MSC_VER < 1600
--# ifdef EXV_HAVE_STDINT_H
--# undef EXV_HAVE_STDINT_H
--# endif
--# endif
--#endif
--
--#if defined(EXV_HAVE_STDINT_H) || defined(__MINGW32__) || defined(__MING64__) || defined(__APPLE__)
--# include <stdint.h>
--#endif
-+#include <cstdint>
-
- /* MSVC doesn't provide C99 types, but it has MS specific variants */
- #ifdef _MSC_VER
-
diff --git a/media-tv/mythtv/files/mythtv-32.0-python-version.patch b/media-tv/mythtv/files/mythtv-32.0-python-version.patch
deleted file mode 100644
index 8f86cdda3764..000000000000
--- a/media-tv/mythtv/files/mythtv-32.0-python-version.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-https://bugs.gentoo.org/891189
-https://github.com/MythTV/mythtv/issues/711
-https://github.com/MythTV/mythtv/commit/23e158cbd9357e0d31834dff9c45022758671255
-
-From 23e158cbd9357e0d31834dff9c45022758671255 Mon Sep 17 00:00:00 2001
-From: David Hampton <mythtv@love2code.net>
-Date: Sun, 5 Jun 2022 00:43:38 -0400
-Subject: [PATCH] Fix "XX.0.-1 is an invalid version" warning in python
- bindings.
-
-(cherry picked from commit 0f8e58b20a4246d46a77406fcf3c5368fbabaf8b)
-
-Fixes #711.
---- a/bindings/python/setup.cfg
-+++ b/bindings/python/setup.cfg
-@@ -2,7 +2,7 @@
-
- [metadata]
- name = MythTV
--version = 32.0.-1
-+version = 32.0
- description = MythTV Python bindings.
- long_description = Provides canned database and protocol access to the MythTV database, mythproto, mythxml, services_api and frontend remote control.
- url = https://mythtv.org
-
diff --git a/media-tv/mythtv/mythtv-32.0-r4.ebuild b/media-tv/mythtv/mythtv-32.0-r4.ebuild
deleted file mode 100644
index afa16b81dfb6..000000000000
--- a/media-tv/mythtv/mythtv-32.0-r4.ebuild
+++ /dev/null
@@ -1,422 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..11} )
-
-inherit flag-o-matic java-pkg-opt-2 java-ant-2 python-any-r1 qmake-utils readme.gentoo-r1 systemd user-info
-
-DESCRIPTION="Open Source DVR and media center hub"
-HOMEPAGE="https://www.mythtv.org https://github.com/MythTV/mythtv"
-if [[ $(ver_cut 3) == "p" ]] ; then
- MY_COMMIT="5824c588db24b4e71a7d94e829e6419f71089297"
- SRC_URI="https://github.com/MythTV/mythtv/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
- # mythtv and mythplugins are separate builds in the github MythTV project
- S="${WORKDIR}/mythtv-${MY_COMMIT}/mythtv"
-else
- SRC_URI="https://github.com/MythTV/mythtv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- # mythtv and mythplugins are separate builds in the github mythtv project
- S="${WORKDIR}/${P}/mythtv"
-fi
-KEYWORDS="~amd64 ~x86"
-LICENSE="GPL-2+"
-SLOT="0"
-
-IUSE_INPUT_DEVICES="input_devices_joystick"
-IUSE_VIDEO_CAPTURE_DEVICES="v4l ieee1394 hdhomerun vbox ceton"
-IUSE="alsa asi autostart cdda cdr cec cpu_flags_ppc_altivec debug dvd dvb exif fftw jack java
- +lame lcd libass lirc nvdec +opengl oss perl pulseaudio python raw systemd vaapi vdpau vpx
- +wrapper x264 x265 +xml xmltv +xvid +X zeroconf
- ${IUSE_INPUT_DEVICES} ${IUSE_VIDEO_CAPTURE_DEVICES}"
-
-REQUIRED_USE="
- cdr? ( cdda )
-"
-RDEPEND="
- acct-user/mythtv
- dev-libs/glib:2
- dev-libs/lzo
- dev-libs/libzip:=
- dev-qt/qtcore:5
- dev-qt/qtdbus:5
- dev-qt/qtgui:5[jpeg]
- dev-qt/qtnetwork:5
- dev-qt/qtscript:5
- dev-qt/qtsql:5[mysql]
- dev-qt/qtwidgets:5
- dev-qt/qtxml:5
- media-fonts/corefonts
- media-fonts/dejavu
- media-fonts/liberation-fonts
- media-fonts/tex-gyre
- media-gfx/exiv2:=
- media-libs/freetype:2
- media-libs/libbluray:=[java?]
- media-libs/libsamplerate
- media-libs/libsoundtouch
- media-libs/taglib
- sys-libs/zlib
- alsa? ( media-libs/alsa-lib )
- autostart? (
- net-dialup/mingetty
- x11-apps/xset
- x11-wm/evilwm
- )
- cec? ( dev-libs/libcec )
- dvd? (
- dev-libs/libcdio:=
- media-libs/libdvdcss
- sys-fs/udisks:2
- )
- fftw? ( sci-libs/fftw:3.0=[threads] )
- hdhomerun? ( media-libs/libhdhomerun )
- ieee1394? (
- media-libs/libiec61883
- sys-libs/libavc1394
- sys-libs/libraw1394
- )
- jack? ( virtual/jack )
- lame? ( media-sound/lame )
- lcd? ( app-misc/lcdproc )
- libass? ( media-libs/libass:= )
- lirc? ( app-misc/lirc )
- nvdec? ( x11-drivers/nvidia-drivers )
- opengl? ( dev-qt/qtopengl:5 )
- pulseaudio? ( media-sound/pulseaudio )
- systemd? ( sys-apps/systemd:= )
- vaapi? ( media-libs/libva:= )
- vdpau? ( x11-libs/libvdpau )
- vpx? ( media-libs/libvpx:= )
- x264? ( media-libs/x264:= )
- X? (
- x11-apps/xinit
- x11-libs/libX11:=
- x11-libs/libXext:=
- x11-libs/libXinerama:=
- x11-libs/libXrandr:=
- x11-libs/libXv:=
- x11-libs/libXxf86vm:=
- x11-misc/wmctrl:=
- )
- x265? ( media-libs/x265 )
- xml? ( dev-libs/libxml2:2 )
- xmltv? (
- dev-perl/XML-LibXML
- media-tv/xmltv
- )
- xvid? ( media-libs/xvid )
- zeroconf? (
- dev-libs/openssl:=
- net-dns/avahi[mdnsresponder-compat]
- )
-"
-BDEPEND="
- virtual/pkgconfig
- opengl? ( virtual/opengl )
- python? ( ${PYTHON_DEPS} )
-"
-DEPEND="
- ${RDEPEND}
- dev-lang/yasm
- x11-base/xorg-proto
- perl? (
- dev-perl/DBD-mysql
- dev-perl/DBI
- dev-perl/HTTP-Message
- dev-perl/IO-Socket-INET6
- dev-perl/LWP-Protocol-https
- dev-perl/Net-UPnP
- dev-perl/XML-Simple
- )
- python? (
- $(python_gen_any_dep '
- dev-python/python-dateutil[${PYTHON_USEDEP}]
- dev-python/future[${PYTHON_USEDEP}]
- dev-python/lxml[${PYTHON_USEDEP}]
- dev-python/mysqlclient[${PYTHON_USEDEP}]
- dev-python/requests-cache[${PYTHON_USEDEP}]
- dev-python/simplejson[${PYTHON_USEDEP}]
- ')
- )
-"
-python_check_deps() {
- use python || return 0
- has_version "dev-python/python-dateutil[${PYTHON_USEDEP}]" &&
- has_version "dev-python/future[${PYTHON_USEDEP}]" &&
- has_version "dev-python/lxml[${PYTHON_USEDEP}]" &&
- has_version "dev-python/mysqlclient[${PYTHON_USEDEP}]" &&
- has_version "dev-python/requests-cache[${PYTHON_USEDEP}]" &&
- has_version "dev-python/simplejson[${PYTHON_USEDEP}]"
-}
-
-PATCHES=(
- "${FILESDIR}"/${PN}-32.0-python-version.patch
- "${FILESDIR}"/${PN}-32.0-gcc13.patch
-)
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Support for metadata lookup changes is added. User configuration required.
-Details at: https://www.mythtv.org/wiki/Metadata_Lookup_Changes_March_2021
-
-Support for Python 2.7 is removed.
-
-If a MYSQL server is installed, a mythtv MySQL user and mythconverg database
-is created if it does not already exist.
-You will be prompted for your MySQL root password.
-
-A mythtv user is maintained by acct-user/mythtv. An existing mythtv user
-may be modified to the configuration defined by acct-user/mythtv.
-The mythtv user's primary group is now mythtv. (formerly video)
-An existing mythtv user may be changed which may alter some functionality.
-If it breaks mythtv you may need to (choose one):
- * Restore the original mythtv user
- * Create custom acct-user/mythtv overlay for your system
- * Fix you system to use mythtv as daemon only (recommended)
-Failure to emerge acct-user/mythtv indicates that the existing mythtv user
-is customized and not changed. Corrective action (choose one):
- * Ignore emerge failure
- * Create custom acct-user/mythtv overlay for your system
- * Fix you system to use mythtv as daemon only
- * Delete existing user and try again (dangerous)
-
-Mythtv is updated to use correct FHS/Gentoo policy paths.
-Updating mythtv installations may report:
- * mythtv is in use, cannot update home
- * There was an error when attempting to update the home directory for mythtv
- * Please update it manually on your system (as root):
- * usermod -d "/var/lib/mythtv" "mythtv"
-This can be ignored. The previous default was "/home/mythtv".
-Use caution if you change the home directory.
-
-To have this machine operate as recording host for MythTV,
-mythbackend must be running. Run the following:
-rc-update add mythbackend default
-
-Your recordings folder must be owned 'mythtv'. e.g.
-chown -R mythtv /var/lib/mythtv
-
-Want mythfrontend to start automatically?
-Set USE=autostart. Details can be found at:
-https://dev.gentoo.org/~cardoe/mythtv/autostart.html
-"
-
-pkg_setup() {
- use python && python-any-r1_pkg_setup
- # The acct-user/mythtv package creates/manages the user 'mythtv'
-}
-
-src_prepare() {
- default
-
- # Perl bits need to go into vender_perl and not site_perl
- sed -e "s:pure_install:pure_install INSTALLDIRS=vendor:" \
- -i "${S}"/bindings/perl/Makefile || die "Cannot convert site_perl to vendor_perl!"
-
-}
-
-src_configure() {
- local -a myconf
-
- # Setup paths
- myconf+=(--prefix="${EPREFIX}"/usr)
- myconf+=(--libdir="${EPREFIX}"/usr/$(get_libdir))
- myconf+=(--libdir-name=$(get_libdir))
- myconf+=(--mandir="${EPREFIX}"/usr/share/man)
-
- if use debug; then
- myconf+=(--compile-type=debug)
- myconf+=(--disable-stripping) # FIXME: does not disable for all files, only for some
- myconf+=(--enable-valgrind) # disables timeouts for valgrind memory debugging
- else
- myconf+=(--compile-type=release)
- fi
-
- # Build boosters
- has ccache "${FEATURES}" || myconf+=(--disable-ccache)
- has distcc "${FEATURES}" || myconf+=(--disable-distcc)
-
- # CPU settings
- # Mythtv's configure is borrowed from ffmpeg,
- # Bug #172723
- # Try to get cpu type based on CFLAGS.
- # We need to do this so that features of that CPU will be better used
- # If they contain an unknown CPU it will not hurt since ffmpeg's configure
- # will just ignore it.
- local i
- for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
- [[ "${i}" == "native" ]] && i="host" # bug #273421
- myconf+=(--cpu="${i}")
- break
- done
- myconf+=($(use_enable cpu_flags_ppc_altivec altivec))
-
- # Sound Output Support
- myconf+=(
- $(use_enable oss audio-oss)
-
- $(use_enable alsa audio-alsa)
- $(use_enable jack audio-jack)
- $(use_enable pulseaudio audio-pulseoutput)
- )
-
- # Input Support
- myconf+=(
- $(use_enable lirc)
- $(use_enable input_devices_joystick joystick-menu)
- $(use_enable cec libcec)
- $(use_enable ieee1394 firewire)
- $(use_enable hdhomerun)
- $(use_enable vbox)
- $(use_enable ceton)
- $(use_enable v4l v4l2)
- $(use_enable dvb)
- $(use_enable asi)
- )
-
- # Video Output Support
- myconf+=(
- $(use_enable X x11)
- )
-
- # Hardware accelerators
- myconf+=(
- $(use_enable nvdec)
- $(use_enable vaapi)
- $(use_enable vdpau)
- $(use_enable opengl)
- $(use_enable opengl egl)
- $(use_enable libass)
- )
-
- # System tools
- myconf+=(
- $(use_enable systemd systemd_notify)
- $(use_enable systemd systemd_journal)
- $(use_enable xml libxml2)
- $(use_enable zeroconf libdns-sd)
- )
-
- # Bindings
- if use perl && use python; then
- myconf+=(--with-bindings=perl,python)
- elif use perl; then
- myconf+=(--without-bindings=python)
- myconf+=(--with-bindings=perl)
- elif use python; then
- myconf+=(--without-bindings=perl)
- myconf+=(--with-bindings=python)
- else
- myconf+=(--without-bindings=perl,python)
- fi
- use python && myconf+=(--python="${EPYTHON}")
- myconf+=($(use_enable java bdjava))
-
- # External codec library options (used for mythffmpeg and streaming transcode)
- # lame is required for some broadcasts for silence detection of commercials
- # default enable in IUSE with +lame
- myconf+=(
- $(use_enable lame libmp3lame)
- $(use_enable xvid libxvid)
- $(use_enable x264 libx264)
- $(use_enable x265 libx265)
- $(use_enable vpx libvpx)
- )
-
- # Clean up DSO load times and other compiler bits
- myconf+=(--enable-symbol-visibility)
- myconf+=(--enable-pic)
-
- if tc-is-cross-compiler ; then
- myconf+=(--enable-cross-compile --arch=$(tc-arch-kernel))
- myconf+=(--cross-prefix="${CHOST}"-)
- fi
-
- # econf sets these options that are not handled by configure:
- # --build --host --infodir --localstatedir --sysconfdir
-
- einfo "Running ./configure ${myconf[@]} - THIS MAY TAKE A WHILE."
- ./configure \
- --prefix="${EPREFIX}/usr" \
- --cc="$(tc-getCC)" \
- --cxx="$(tc-getCXX)" \
- --ar="$(tc-getAR)" \
- --optflags="${CFLAGS}" \
- --extra-cflags="${CFLAGS}" \
- --extra-cxxflags="${CXXFLAGS}" \
- --extra-ldflags="${LDFLAGS}" \
- --qmake=$(qt5_get_bindir)/qmake \
- "${myconf[@]}" || die "Fail doing ./configure ${myconf[@]}"
-}
-
-src_install() {
- emake STRIP="true" INSTALL_ROOT="${D}" install
- use python && python_optimize # does all packages by default
- dodoc AUTHORS README
- readme.gentoo_create_doc
-
- insinto /usr/share/mythtv/database
- doins database/*
-
- newinitd "${FILESDIR}"/mythbackend.init-r3 mythbackend
- newconfd "${FILESDIR}"/mythbackend.conf-r1 mythbackend
- if use systemd; then
- systemd_newunit "${FILESDIR}"/mythbackend.service-28 mythbackend.service
- fi
-
- keepdir /etc/mythtv
- fowners -R mythtv /etc/mythtv
- keepdir /var/log/mythtv
- fowners -R mythtv /var/log/mythtv
-
- insinto /etc/logrotate.d
- newins "${FILESDIR}"/mythtv.logrotate.d-r4 mythtv
-
- insinto /usr/share/mythtv/contrib
- # Ensure we don't install scripts needing the perl bindings (bug #516968) Finding none is OK.
- if ! use perl; then
- find contrib/ -name '*.pl' -exec rm {} \;
- fi
- # Ensure we don't install scripts needing the python bindings (bug #516968) Finding none is OK.
- if ! use python; then
- find contrib/ -name '*.py' -exec rm {} \;
- fi
- doins -r contrib/*
-
- # Install our mythfrontend wrapper which is similar to Mythbuntu's
- if use wrapper; then
- mv "${ED}/usr/bin/mythfrontend" "${ED}/usr/bin/mythfrontend.real" || die "Failed to install mythfrontend.real"
- newbin "${FILESDIR}"/mythfrontend.wrapper mythfrontend
- newconfd "${FILESDIR}"/mythfrontend.conf mythfrontend
- fi
-
- if use autostart; then
- newenvd - 95mythtv <<- _EOF_
- CONFIG_PROTECT=\"$(egethome mythtv)\"
- _EOF_
- insinto $(egethome mythtv)
- newins "${FILESDIR}"/bash_profile .bash_profile
- newins "${FILESDIR}"/xinitrc-r1 .xinitrc
- fi
-
- # Make Python files executable but not files named "__init__.py"
- find "${ED}/usr/share/mythtv" -type f -name '*.py' -exec expr \( {} : '.*__init__.py' \) = 0 \; \
- -exec chmod a+x {} \; || die "Failed to make python file $(basename ${file}) executable"
-
- # Ensure that Python scripts are executed by Python 2
- use python && python_fix_shebang "${ED}/usr/share/mythtv"
-
- # Make shell & perl scripts executable
- find "${ED}" -type f \( -name '*.sh' -o -name '*.pl' \) -exec chmod a+x {} \; || die "Failed to make script executable"
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
-}
-
-pkg_config() {
- if [[ -e "${EROOT}"/usr/bin/mysql ]]; then
- "${EROOT}"/usr/bin/mysql -u root -p < "${EROOT}"/usr/share/mythtv/database/mc.sql
- fi
-}
^ permalink raw reply related [flat|nested] 16+ messages in thread
end of thread, other threads:[~2023-09-27 2:40 UTC | newest]
Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-06-15 0:12 [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/, media-tv/mythtv/files/ Sam James
-- strict thread matches above, loose matches on Subject: below --
2023-09-27 2:40 Sam James
2023-06-15 0:12 Sam James
2023-05-01 12:41 Michał Górny
2023-04-18 7:48 Sam James
2022-11-15 18:17 Michał Górny
2020-12-12 0:01 Andreas Sturmlechner
2020-07-25 15:51 Andreas Sturmlechner
2020-06-11 8:03 Joonas Niilola
2020-04-03 16:55 Andreas Sturmlechner
2018-11-11 13:07 Pacho Ramos
2018-08-09 13:45 Lars Wendler
2018-06-25 14:44 Lars Wendler
2017-12-31 20:33 Pacho Ramos
2017-08-11 15:14 Andreas Sturmlechner
2015-09-08 18:58 Doug Goldstein
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox