Handle broken pycdio 0.18

This commit is contained in:
Thomas Vander Stichele
2013-01-28 22:10:53 +01:00
parent 036bf0bd92
commit ad1cf0ff84
4 changed files with 27 additions and 3 deletions

View File

@@ -31,10 +31,15 @@ and assure it doesn't raise an exception.
# now load the main function
try:
from morituri.common import deps
from morituri.extern.deps import deps as edeps
h = deps.DepsHandler()
h.validate()
from morituri.rip import main
sys.exit(main.main(sys.argv[1:]))
except ImportError, e:
from morituri.common import deps
h = deps.DepsHandler()
h.handleImportError(e)
sys.exit(1)
except edeps.DependencyError:
sys.stderr.write('rip: please fix the dependency and try again.\n')
sys.exit(1)

View File

@@ -15,6 +15,7 @@ class DepsHandler(deps.DepsHandler):
self.add(GStPython())
self.add(CDDB())
self.add(SetupTools())
self.add(PyCDIO())
def report(self, summary):
reporter = os.environ.get('EMAIL_ADDRESS', None)
@@ -55,3 +56,20 @@ class SetupTools(deps.Dependency):
def Fedora_install(self, distro):
return self.Fedora_yum('python-setuptools')
class PyCDIO(deps.Dependency):
module = 'pycdio'
name = "pycdio"
homepage = "http://www.gnu.org/software/libcdio/"
egg = 'pycdio'
def Fedora_install(self, distro):
return self.Fedora_yum('pycdio')
def validate(self):
version = self.version()
if version == '0.18':
return '''pycdio 0.18 does not work.
See http://savannah.gnu.org/bugs/?38185'''

View File

@@ -30,6 +30,7 @@ def main(argv):
from morituri.common import deps
h = deps.DepsHandler()
h.validate()
c = Rip()
try: