On 2012-06-03 00:31, Adam Charrett wrote:
>
>
> I did write a v small plugin a while ago to display a 'Downloaded TV' option
> in the TV menu which was a just another way to browse a different directory
> contain downloaded TV content.
Found the tv.plugins.view_recordings plugin. Thanks!
> > > freevo1-git now uses kaa-epg and to access the guide you need to be
> > > running the recordserver.
> > Hmm, now I see that it doesn't start ok;
> >
> > # /usr/bin/freevo --daemon recordserver
> > tv ~ #
> > Warning: freevo_config.py was changed, please check local_conf.py
> >
> >
> > Traceback (most recent call last):
> >File
> > "/usr/lib64/python2.6/site-packages/freevo/helpers/recordserver.py",
> > line 58, in
> > import tv.record_types
> >File "/usr/lib64/python2.6/site-packages/freevo/tv/record_types.py",
> > line 41, in
> > import util.tv_util as tv_util
> >File "/usr/lib64/python2.6/site-packages/freevo/util/tv_util.py",
> > line 35, in
> > import tv.epg
> >File "/usr/lib64/python2.6/site-packages/freevo/tv/epg.py", line 14,
> > in
> > kaa.epg.listen(('', 1), config.RECORDSERVER_SECRET)
> >File "/usr/lib64/python2.6/site-packages/kaa/epg/__init__.py", line
> > 73, in listen
> > server.append(Server(guide, address, secret))
> >File "/usr/lib64/python2.6/site-packages/kaa/epg/rpc.py", line 210,
> > in __init__
> > self._rpc = kaa.rpc.Server(address, secret)
> >File "/usr/lib64/python2.6/site-packages/kaa/base/rpc.py", line 178,
> > in __init__
> > self._socket.listen(address)
> >File "/usr/lib64/python2.6/site-packages/kaa/base/sockets.py", line
> > 532, in listen
> > sock, addr = self._make_socket(addr, overwrite=True)
> >File "/usr/lib64/python2.6/site-packages/kaa/base/sockets.py", line
> > 433, in _make_socket
> > sock = socket.socket(socket.AF_INET6, socket.SOCK_STREAM)
> >File "/usr/lib64/python2.6/socket.py", line 184, in __init__
> > _sock = _realsocket(family, type, proto)
> > TypeError: an integer is required
> >
> Looks like a kaa.base error, I think this may have been resolved
> recently.
Not fixed in git as of today. A quick glance at the code suggests that
this chunk of code assumes IPv6 somehow. I have a ipv4 only system
(kernel w/ CONFIG_IPV6 not set). Do I _have_ to enable v6 to get this to
work? (Being a c guy, I know there are version independent c socket
interfaces. I would assume the same holds for python. How come version
specific coding here?)
> >
> > > To load in the listings use
> > >
> > > freevo tv_grab -- -u
> > Hmmm. My git copy doesn't have an -u option
> > # freevo tv_grab -- --help
>
> Doh, hadn't pulled in the changes from my branch, there should be on the main
> branch now.
got -u supported in the git refresh. I accidentally ran the command as
the wrong user and got:
Traceback (most recent call last):
File "/usr/lib64/python2.6/site-packages/freevo/helpers/tv_grab.py",
line 96, in
tv.epg.update(config.XMLTV_FILE)
File "/usr/lib64/python2.6/site-packages/freevo/tv/epg.py", line 131,
in update
kaa.epg.update().wait()
File "/usr/lib64/python2.6/site-packages/kaa/epg/__init__.py", line
120, in __call__
return guide.update(backend, *args, **kwargs)
File "/usr/lib64/python2.6/site-packages/kaa/base/coroutine.py", line
219, in newfunc
ip.result
File "/usr/lib64/python2.6/site-packages/kaa/base/async.py", line
285, in result
raise self._exception[1]
kaa.base.errors.AsyncException: Exception raised asynchronously;
traceback follows:
File "/usr/lib64/python2.6/site-packages/kaa/base/coroutine.py", line
374, in _step
result = self._step_generator()
File "/usr/lib64/python2.6/site-packages/kaa/base/coroutine.py", line
615, in _step_generator
return self._coroutine.next()
File "/usr/lib64/python2.6/site-packages/kaa/epg/sources/update.py",
line 99, in update
self._db.vacuum()
File "/usr/lib64/python2.6/site-packages/kaa/base/db.py", line 2509,
in vacuum
self._db_query('DELETE FROM ivtidx_%s_terms WHERE count=0' % ivtidx)
File "/usr/lib64/python2.6/site-packages/kaa/base/db.py", line 651,
in _db_query
cursor.execute(statement, args)
OperationalError: attempt to write a readonly database
Maybe that should not throw a stack trace, but rather just return with a
oneliner
informative error message? But maybe current behaviour is desired by the
devs? (I always
assumed that stacktraces are either an explicitly enabled debug feature,
or a sign
of uncaught exceptions (i.e. sloppy coding)).
Now, how to get the recordserver to start without V6 support...
Rgds,
/Anders
--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussi