]> git.ipfire.org Git - pakfire.git/commitdiff
Add "type" property to all packages.
authorMichael Tremer <michael.tremer@ipfire.org>
Fri, 18 Mar 2011 16:24:42 +0000 (17:24 +0100)
committerMichael Tremer <michael.tremer@ipfire.org>
Fri, 18 Mar 2011 16:24:42 +0000 (17:24 +0100)
pakfire/packages/__init__.py
pakfire/packages/base.py
pakfire/packages/binary.py
pakfire/packages/source.py
pakfire/packages/virtual.py
pakfire/repository/index.py

index 440e874bbe087748b8278e57e851106826fab1b1..0983ed47a9ec8239ce1973e15d6fb90789163735 100644 (file)
@@ -8,4 +8,4 @@ from virtual import VirtualPackage
 
 from listing import PackageListing
 from make import Makefile
-from packager import Packager
+from packager import BinaryPackager
index 81dd580134d613afd151415489f01411350d6bc3..3d6bf4ed2edb423b285ca02b0bbda8656468f5ce 100644 (file)
@@ -11,8 +11,6 @@ import pakfire.depsolve
 from pakfire.i18n import _
 
 class Package(object):
-       type = None # either "bin", "src" or "virt"
-
        def __init__(self, pakfire, repo=None):
                self.pakfire = pakfire
                self._repo = repo
@@ -211,6 +209,10 @@ class Package(object):
        def arch(self):
                raise NotImplementedError
 
+       @property
+       def type(self):
+               return self.metadata.get("TYPE", "unknown")
+
        @property
        def maintainer(self):
                return self.metadata.get("PKG_MAINTAINER")
index efff2a7564f616452b522c891f40ac5705f5a5a5..3ce9ef5c3463a554b5448837a33a430eca66cd53 100644 (file)
@@ -5,8 +5,6 @@ import sys
 from file import FilePackage
 
 class BinaryPackage(FilePackage):
-       type = "bin"
-
        @property
        def arch(self):
                return self.metadata.get("PKG_ARCH")
index ad073ee88d8b76bfa08409c3103ea266ecc3df23..1e53f575229328ac7f750d07def4ba3c2d1b7d00 100644 (file)
@@ -3,11 +3,9 @@
 from file import FilePackage
 
 class SourcePackage(FilePackage):
-       type = "src"
-
        @property
        def arch(self):
-               return self.type
+               return "src"
 
        def extract(self, path):
                pass
index a18f55092ecdd091c5944eeb2e9334d036573c35..55fa4ee5f77e49e81de55dd57d4c3cd11dc2c154 100644 (file)
@@ -6,8 +6,6 @@ from pakfire.constants import *
 
 
 class VirtualPackage(Package):
-       type = "virt"
-
        def __init__(self, pakfire, data):
                self.pakfire = pakfire
                self._data = {}
index ced0be908793055cc89c7a3e46a143878230caf9..f18c97d950b88beea1e5c6b2c27cc24a5edce1e8 100644 (file)
@@ -103,9 +103,14 @@ class DirectoryIndex(Index):
 
                                package = packages.BinaryPackage(self.pakfire, self.repo, file)
 
+                               if package.type == "source":
+                                       # Silently skip source packages.
+                                       continue
+
                                if not package.arch in (self.arch, "noarch"):
                                        logging.warning("Skipped package with wrong architecture: %s (%s)" \
                                                % (package.filename, package.arch))
+                                       print package.type
                                        continue
 
                                self._packages.append(package)