/usr/share/pyshared/Eikazo/Plugins.py is in eikazo 0.5.2-8.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | """
Copyright (c) Abel Deuring 2006 <adeuring@gmx.net>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
collects information about installed plugins
"""
pluginlist = []
class Plugin:
""" Each plugin should instatiate this class once
"""
def __init__(self, name, details, type_, error):
""" name: the name of the plugin
details: possible details about the plugin. May be empty.
type_: name of the "plugin class". At present defined:
'device', 'postprocessing', 'output', 'other'
error: None, if the plugin works; or a string with an error
decription, if the plugin is broken, for example,
because a Python library is missing
"""
pluginlist.append(self)
self.name = name
self.details = details
self.type = type_
self.error = error
def __str__(self):
""" return name and type of the plugin; add the error if not None
"""
res = 'Plugin name: %s\nType: %s' % (self.name, self.type)
if self.details:
res = '%s\n%s' % (res, self.details)
if self.error:
res = '%s\nERROR: %s' % (res, self.error)
return res
def plugininfo():
""" return infoamtion about all installed pulgins as a string
"""
res = pluginlist[:]
res.sort(lambda x,y: cmp(x.type + x.name, y.type + y.name))
res = [str(x) for x in res]
res = '\n\n'.join(res)
return res
|