Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 586448 - media-tv/tvheadend-4.1 version bump
Summary: media-tv/tvheadend-4.1 version bump
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal enhancement with 1 vote (vote)
Assignee: Sam Jorna (wraeth)
URL: https://github.com/tvheadend/tvheaden...
Whiteboard:
Keywords:
: 615924 (view as bug list)
Depends on:
Blocks: 595032
  Show dependency tree
 
Reported: 2016-06-20 07:16 UTC by Miroslav Šulc
Modified: 2017-12-05 15:37 UTC (History)
9 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
ebuild (tvheadend-4.2.1.ebuild,3.39 KB, text/plain)
2017-04-22 20:41 UTC, Martin Bednar
Details
hdhomerun header file patch (tvheadend-4.2.1-configure.patch,945 bytes, patch)
2017-04-22 20:42 UTC, Martin Bednar
Details | Diff
metadata.xml (metadata.xml,716 bytes, text/xml)
2017-04-22 20:43 UTC, Martin Bednar
Details
4.2.1-r1 download and eapi6 tweaks (tvheadend-4.2.1-r1.patch,639 bytes, patch)
2017-04-23 15:07 UTC, optiz0r
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Miroslav Šulc gentoo-dev 2016-06-20 07:16:08 UTC
please bump, version 4.1 is available
Comment 1 Martin Bednar 2017-04-22 20:41:16 UTC
Created attachment 470688 [details]
ebuild

tvheadend-4.2.1 is out, I modified the existing -9999 ebuild.
Comment 2 Martin Bednar 2017-04-22 20:42:16 UTC
Created attachment 470690 [details, diff]
hdhomerun header file patch
Comment 3 Martin Bednar 2017-04-22 20:43:20 UTC
Created attachment 470692 [details]
metadata.xml

Describe tvheadend specific useflags
Comment 4 optiz0r 2017-04-23 09:57:29 UTC
Hi Martin, thanks for this since I was just about to have a go at writing one myself, excellent timing.

The ebuild refers to what would interpolate to "tvheadend-4.2.1-configure.patch", but this isn't present in the portage tree or in the bug attachments. Did you mean for this to be the hdhomerun header file patch (in which case it's not very clearly named), or another file you've not yet attached?
Comment 5 Martin Bednar 2017-04-23 10:00:29 UTC
Comment on attachment 470692 [details]
metadata.xml

metadata.xml already present in tree...
Comment 6 Martin Bednar 2017-04-23 10:02:01 UTC
That's my bugzilla fail...
" hdhomerun header file patch " : save it in $PROTAGE_TREE/media-tv/tvheadend/files/tvheadend-4.2.1-configure.patch
Comment 7 optiz0r 2017-04-23 15:07:33 UTC
Created attachment 470728 [details, diff]
4.2.1-r1 download and eapi6 tweaks

I made a couple of minor tweaks to the ebuild, see attached diff.

Firstly, since it's EAPI6, epatch_user needs to be replaced with eapply_user; build doesn't work without this.
Secondly, I renamed the download from v4.2.1.tar.gz to tvheadend-4.2.1.tar.gz to avoid potential filename clash in distfiles.

I can test this as far as running configure, unfortunately I then found out this relies on newer versions of av* libraries than I have available. I'm on a binary downstream that ships libav 11.8 which is too old. A quick look at libav 12 release notes I don't think that's new enough either (this needs an equivalent of ffmpeg 3.0.7, e.g. libavfilter 6.31).

Until my disto switches back from libav to ffmpeg, or a newer version of libav is released, I'll have to stick on 4.0.9, or look at running this in docker against a debian-esque base.
Comment 8 Martin Bednar 2017-04-23 21:17:10 UTC
Thanks!
I forked the tree to work on the ebuild:
https://github.com/Serafean/gentoo/commit/fdc62a9aa8b41a26c90345edcf4933c7a94a96ec

Changes from attached: 
-Changed use flag defaults
-Fixed DEPENDS/RDEPENDS (The original ebuild had it right...)
- removed all the codec specific stuff (it gets implicitly ignored when static ffmpeg is disabled )

