docs: def run():
  	"""
  	Run a command in the context of the system dependencies.
  	"""
  	parser = argparse.ArgumentParser()
  	parser.add_argument(
  		'--deps-def',
  		default=data_lines_from_file("system deps.txt")
  		+ data_lines_from_file("build deps.txt"),
  		help="A file specifying the dependencies (one per line)",
  		type=data_lines_from_file, dest="spec_deps")
  	parser.add_argument(
  		'--dep', action="append", default=[],
  		help="A specific dependency (multiple allowed)", dest="deps")
  	parser.add_argument(
  		'command', type=shlex.split,
  		default=shlex.split("python2.7 setup.py test"),
  		help="Command to invoke in the context of the dependencies")
  	parser.add_argument(
  		'--do-not-remove', default=False, action="store_true",
  		help="Keep any installed packages")
  	parser.add_argument(
  		'--aggressively-remove', default=False,
  		action="store_true",
  		help="When removing packages, also remove those automatically installed"
  		" as dependencies")
  	parser.add_argument(
  		'-l', '--log-level', default=logging.INFO,
  		type=log_level, help="Set log level (DEBUG, INFO, WARNING, ERROR)")
  	args = parser.parse_args()
  	logging.basicConfig(level=args.log_level)
  	context = dependency_context(
  		args.spec_deps + args.deps,
  		aggressively_remove=args.aggressively_remove)
  	with context as to_remove:
  		if args.do_not_remove:
  			del to_remove[:]
  		raise SystemExit(subprocess.Popen(args.command).wait())