* install -c [--component] and remove -c [--component] is added.
pisi install -c desktop.kde -c desktop.gnome amsn amsn-kde ...
This commit is contained in:
+28
-7
@@ -594,17 +594,28 @@ expanded to package names.
|
|||||||
default=False, help=_("Ignore file conflicts"))
|
default=False, help=_("Ignore file conflicts"))
|
||||||
group.add_option("--ignore-package-conflicts", action="store_true",
|
group.add_option("--ignore-package-conflicts", action="store_true",
|
||||||
default=False, help=_("Ignore package conflicts"))
|
default=False, help=_("Ignore package conflicts"))
|
||||||
|
group.add_option("-c", "--component", action="append",
|
||||||
|
default=None, help=_("Install component's and recursive component's packages"))
|
||||||
group.add_option("-f", "--fetch-only", action="store_true",
|
group.add_option("-f", "--fetch-only", action="store_true",
|
||||||
default=False, help=_("Fetch upgrades but do not install."))
|
default=False, help=_("Fetch upgrades but do not install."))
|
||||||
self.parser.add_option_group(group)
|
self.parser.add_option_group(group)
|
||||||
|
|
||||||
def run(self):
|
def run(self):
|
||||||
if not self.args:
|
self.init()
|
||||||
|
|
||||||
|
components = ctx.get_option('component')
|
||||||
|
if not components and not self.args:
|
||||||
self.help()
|
self.help()
|
||||||
return
|
return
|
||||||
|
|
||||||
self.init()
|
packages = []
|
||||||
pisi.api.install(self.args, ctx.get_option('reinstall'))
|
if components:
|
||||||
|
for name in components:
|
||||||
|
if ctx.componentdb.has_component(name):
|
||||||
|
packages.extend(ctx.componentdb.get_union_packages(name, walk=True))
|
||||||
|
packages.extend(self.args)
|
||||||
|
|
||||||
|
pisi.api.install(packages, ctx.get_option('reinstall'))
|
||||||
self.finalize()
|
self.finalize()
|
||||||
|
|
||||||
|
|
||||||
@@ -737,17 +748,27 @@ expanded to package names.
|
|||||||
def options(self):
|
def options(self):
|
||||||
group = OptionGroup(self.parser, _("remove options"))
|
group = OptionGroup(self.parser, _("remove options"))
|
||||||
super(Remove, self).options(group)
|
super(Remove, self).options(group)
|
||||||
|
group.add_option("-c", "--component", action="append",
|
||||||
|
default=None, help=_("Remove component's and recursive component's packages"))
|
||||||
self.parser.add_option_group(group)
|
self.parser.add_option_group(group)
|
||||||
|
|
||||||
def run(self):
|
def run(self):
|
||||||
if not self.args:
|
self.init()
|
||||||
|
|
||||||
|
components = ctx.get_option('component')
|
||||||
|
if not components and not self.args:
|
||||||
self.help()
|
self.help()
|
||||||
return
|
return
|
||||||
|
|
||||||
self.init()
|
packages = []
|
||||||
pisi.api.remove(self.args)
|
if components:
|
||||||
self.finalize()
|
for name in components:
|
||||||
|
if ctx.componentdb.has_component(name):
|
||||||
|
packages.extend(ctx.componentdb.get_union_packages(name, walk=True))
|
||||||
|
packages.extend(self.args)
|
||||||
|
|
||||||
|
pisi.api.remove(packages)
|
||||||
|
self.finalize()
|
||||||
|
|
||||||
class ConfigurePending(PackageOp):
|
class ConfigurePending(PackageOp):
|
||||||
"""Configure pending packages
|
"""Configure pending packages
|
||||||
|
|||||||
Reference in New Issue
Block a user