compiles fine here, with ffmpeg enabled.

To be feature complete, libdvbcsa would need to be in the main tree...
http://gpo.zugaina.org/media-libs/libdvbcsa
Currently the tvhcsa implementation is the only CSA implementation available
Comment 9 Martin Bednar 2017-07-19 10:43:43 UTC
Any chance of getting this into the tree? Or anything I could do to help attain that goal?
Comment 10 Pacho Ramos gentoo-dev 2017-07-26 10:16:42 UTC
*** Bug 615924 has been marked as a duplicate of this bug. ***
Comment 11 Sam Jorna (wraeth) gentoo-dev 2017-07-28 09:09:39 UTC
(In reply to Martin Bednar from comment #9)
> Any chance of getting this into the tree? Or anything I could do to help
> attain that goal?

Thanks (to everyone) for all the work that has been done on this so far. I've been build-testing this and have come across a few issues - notably that the dependency on avahi requires USE=dbus; and am trying to sort out a few other build failures (the most common of which is around USE=libav).

If you don't mind continuing to help with this, could you try building with libav as well and see if it's successful or not?

Beyond that, if you're interested in helping out with this package more, I would invite you to become a proxied maintainer for it through the Proxy Maintainers project - just let me know.
Comment 12 Martin Bednar 2017-07-28 10:12:58 UTC
I'll create a testing VM over the weekend. As a user of tvheadend, I'd be interested in helping maintain it.
Comment 13 James Le Cuirot gentoo-dev 2017-11-18 23:25:15 UTC
Any news here? I'm about to start playing with tvheadend and may become a heavy user in the not too distant future. I've got 4.0.9 running on my arm box but haven't tried 4.2 yet. Thought I'd check in before doing any work on it.
Comment 14 James Le Cuirot gentoo-dev 2017-11-25 17:15:13 UTC
With no reply, I've been doing some work on this myself.

Does anyone know what the "bundle" configure option does? It's something to do with file bundles but I can't find much information about it.

I've tried building against libav but it says that even 12.2, which is the latest, is too old. This is strange because the name of the configure option has actually changed from ffmpeg to libav so you'd think they would prefer libav.

  checking for pkg libavfilter >=6.31.100 ...       fail (detected 6.7.0)
  checking for pkg libswresample >=2.0.101 ...      fail (detected <none>)
  checking for pkg libavresample >=3.0.0 ...        ok (detected 3.0.0)
  checking for pkg libswscale >=4.0.100 ...         fail (detected 4.0.0)
  checking for pkg libavformat >=57.25.100 ...      fail (detected 57.7.2)
  checking for pkg libavcodec >=57.24.102 ...       ok (detected 57.25.0)
  checking for pkg libavutil >=55.17.103 ...        ok (detected 55.20.0)
Comment 15 James Le Cuirot gentoo-dev 2017-11-25 20:28:43 UTC
(In reply to James Le Cuirot from comment #14)
> I've tried building against libav but it says that even 12.2, which is the
> latest, is too old. This is strange because the name of the configure option
> has actually changed from ffmpeg to libav so you'd think they would prefer
> libav.
Sorry, ignore that last comment, the option has always been called libav!
Comment 16 James Le Cuirot gentoo-dev 2017-11-26 15:29:01 UTC
I tried disabling the version checks and compiling against libav anyway. After removing libswresample from the Makefile, it almost worked but there are a couple of missing symbols. At the end of the day, I'm not really interested in libav so I'm going to drop that effort.

The contributed 4.2.1 ebuild drops the dtv-scan-tables download in favour of fetching them with git. This won't fly, I'm afraid. You are allowed to do network access in src_unpack for live ebuilds but currently this happens in src_configure and this isn't really a live ebuild either. I need to take a closer look but it seems like the downloads on linuxtv.org are in an older format. https://github.com/tvheadend/dtv-scan-tables doesn't do releases so maybe we could make a separate live package for those. Ideally it would have KEYWORDS applied though, which isn't standard practise for a live package.
Comment 17 James Le Cuirot gentoo-dev 2017-11-26 23:06:10 UTC
(In reply to James Le Cuirot from comment #16)
> The contributed 4.2.1 ebuild drops the dtv-scan-tables download in favour of
> fetching them with git. This won't fly, I'm afraid. You are allowed to do
> network access in src_unpack for live ebuilds but currently this happens in
> src_configure and this isn't really a live ebuild either. I need to take a
> closer look but it seems like the downloads on linuxtv.org are in an older
> format. https://github.com/tvheadend/dtv-scan-tables doesn't do releases so
> maybe we could make a separate live package for those. Ideally it would have
> KEYWORDS applied though, which isn't standard practise for a live package.
Turns out linuxtv.org's downloads are in the new format. They are actually just checkouts of the upstream repository cloned by the tvheadend guys. I couldn't find any reason why they forked it and I can only guess they thought they'd do a better job of maintaining it. That doesn't seem to be the case right now. RPM Fusion (unofficial Fedora repo) have their tvheadend package depending on a dtv-scan-tables package. I have therefore added such a package to our tree. We already had bug #503028 for this.
Comment 18 James Le Cuirot gentoo-dev 2017-12-03 23:17:59 UTC
Very close to pushing 4.2.4 now, including further updates to 9999, but I can't quite figure out how to get it working with xmltv. Nothing about xmltv is appearing in the GUI at all. I would push it anyway but I want to know whether I need to change the user home from /dev/null to /var/lib/tvheadend.
Comment 19 Larry the Git Cow gentoo-dev 2017-12-04 22:20:16 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f3544384630a818ea97571db41ee93919ad9c719

commit f3544384630a818ea97571db41ee93919ad9c719
Author:     James Le Cuirot <chewi@gentoo.org>
AuthorDate: 2017-12-04 22:11:05 +0000
Commit:     James Le Cuirot <chewi@gentoo.org>
CommitDate: 2017-12-04 22:20:07 +0000

    media-tv/tvheadend: Version bump to 4.2.4 and 9999 update
    
    * Add support for dvbcsa via USE flag
    * Add support for dvben50221 via USE flag
    * Drop support for libav (fails version checks, missing symbols)
    * Source DTV scan tables from new media-tv/dtv-scan-tables package
    * Set tvheadend user HOME to /etc/tvheadend to allow for XMLTV data
    * Tighten up the systemd service unit
    * Add debug USE flag for trace support
    * Fix inotify kernel config check
    * Add ffmpeg sub-dependencies and associated USE flags (9999 only)
    
    Closes: https://bugs.gentoo.org/579048
    Closes: https://bugs.gentoo.org/579986
    Closes: https://bugs.gentoo.org/586448
    Closes: https://bugs.gentoo.org/588210
    Closes: https://bugs.gentoo.org/626238
    Package-Manager: Portage-2.3.16, Repoman-2.3.6

 media-tv/tvheadend/Manifest                        |   5 +-
 .../files/tvheadend-4.0.9-use_system_queue.patch   |  12 +++
 .../files/tvheadend-4.2.1-hdhomerun.patch          |  24 +++++
 .../files/tvheadend-4.2.2-dtv_scan_tables.patch    |  12 +++
 media-tv/tvheadend/files/tvheadend.service         |  15 ++-
 media-tv/tvheadend/metadata.xml                    |  12 ++-
 media-tv/tvheadend/tvheadend-4.2.4.ebuild          | 117 +++++++++++++++++++++
 media-tv/tvheadend/tvheadend-9999.ebuild           |  90 +++++++++++-----
 8 files changed, 253 insertions(+), 34 deletions(-)
Comment 20 Daniel Kenzelmann 2017-12-05 15:37:52 UTC
Thanks for the ebuild!

one thing still missing is libressl support.
I opened Bug 639940 for this issue. A simple change in the ebuild is sufficient to properly support libressl.