]> git.ipfire.org Git - ipfire-3.x.git/commitdiff
naoki: Also create raw output for binary packages.
authorMichael Tremer <michael.tremer@ipfire.org>
Fri, 17 Sep 2010 19:44:56 +0000 (21:44 +0200)
committerMichael Tremer <michael.tremer@ipfire.org>
Fri, 17 Sep 2010 19:44:56 +0000 (21:44 +0200)
naoki/__init__.py
naoki/packages.py

index 14a5665ca23ef5bbff10f492d80e3da7ee039a27..87773dcca6069453470cde4d6791315caf35b0f4 100644 (file)
@@ -12,6 +12,7 @@ import build
 import environ
 import generators
 import logger
+import packages
 import repositories
 import terminal
 import util
@@ -159,11 +160,16 @@ Release       : %(PKG_REL)s
                pass
 
        def call_package_raw(self, args):
-               repo = self._get_source_repos()
+               filename = args.package
 
-               p = repo.find_package_by_name(args.package)
-               if not p:
-                       raise Exception, "Could not find package: %s" % args.package
+               if os.path.exists(filename):
+                       p = packages.BinaryPackage(filename)
+               else:
+                       repo = self._get_source_repos()
+
+                       p = repo.find_package_by_name(args.package)
+                       if not p:
+                               raise Exception, "Could not find package: %s" % args.package
 
                p.print_raw_info()
 
index a7cb77d4b5f15138f70ad9da6b01042a37341b8a..467f09840cedf0680254356428f2da805cc65110 100644 (file)
@@ -67,6 +67,13 @@ class Package(object):
        def version(self):
                return self._info["PKG_VER"]
 
+       def print_raw_info(self):
+               for k in sorted(self._info.keys()):
+                       print "%s=\"%s\"" % (k, self._info.get(k))
+
+       def fmtstr(self, s):
+               return s % self._info
+
 
 class SourcePackage(Package):
        def __init__(self, filename, repo, arch):
@@ -156,13 +163,6 @@ class SourcePackage(Package):
 
                        g.urlgrab(os.path.basename(file), filename=file)
 
-       def print_raw_info(self):
-               for k, v in self._info.items():
-                       print "%s=\"%s\"" % (k, v)
-
-       def fmtstr(self, s):
-               return s % self._info
-
 
 class BinaryPackage(Package):
        def __init__(self, filename):