Added run-cd script to run a CD ISO in qemu
[camarabuntu.git] / bin / get-deb-dependencies.py
blob8acc52bdfa090b8318f80d649666cd2676b7b96d
1 #! /usr/bin/python
3 from optparse import OptionParser
4 #import os, re, commands, copy, urllib, gzip, tempfile
5 import os
7 from apt import Dependency, Repository, Package, AndDependencyList, OrDependencyList
8 import apt
10 parser = OptionParser()
12 parser.add_option( "-l", "--local-repo", "--local-repository",
13 dest="local_repos", action="append", help="Repository path", default=[] )
15 parser.add_option( "-r", "--remote-repo", "--remote-repository", "--remote-repo", "--remote-repository",
16 dest="remote_repos", action="append", help="URL of web repository", default=[] )
18 parser.add_option( "-d", "--directory",
19 dest="directory", help="The directory to store the downloaded deb files. If not specified, the debs are downloaded into the current directory", default=None)
22 (options, debs) = parser.parse_args()
24 assert len(options.local_repos) > 0, "No local repositories provided"
26 local_repos = [Repository(r) for r in options.local_repos]
28 print "Downloading remote repositories... "
29 remote_repos = [Repository(r) for r in options.remote_repos]
30 print "done"
32 if options.directory is None:
33 directory = os.getcwd()
34 else:
35 if not os.path.isdir( options.directory ):
36 print "Error: '%s' is not a directory." % options.directory
37 os.exit(1)
38 else:
39 directory = options.directory
41 apt.dl_depenencies( debs, local_repos, remote_repos, directory )
43 #package.unfulfilled_depenencies(repos, remote_repos)
45 #print repr([r['gstreamer0.10-ffmpeg'] for r in remote_repos])
46 #remote_repos[1]['gstreamer0.10-ffmpeg'].save()