[poky] [PATCH 1/1] package_manager.py: fix opkg custom config path
Gaël PORTAY
gael.portay at savoirfairelinux.com
Thu Jan 11 10:12:47 PST 2018
Hi maintainers,
On Thu, Dec 07, 2017 at 04:38:47PM -0500, Gaël PORTAY wrote:
> The opkg custom config feature has moved to the package_manager python
> module. This feature is broken since commit 19c538f57c.
>
> The python function os.path.join joins path components. If a component
> is an absolute path, all previous components are thrown away.
>
> The sysconfdir variable is an absolute path component. It causes the
> leading target rootfs component to be removed. As a result, the
> package-manager module tries to write in the real root filesystem
> instead of the temporary work directory for the rootfs image.
>
> This fixes the issue by prepending the target rootfs component using the
> string concatenation operator when the file is opened (without using
> os.path module).
>
> Cc: Ash Charles <ash.charles at savoirfairelinux.com>
> Signed-off-by: Gaël PORTAY <gael.portay at savoirfairelinux.com>
> ---
> meta/lib/oe/package_manager.py | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/meta/lib/oe/package_manager.py b/meta/lib/oe/package_manager.py
> index ef69b18b642..642d714b51e 100644
> --- a/meta/lib/oe/package_manager.py
> +++ b/meta/lib/oe/package_manager.py
> @@ -953,12 +953,11 @@ class OpkgPM(OpkgDpkgPM):
> """
> if (self.d.getVar('FEED_DEPLOYDIR_BASE_URI') or "") != "":
> for arch in self.pkg_archs.split():
> - cfg_file_name = os.path.join(self.target_rootfs,
> - self.d.getVar("sysconfdir"),
> + cfg_file_name = os.path.join(self.d.getVar("sysconfdir", True),
> "opkg",
> "local-%s-feed.conf" % arch)
>
> - with open(cfg_file_name, "w+") as cfg_file:
> + with open(self.target_rootfs + cfg_file_name, "w+") as cfg_file:
> cfg_file.write("src/gz local-%s %s/%s" %
> (arch,
> self.d.getVar('FEED_DEPLOYDIR_BASE_URI'),
> --
> 2.15.0
>
Does anybody has any comment about this patch?
Regards,
Gael
More information about the poky
mailing list