From 7a33618e8189384861b412176a3ddbef240b6777 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Fri, 2 Apr 2010 10:22:38 -0700 Subject: Handle missing $PORTDIR/metadata/herds.xml. Thanks to Arfrever for reporting. --- bin/repoman | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'bin/repoman') diff --git a/bin/repoman b/bin/repoman index ffc4c948..a76bc8de 100755 --- a/bin/repoman +++ b/bin/repoman @@ -68,10 +68,9 @@ import portage.checksum import portage.const import portage.dep portage.dep._dep_check_strict = True -import portage.exception from portage import cvstree, normalize_path from portage import util -from portage.exception import ParseError +from portage.exception import FileNotFound, ParseError, PermissionDenied from portage.manifest import Manifest from portage.process import find_binary, spawn from portage.output import bold, create_color_func, darkgreen, \ @@ -984,8 +983,12 @@ thirdpartymirrors = portage.flatten(list(repoman_settings.thirdpartymirrors().va try: herd_base = make_herd_base(os.path.join(repoman_settings["PORTDIR"], "metadata/herds.xml")) -except (EnvironmentError, ParseError) as e: +except (EnvironmentError, ParseError, PermissionDenied) as e: err(str(e)) +except FileNotFound: + # TODO: Download as we do for metadata.dtd, but add a way to + # disable for non-gentoo repoman users who may not have herds. + herd_base = None for x in scanlist: #ebuilds and digests added to cvs respectively. -- cgit v1.2.3-18-g5258