1
0
mirror of https://git.yoctoproject.org/poky synced 2026-05-31 12:49:46 +00:00

lib/oe/rootfs: Use list_pkgs() instead of list()

This patch changes the use list_pkgs() instead of list()
from class RpmPkgsList. The change is in two functions,
image_list_installed_packages from rootfs.py and
sdk_list_installed_packages from sdk.py.

With this change the functions calling the functions
listed above, must format the output as they required.
The formatting can be done using format_pkg_list() from
oe.utils.

The classes calling the afected functions are changed too
with this patch, to keep the same functionality using the
new data structure.

[YOCTO #7427]

(From OE-Core rev: 983ea373362514e5888bd1d7d9c4f136c94b00f2)

Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Mariano Lopez
2016-01-18 14:33:06 +00:00
committed by Richard Purdie
parent 03075f671c
commit 6ebda8e659
7 changed files with 41 additions and 26 deletions
+10 -8
View File
@@ -708,7 +708,7 @@ class PackageManager(object):
pass
@abstractmethod
def list_installed(self, format=None):
def list_installed(self):
pass
@abstractmethod
@@ -728,7 +728,9 @@ class PackageManager(object):
installed_pkgs_file = os.path.join(self.d.getVar('WORKDIR', True),
"installed_pkgs.txt")
with open(installed_pkgs_file, "w+") as installed_pkgs:
installed_pkgs.write(self.list_installed("arch"))
pkgs = self.list_installed()
output = oe.utils.format_pkg_list(pkgs, "arch")
installed_pkgs.write(output)
if globs is None:
globs = self.d.getVar('IMAGE_INSTALL_COMPLEMENTARY', True)
@@ -1432,8 +1434,8 @@ class RpmPM(PackageManager):
self.image_rpmlib,
symlinks=True)
def list_installed(self, format=None):
return self.pkgs_list.list(format)
def list_installed(self):
return self.pkgs_list.list_pkgs()
'''
If incremental install, we need to determine what we've got,
@@ -1797,8 +1799,8 @@ class OpkgPM(PackageManager):
# create the directory back, it's needed by PM lock
bb.utils.mkdirhier(self.opkg_dir)
def list_installed(self, format=None):
return OpkgPkgsList(self.d, self.target_rootfs, self.config_file).list(format)
def list_installed(self):
return OpkgPkgsList(self.d, self.target_rootfs, self.config_file).list_pkgs()
def handle_bad_recommendations(self):
bad_recommendations = self.d.getVar("BAD_RECOMMENDATIONS", True) or ""
@@ -2186,8 +2188,8 @@ class DpkgPM(PackageManager):
bb.fatal("Cannot fix broken dependencies. Command '%s' "
"returned %d:\n%s" % (cmd, e.returncode, e.output))
def list_installed(self, format=None):
return DpkgPkgsList(self.d, self.target_rootfs).list()
def list_installed(self):
return DpkgPkgsList(self.d, self.target_rootfs).list_pkgs()
def generate_index_files(d):
+5 -5
View File
@@ -252,7 +252,7 @@ class Rootfs(object):
# Remove components that we don't need if it's a read-only rootfs
pkgs_installed = image_list_installed_packages(self.d)
pkgs_to_remove = list()
for pkg in pkgs_installed.split():
for pkg in pkgs_installed:
if pkg in ["update-rc.d",
"base-passwd",
"shadow",
@@ -976,17 +976,17 @@ def create_rootfs(d, manifest_dir=None):
os.environ.update(env_bkp)
def image_list_installed_packages(d, format=None, rootfs_dir=None):
def image_list_installed_packages(d, rootfs_dir=None):
if not rootfs_dir:
rootfs_dir = d.getVar('IMAGE_ROOTFS', True)
img_type = d.getVar('IMAGE_PKGTYPE', True)
if img_type == "rpm":
return RpmPkgsList(d, rootfs_dir).list(format)
return RpmPkgsList(d, rootfs_dir).list_pkgs()
elif img_type == "ipk":
return OpkgPkgsList(d, rootfs_dir, d.getVar("IPKGCONF_TARGET", True)).list(format)
return OpkgPkgsList(d, rootfs_dir, d.getVar("IPKGCONF_TARGET", True)).list_pkgs()
elif img_type == "deb":
return DpkgPkgsList(d, rootfs_dir).list(format)
return DpkgPkgsList(d, rootfs_dir).list_pkgs()
if __name__ == "__main__":
"""
+4 -4
View File
@@ -345,7 +345,7 @@ class DpkgSdk(Sdk):
def sdk_list_installed_packages(d, target, format=None, rootfs_dir=None):
def sdk_list_installed_packages(d, target, rootfs_dir=None):
if rootfs_dir is None:
sdk_output = d.getVar('SDK_OUTPUT', True)
target_path = d.getVar('SDKTARGETSYSROOT', True).strip('/')
@@ -356,12 +356,12 @@ def sdk_list_installed_packages(d, target, format=None, rootfs_dir=None):
if img_type == "rpm":
arch_var = ["SDK_PACKAGE_ARCHS", None][target is True]
os_var = ["SDK_OS", None][target is True]
return RpmPkgsList(d, rootfs_dir, arch_var, os_var).list(format)
return RpmPkgsList(d, rootfs_dir, arch_var, os_var).list_pkgs()
elif img_type == "ipk":
conf_file_var = ["IPKGCONF_SDK", "IPKGCONF_TARGET"][target is True]
return OpkgPkgsList(d, rootfs_dir, d.getVar(conf_file_var, True)).list(format)
return OpkgPkgsList(d, rootfs_dir, d.getVar(conf_file_var, True)).list_pkgs()
elif img_type == "deb":
return DpkgPkgsList(d, rootfs_dir).list(format)
return DpkgPkgsList(d, rootfs_dir).list_pkgs()
def populate_sdk(d, manifest_dir=None):
env_bkp = os.environ.copy()