summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorMichael Vogt <egon@bottom>2006-04-29 21:43:22 +0200
committerMichael Vogt <egon@bottom>2006-04-29 21:43:22 +0200
commitb2027f3494dcc42846c8a1106a4fd4b71cd8ed24 (patch)
treeef83cdce0261661c21f588edbe838acf47166d3c /doc
parenta6d05b8fe1d75e27ca938e684971e4e0cb0ea8c9 (diff)
parent0e8fd33b1b741cc65c284a08faa50b3a2995ac3c (diff)
downloadpython-apt-b2027f3494dcc42846c8a1106a4fd4b71cd8ed24.tar.gz
* merged from mainline
Diffstat (limited to 'doc')
-rw-r--r--doc/examples/all_deps.py34
-rwxr-xr-xdoc/examples/build-deps.py2
-rw-r--r--doc/examples/indexfile.py1
-rw-r--r--doc/examples/progress.py17
-rw-r--r--doc/examples/sources.py6
5 files changed, 59 insertions, 1 deletions
diff --git a/doc/examples/all_deps.py b/doc/examples/all_deps.py
new file mode 100644
index 00000000..f4f1741c
--- /dev/null
+++ b/doc/examples/all_deps.py
@@ -0,0 +1,34 @@
+#!/usr/bin/env python
+
+import sys
+import apt
+
+
+def dependencies(cache, pkg, deps, key="Depends"):
+ #print "pkg: %s (%s)" % (pkg.name, deps)
+ candver = cache._depcache.GetCandidateVer(pkg._pkg)
+ if candver == None:
+ return deps
+ dependslist = candver.DependsList
+ if dependslist.has_key(key):
+ for depVerList in dependslist[key]:
+ for dep in depVerList:
+ if cache.has_key(dep.TargetPkg.Name):
+ if pkg.name != dep.TargetPkg.Name and not dep.TargetPkg.Name in deps:
+ deps.add(dep.TargetPkg.Name)
+ dependencies(cache, cache[dep.TargetPkg.Name], deps, key)
+ return deps
+
+
+pkgname = sys.argv[1]
+c = apt.Cache()
+pkg = c[pkgname]
+
+deps = set()
+
+deps = dependencies(c,pkg, deps, "Depends")
+print " ".join(deps)
+
+preDeps = set()
+preDeps = dependencies(c,pkg, preDeps, "PreDepends")
+print " ".join(preDeps)
diff --git a/doc/examples/build-deps.py b/doc/examples/build-deps.py
index b580f5de..65e35f3d 100755
--- a/doc/examples/build-deps.py
+++ b/doc/examples/build-deps.py
@@ -24,7 +24,7 @@ cache = apt_pkg.GetCache()
depcache = apt_pkg.GetDepCache(cache)
depcache.Init()
records = apt_pkg.GetPkgRecords(cache)
-srcrecords = apt_pkg.GetPkgSrcRecords(cache)
+srcrecords = apt_pkg.GetPkgSrcRecords()
# base package that we use for build-depends calculation
if len(sys.argv) < 2:
diff --git a/doc/examples/indexfile.py b/doc/examples/indexfile.py
index 5eaab517..d383fd61 100644
--- a/doc/examples/indexfile.py
+++ b/doc/examples/indexfile.py
@@ -18,3 +18,4 @@ for (f,i) in cand.FileList:
print index.IsTrusted
print index.Exists
print index.HasPackages
+ print index.ArchiveURI("some/path")
diff --git a/doc/examples/progress.py b/doc/examples/progress.py
index d820fcb2..2723c382 100644
--- a/doc/examples/progress.py
+++ b/doc/examples/progress.py
@@ -44,12 +44,16 @@ class TextFetchProgress(apt.FetchProgress):
class TextInstallProgress(apt.InstallProgress):
def __init__(self):
+ apt.InstallProgress.__init__(self)
pass
def startUpdate(self):
print "StartUpdate"
def finishUpdate(self):
print "FinishUpdate"
+ def statusChange(self, pkg, percent, status):
+ print "[%s] %s: %s" % (percent, pkg, status)
def updateInterface(self):
+ apt.InstallProgress.updateInterface(self)
# usefull to e.g. redraw a GUI
time.sleep(0.1)
@@ -70,3 +74,16 @@ class TextCdromProgress(apt.CdromProgress):
print "Please insert cdrom and press <ENTER>"
answer = sys.stdin.readline()
return True
+
+
+if __name__ == "__main__":
+ c = apt.Cache()
+ pkg = c["3dchess"]
+ if pkg.isInstalled:
+ pkg.markDelete()
+ else:
+ pkg.markInstall()
+
+ res = c.commit(TextFetchProgress(), TextInstallProgress())
+
+ print res
diff --git a/doc/examples/sources.py b/doc/examples/sources.py
index 79514621..78913523 100644
--- a/doc/examples/sources.py
+++ b/doc/examples/sources.py
@@ -4,6 +4,12 @@ import apt_pkg
apt_pkg.init()
+#cache = apt_pkg.GetCache()
+#sources = apt_pkg.GetPkgSrcRecords(cache)
+
sources = apt_pkg.GetPkgSrcRecords()
+sources.Restart()
while sources.Lookup('hello'):
print sources.Package, sources.Version, sources.Maintainer, sources.Section, `sources.Binaries`
+ #print sources.Files
+ print sources.Index.ArchiveURI("")