I suggest to add support for per-repository per-attribute environmental variables in Portage. These variables would be used when PORTAGE_REPOSITORIES is not set. Example of setting of them by user and detection of them by Portage: $ env \ > PORTAGE_REPOSITORY:gentoo:location=/var/db/repositories/gentoo-cvs \ > PORTAGE_REPOSITORY:gentoo:sync-type=cvs \ > PORTAGE_REPOSITORY:gentoo:sync-uri=:pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot \ > python -c 'import os, pprint; pprint.pprint([x for x in os.environ.items() if x[0].startswith("PORTAGE_REPOSITORY:")])' [('PORTAGE_REPOSITORY:gentoo:sync-type', 'cvs'), ('PORTAGE_REPOSITORY:gentoo:location', '/var/db/repositories/gentoo-cvs'), ('PORTAGE_REPOSITORY:gentoo:sync-uri', ':pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot')] A separator between components of names of these variables cannot be any character valid in names of repositories. -- Arfrever Frehtes Taifersar Arahesis