diff options
author | Zac Medico <zmedico@gentoo.org> | 2007-05-31 12:47:05 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2007-05-31 12:47:05 +0000 |
commit | 00152eff9e23a6a6f0efb226c3f234bcd9c20865 (patch) | |
tree | b7887bae37d7a8cb8cba4c079eceb9fa5f84943a /pym/portage/getbinpkg.py | |
parent | eea590a6ef30d1bc2b9be766af6fa6cb5eb4413e (diff) | |
download | portage-00152eff9e23a6a6f0efb226c3f234bcd9c20865.tar.gz portage-00152eff9e23a6a6f0efb226c3f234bcd9c20865.tar.bz2 portage-00152eff9e23a6a6f0efb226c3f234bcd9c20865.zip |
Add PORTAGE_BINHOST support for fetching a remote Packages index. If the index is not found then it falls back to the old directory listing method.
svn path=/main/trunk/; revision=6694
Diffstat (limited to 'pym/portage/getbinpkg.py')
-rw-r--r-- | pym/portage/getbinpkg.py | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/pym/portage/getbinpkg.py b/pym/portage/getbinpkg.py index 76016e3c0..f44f690a6 100644 --- a/pym/portage/getbinpkg.py +++ b/pym/portage/getbinpkg.py @@ -596,9 +596,16 @@ class PackageIndex(object): def __init__(self): self.header = {} self.packages = {} + self.modified = True def read(self, pkgfile): + self.readHeader(pkgfile) + self.readBody(pkgfile) + + def readHeader(self, pkgfile): self.header.update(readpkgindex(pkgfile)) + + def readBody(self, pkgfile): while True: d = readpkgindex(pkgfile) if not d: @@ -612,9 +619,10 @@ class PackageIndex(object): def write(self, pkgfile): cpv_all = self.packages.keys() cpv_all.sort() - import time - self.header["TIMESTAMP"] = str(long(time.time())) - self.header["PACKAGES"] = str(len(cpv_all)) + if self.modified: + import time + self.header["TIMESTAMP"] = str(long(time.time())) + self.header["PACKAGES"] = str(len(cpv_all)) keys = self.header.keys() keys.sort() writepkgindex(pkgfile, [(k, self.header[k]) for k in keys]) |