30
30
from ubuntutools.archive import UbuntuSourcePackage, DownloadError
31
31
from ubuntutools.config import UDTConfig
32
from ubuntutools.distro_info import UbuntuDistroInfo
32
33
from ubuntutools.logger import Logger
33
34
from ubuntutools.lp.lpapicache import Distribution, Launchpad
34
35
from ubuntutools.lp.udtexceptions import (SeriesNotFoundException,
37
38
from ubuntutools.misc import split_release_pocket
40
usage = "Usage: %prog <package> [release]"
41
usage = "Usage: %prog <package> [release|version]"
41
42
opt_parser = OptionParser(usage)
42
43
opt_parser.add_option('-d', '--download-only',
43
44
dest='download_only', default=False,
64
65
package = str(args[0]).lower()
66
if len(args) >= 2: # Custom distribution specified.
67
release = str(args[1]).lower()
67
ubuntu_info = UbuntuDistroInfo()
68
if len(args) > 1: # Custom distribution specified.
69
version = str(args[1])
69
release = os.getenv('DIST') or (Distribution('ubuntu')
70
.getDevelopmentSeries().name)
71
version = os.getenv('DIST') or ubuntu_info.devel()
74
# Release, not package version number:
73
(release, pocket) = split_release_pocket(release)
78
(release, pocket) = split_release_pocket(version)
74
79
except PocketDoesNotExistError, e:
79
spph = Distribution('ubuntu').getArchive().getSourcePackage(package,
82
except (SeriesNotFoundException, PackageNotFoundException), e:
86
srcpkg = UbuntuSourcePackage(package, spph.getVersion(),
87
component=spph.getComponent(),
81
if release in ubuntu_info.all and pocket is not None:
83
spph = Distribution('ubuntu').getArchive().getSourcePackage(package,
86
except (SeriesNotFoundException, PackageNotFoundException), e:
89
version = spph.getVersion()
90
component = spph.getComponent()
92
Logger.normal('Downloading %s version %s', package, version)
93
srcpkg = UbuntuSourcePackage(package, version, component=component,
88
94
mirrors=[options.ubuntu_mirror])