help=_("Disallow changing the architecture of packages"))
downgrade.set_defaults(func=self.handle_downgrade)
+ # execute
+ execute = subparsers.add_parser("execute",
+ help=_("Executes a command in the pakfire environment (useful for development)"))
+ execute.add_argument("--bind", nargs="*", default=[], dest="binds",
+ help=_("Bind-mounts the given directory"))
+ execute.add_argument("command", nargs=argparse.REMAINDER)
+ execute.set_defaults(func=self.handle_execute)
+
# extract
extract = subparsers.add_parser("extract",
help=_("Extract a package to a directory"))
return p
+ def handle_execute(self, ns):
+ pakfire = self.pakfire(ns)
+
+ # Bind-mount everything
+ for bind in ns.binds:
+ pakfire.bind(bind)
+
+ return pakfire.execute(ns.command)
+
def run(self):
args = self.parse_cli()
assert args.func, "Argument function not defined"