From 39454ee886ab61d0e9f681cf66f9c8706e386563 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Eray=20=C3=96zkural?= Date: Mon, 18 Jul 2005 12:19:49 +0000 Subject: [PATCH] * calistirtirt --- pisi/cli/commands.py | 10 +++++++++- pisi/cli/common.py | 33 +++++++++++++++++++++++++++++++++ pisi/cli/pisicli.py | 35 +---------------------------------- pisi/installdb.py | 7 +++++++ pisi/operations.py | 4 +++- pisi/package.py | 1 - 6 files changed, 53 insertions(+), 37 deletions(-) create mode 100644 pisi/cli/common.py diff --git a/pisi/cli/commands.py b/pisi/cli/commands.py index 87cc0222..7cfb52e4 100644 --- a/pisi/cli/commands.py +++ b/pisi/cli/commands.py @@ -1,3 +1,11 @@ +import sys +from optparse import OptionParser +import pisi +from pisi.config import config +import pisi.operations +from pisi.purl import PUrl +from common import * + # helper functions def cmdObject(cmd, fail=False): commands = {"help": Help, @@ -22,7 +30,7 @@ class Command(object): """generic help string for any command""" def __init__(self): # now for the real parser - self.parser = OptionParser(usage=usage_text, + self.parser = OptionParser(usage="", version="%prog " + pisi.__version__) self.options() self.parser = commonopts(self.parser) diff --git a/pisi/cli/common.py b/pisi/cli/common.py new file mode 100644 index 00000000..2c5018b7 --- /dev/null +++ b/pisi/cli/common.py @@ -0,0 +1,33 @@ +usage_text = """%prog [options] [arguments] + +where is one of: + +help +build +index +info +install +remove +updatedb + +Use \"%prog help \" for help on a specific subcommand. + +PISI Package Manager +""" + +def commonopts(parser): + p = parser + p.add_option("-D", "--destdir", action="store") + p.add_option("-u", "--username", action="store") + p.add_option("-p", "--password", action="store") + p.add_option("-P", action="store_true", dest="getpass", default=False, + help="Get password from the command line") + p.add_option("-v", "--verbose", action="store_true", + dest="verbose", default=False, + help="detailed output") + p.add_option("-d", "--debug", action="store_true", + default=True, help="show debugging information") + p.add_option("-n", "--dry-run", action="store_true", default=False, + help = "do not perform any action, just show what\ + would be done") + return p diff --git a/pisi/cli/pisicli.py b/pisi/cli/pisicli.py index 0ba4e818..88d07d70 100644 --- a/pisi/cli/pisicli.py +++ b/pisi/cli/pisicli.py @@ -7,43 +7,10 @@ import pisi from pisi.config import config import pisi.operations from pisi.purl import PUrl +from common import * from commands import * - # globals -usage_text = """%prog [options] [arguments] -where is one of: - -help -build -index -info -install -remove -updatedb - -Use \"%prog help \" for help on a specific subcommand. - -PISI Package Manager -""" - - -def commonopts(parser): - p = parser - p.add_option("-D", "--destdir", action="store") - p.add_option("-u", "--username", action="store") - p.add_option("-p", "--password", action="store") - p.add_option("-P", action="store_true", dest="getpass", default=False, - help="Get password from the command line") - p.add_option("-v", "--verbose", action="store_true", - dest="verbose", default=False, - help="detailed output") - p.add_option("-d", "--debug", action="store_true", - default=True, help="show debugging information") - p.add_option("-n", "--dry-run", action="store_true", default=False, - help = "do not perform any action, just show what\ - would be done") - return p diff --git a/pisi/installdb.py b/pisi/installdb.py index 0b477ce3..6c75e671 100644 --- a/pisi/installdb.py +++ b/pisi/installdb.py @@ -50,6 +50,13 @@ class InstallDB: else: return False + def list_installed(self): + l = [] + for (pkg, (status,version,release)) in self.d.iteritems(): + if status=='i': + l.append(pkg) + return l + def get_version(self, pkg): pkg = str(pkg) (status, version, release) = self.d[pkg] diff --git a/pisi/operations.py b/pisi/operations.py index 0bf6088a..a8d5961a 100644 --- a/pisi/operations.py +++ b/pisi/operations.py @@ -14,4 +14,6 @@ def remove(package_name): from install import Installer def install(package_name): - Installer + i = Installer(package_name), i.install() + + diff --git a/pisi/package.py b/pisi/package.py index f62595af..816bf668 100644 --- a/pisi/package.py +++ b/pisi/package.py @@ -75,7 +75,6 @@ class Package: # extract control files self.package.extract_PISI_files(tmpdir) - filesxml = self.metadata = MetaData() self.metadata.read( join(tmpdir, config.metadata_xml) ) if not metadata.verify():