[poky] [PATCH 1/1] package_manager.py: fix opkg custom config path
    Gaël PORTAY 
    gael.portay at savoirfairelinux.com
       
    Thu Dec  7 13:38:47 PST 2017
    
    
  
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
    
    
More information about the poky
mailing list