diff --git a/pisi-install b/pisi-install index 3582905d..cff249cc 100755 --- a/pisi-install +++ b/pisi-install @@ -6,7 +6,7 @@ import sys from optparse import OptionParser sys.path.append("./lib") -from pisi.install import PisiInstall, PisiInstallError +import pisi.install import pisi.util class ArgError(Exception): @@ -37,8 +37,12 @@ def main(): else: package_fn = args[0] - install.install(package_fn) - + try: + pisi.install.install(package_fn) + except pisi.install.InstallError, (errno, errstr): + print '*** An installation error has occured:' + print ' ', errstr + sys.exit(1) if __name__ == "__main__": main() diff --git a/pisi/context.py b/pisi/context.py index 63338f28..1ed3648f 100644 --- a/pisi/context.py +++ b/pisi/context.py @@ -77,6 +77,9 @@ class Context(object): def tmp_dir(self): return self.destdir + self.const.tmp_dir_suffix + def install_dir(self): + return self.destdir + self.const.install_dir_suffix + def pkg_dir(self): packageDir = self.spec.source.name + '-' \ + self.spec.source.version + '-' + self.spec.source.release diff --git a/pisi/install.py b/pisi/install.py index d3ede36a..bfd1b341 100644 --- a/pisi/install.py +++ b/pisi/install.py @@ -19,7 +19,7 @@ import dependency class InstallError(Exception): pass -def install(self, package_fn): +def install(package_fn): package = Package(package_fn, 'r') # extract control files