diff options
author | Zac Medico <zmedico@gentoo.org> | 2016-07-02 23:08:13 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2016-07-03 10:50:27 -0700 |
commit | 84aa6c743581222a3f4a8a855dbcb77a2774c5b6 (patch) | |
tree | 7624418e644516028206e5b03508a6540830f4bd /pym/gentoolkit | |
parent | eclean: fix DeprecationWarning: Passing nonexistent key 'NOCOLOR' (diff) | |
download | gentoolkit-84aa6c743581222a3f4a8a855dbcb77a2774c5b6.tar.gz gentoolkit-84aa6c743581222a3f4a8a855dbcb77a2774c5b6.tar.bz2 gentoolkit-84aa6c743581222a3f4a8a855dbcb77a2774c5b6.zip |
eshowkw: migrate to PORTAGE_REPOSITORIES (bug 587856)
Since PORTDIR_OVERLAY is deprecated, migrate to PORTAGE_REPOSITORIES.
X-Gentoo-bug: 587856
X-Gentoo-bug-url: https://bugs.gentoo.org/show_bug.cgi?id=587856
Diffstat (limited to 'pym/gentoolkit')
-rw-r--r-- | pym/gentoolkit/eshowkw/__init__.py | 32 |
1 files changed, 27 insertions, 5 deletions
diff --git a/pym/gentoolkit/eshowkw/__init__.py b/pym/gentoolkit/eshowkw/__init__.py index ded166d..42a3860 100644 --- a/pym/gentoolkit/eshowkw/__init__.py +++ b/pym/gentoolkit/eshowkw/__init__.py @@ -1,5 +1,5 @@ # vim:fileencoding=utf-8 -# Copyright 2010 Gentoo Foundation +# Copyright 2010-2016 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 __package__ = 'gentoolkit.eshowkw' @@ -122,10 +122,32 @@ def main(argv, indirect = False): msg_err = 'No ebuilds at "%s"' % currdir raise SystemExit(msg_err) package= '%s/%s' % (os.path.basename(os.path.abspath('../')), os.path.basename(currdir)) - ourtree = os.path.abspath('../../') - overlays = '%s %s' % (ports['PORTDIR_OVERLAY'], ourtree) - mysettings = portc(local_config=False, env={'PORTDIR_OVERLAY': overlays}) - dbapi = portdbapi(mysettings=mysettings) + ourtree = os.path.realpath('../..') + ourstat = os.stat(ourtree) + ourstat = (ourstat.st_ino, ourstat.st_dev) + for repo in ports.repositories: + try: + repostat = os.stat(repo.location) + except OSError: + continue + if ourstat == (repostat.st_ino, repostat.st_dev): + dbapi = portdbapi(mysettings=portc(local_config=False)) + break + else: + repos = {} + for repo in ports.repositories: + repos[repo.name] = repo.location + + with open(os.path.join(ourtree, 'profiles', 'repo_name'), + 'rt') as f: + repo_name = f.readline().strip() + + repos[repo_name] = ourtree + repos = ''.join('[{}]\nlocation={}\n'.format(k, v) + for k, v in repos.items()) + mysettings = portc(local_config=False, + env={'PORTAGE_REPOSITORIES': repos}) + dbapi = portdbapi(mysettings=mysettings) # specify that we want just our nice tree we are in cwd dbapi.porttrees = [ourtree] process_display(package, keywords, dbapi) |