示例#1
0
文件: pkg.py 项目: Letractively/spiff
        print e
        return False
    if package is None:
        print "Package %s not found in database" % descriptor
        return False
    depends = pm.get_package_list(depends = package)
    if len(depends) > 0:
        depend = ['%s=%s' % (d.get_handle(), d.get_version()) for d in depends]
        descr  = '%s=%s' % (package.get_handle(), package.get_version())
        print "Can't remove %s, because the following packages use it:" % descr
        print '\n'.join(depend)
        return False
    handle  = package.get_handle()
    version = package.get_version()
    print "Removing package %s %s as requested." % (handle, version)
    pm.remove_package(package)
    return True


def pkg_show(pm, package):
    package.dump()
    return True


def pkg_list(pm, descriptor = None):
    packages = pm.get_package_list()
    for package in packages:
        try:
            if descriptor is None or package.matches(descriptor):
                print package
        except InvalidDescriptor, e: