Closed Karl33to closed 1 year ago
You are installing the Alpine APK package, which isn't maintained by the XMLTV project, i.e. this is the wrong place to report the problem. I would suggest to file a problem report here.
The build log already indicates part of the problem: dependent Perl packages are missing:
Module JSON seems not to be installed.
Module LWP::Protocol::https seems not to be installed.
Required modules missing, 'make' is unlikely to work
Warning: prerequisite JSON 0 not found.
Warning: prerequisite LWP::Protocol::https 0 not found.
JSON is required.
LWP::Protocol::https is required.
I'm pretty sure that more Perl packages are missing, e.g. HTML::Entities
, HTML::TreeBuilder
, ...
Closing as INVALID
Looks like Alpine doesn't package HTML::Tree
, which means most of the grabbers can't be built, because they rely on HTML::TreeBuilder
to parse the scraped HTML to a DOM tree.
This would be a starting point to improve the Alpine package:
Packages to add:
perl-datetime perl-lwp-protocol-https perl-html-parser perl-json perl-json-xs
Build dependencies to add:
perl-app-cpanminus perl-module-build perl-test-fatal
Build step to add before the actual xmltv build (builds missing Perl packages from CPAN):
cpanm HTML::Tree IO::Scalar
With these changes in place I get:
# tv_find_grabbers
/usr/bin/tv_grab_na_tvmedia|North America (XMLTVListings.com by TVMedia)
/usr/bin/tv_grab_fi_sv|Finland (Swedish)
/usr/bin/tv_grab_combiner|Combine data from several other grabbers
/usr/bin/tv_grab_zz_sdjson|Schedules Direct JSON API
/usr/bin/tv_grab_huro|Hungary/Romania
/usr/bin/tv_grab_ch_search|Switzerland (tv.search.ch)
/usr/bin/tv_grab_fi|Osa 9/10. Asiaohjelma, mikä ...
/usr/bin/tv_grab_na_dtv|North America using www.directv.com
/usr/bin/tv_grab_ar|Argentina
/usr/bin/tv_grab_pt_meo|Portugal
/usr/bin/tv_grab_it|Italy
You get the gist...
I added Alpine Linux 3.17 to the build flows. It currently builds 18 grabbers.
I left out deliberately the grabbers that depend on DVB, CGI or Tk as they don't really make sense in a containerized setup.
Maybe if I have time I'll figure out why SOAP::Lite fails to build, then at least one more grabber would be enabled.
Hi, Linux newb here, I am trying to setup XMLTV in a Docker Nginx:Alpine container. It seems to install correctly but it doest include all the grabbers - I have tried the same steps on an Ubuntu Desktop VM and can see a full list of grabbers.
XMLTV Version?
1.12-r0
Perl Version
5.36.0-r0
Operating System
Nginx:Alpine
What happened?
On calling tv_find_grabbers only 3 grabbers were found... /usr/bin/tv_grab_it|Italy /usr/bin/tv_grab_na_tvmedia|North America (XMLTVListings.com by TVMedia) /usr/bin/tv_grab_combiner|Combine data from several other grabbers
What did you expect to happen?
Many more tv grabbers to be included, specifically tv_grab_uk_tvguide
Did you see any warnings/errors?
There was one warning on calling "apk add xmltv"
(34/45) Installing perl-xml-sax (1.02-r1) Executing perl-xml-sax-1.02-r1.post-install could not find ParserDetails.ini in /usr/share/perl5/vendor_perl/XML/SAX
What steps are needed to reproduce this issue?
(Please provide the full commands you are running)
Please attach your config file below:
dockerfile.txt
Any other information?
I noticed on the Alpine package manager page that only 3 grabbers were listed in the files https://pkgs.alpinelinux.org/contents?branch=edge&name=xmltv&arch=riscv64&repo=community