* [PATCH 0/2] Debugfs fixes with different than default OPKGLIBDIR @ 2017-03-23 10:34 Martin Jansa 2017-03-23 10:34 ` [PATCH 1/2] rootfs.py: Respect OPKGLIBDIR variable Martin Jansa 2017-03-23 10:34 ` [PATCH 2/2] package_manager.py: respect OPKGLIBDIR Martin Jansa 0 siblings, 2 replies; 5+ messages in thread From: Martin Jansa @ 2017-03-23 10:34 UTC (permalink / raw) To: openembedded-core The following changes since commit d1d55041e38b12d40f896834b56475ea19a6047f: sstate: Ensure installation directory is empty before execution (2017-03-22 10:12:10 +0000) are available in the git repository at: git://git.openembedded.org/openembedded-core-contrib jansa/master-rootfs-fix http://cgit.openembedded.org/openembedded-core-contrib/log/?h=jansa/master-rootfs-fix Martin Jansa (2): rootfs.py: Respect OPKGLIBDIR variable package_manager.py: respect OPKGLIBDIR meta/lib/oe/package_manager.py | 21 ++++++++++++++------- meta/lib/oe/rootfs.py | 4 +++- 2 files changed, 17 insertions(+), 8 deletions(-) -- 2.12.0 ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 1/2] rootfs.py: Respect OPKGLIBDIR variable 2017-03-23 10:34 [PATCH 0/2] Debugfs fixes with different than default OPKGLIBDIR Martin Jansa @ 2017-03-23 10:34 ` Martin Jansa 2017-03-23 12:21 ` Martin Jansa [not found] ` <cover.1490271643.git.Martin.Jansa@gmail.com> 2017-03-23 10:34 ` [PATCH 2/2] package_manager.py: respect OPKGLIBDIR Martin Jansa 1 sibling, 2 replies; 5+ messages in thread From: Martin Jansa @ 2017-03-23 10:34 UTC (permalink / raw) To: openembedded-core * when OPKGLIBDIR doesn't have the default /var/lib value it will silently fail to copy package database from normal rootfs to debugfs rootfs and then when trying to install *-dbg complimentary packages it won't install anything, because installed_pkgs.txt file generated from debugfs is empty Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> --- meta/lib/oe/rootfs.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/meta/lib/oe/rootfs.py b/meta/lib/oe/rootfs.py index 5e1c09762a..068b784c51 100644 --- a/meta/lib/oe/rootfs.py +++ b/meta/lib/oe/rootfs.py @@ -946,7 +946,9 @@ class OpkgRootfs(DpkgOpkgRootfs): if self.progress_reporter: self.progress_reporter.next_stage() - self._setup_dbg_rootfs(['/var/lib/opkg']) + opkg_lib_dir = self.d.getVar('OPKGLIBDIR', True) + opkg_dir = os.path.join(opkg_lib_dir, 'opkg') + self._setup_dbg_rootfs([opkg_dir]) execute_pre_post_process(self.d, opkg_post_process_cmds) -- 2.12.0 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 1/2] rootfs.py: Respect OPKGLIBDIR variable 2017-03-23 10:34 ` [PATCH 1/2] rootfs.py: Respect OPKGLIBDIR variable Martin Jansa @ 2017-03-23 12:21 ` Martin Jansa [not found] ` <cover.1490271643.git.Martin.Jansa@gmail.com> 1 sibling, 0 replies; 5+ messages in thread From: Martin Jansa @ 2017-03-23 12:21 UTC (permalink / raw) To: openembedded-core [-- Attachment #1: Type: text/plain, Size: 1274 bytes --] On Thu, Mar 23, 2017 at 11:34:22AM +0100, Martin Jansa wrote: > * when OPKGLIBDIR doesn't have the default /var/lib value it will > silently fail to copy package database from normal rootfs to debugfs > rootfs and then when trying to install *-dbg complimentary packages > it won't install anything, because installed_pkgs.txt file generated > from debugfs is empty > > Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> > --- > meta/lib/oe/rootfs.py | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/meta/lib/oe/rootfs.py b/meta/lib/oe/rootfs.py > index 5e1c09762a..068b784c51 100644 > --- a/meta/lib/oe/rootfs.py > +++ b/meta/lib/oe/rootfs.py > @@ -946,7 +946,9 @@ class OpkgRootfs(DpkgOpkgRootfs): > if self.progress_reporter: > self.progress_reporter.next_stage() > > - self._setup_dbg_rootfs(['/var/lib/opkg']) > + opkg_lib_dir = self.d.getVar('OPKGLIBDIR', True) I can drop True here, v2 coming. > + opkg_dir = os.path.join(opkg_lib_dir, 'opkg') > + self._setup_dbg_rootfs([opkg_dir]) > > execute_pre_post_process(self.d, opkg_post_process_cmds) > > -- > 2.12.0 > -- Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 201 bytes --] ^ permalink raw reply [flat|nested] 5+ messages in thread
[parent not found: <cover.1490271643.git.Martin.Jansa@gmail.com>]
* [PATCHv2 1/2] rootfs.py: Respect OPKGLIBDIR variable [not found] ` <cover.1490271643.git.Martin.Jansa@gmail.com> @ 2017-03-23 12:21 ` Martin Jansa 0 siblings, 0 replies; 5+ messages in thread From: Martin Jansa @ 2017-03-23 12:21 UTC (permalink / raw) To: openembedded-core * when OPKGLIBDIR doesn't have the default /var/lib value it will silently fail to copy package database from normal rootfs to debugfs rootfs and then when trying to install *-dbg complimentary packages it won't install anything, because installed_pkgs.txt file generated from debugfs is empty Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> --- meta/lib/oe/rootfs.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/meta/lib/oe/rootfs.py b/meta/lib/oe/rootfs.py index 5e1c09762a..96591f370e 100644 --- a/meta/lib/oe/rootfs.py +++ b/meta/lib/oe/rootfs.py @@ -946,7 +946,9 @@ class OpkgRootfs(DpkgOpkgRootfs): if self.progress_reporter: self.progress_reporter.next_stage() - self._setup_dbg_rootfs(['/var/lib/opkg']) + opkg_lib_dir = self.d.getVar('OPKGLIBDIR') + opkg_dir = os.path.join(opkg_lib_dir, 'opkg') + self._setup_dbg_rootfs([opkg_dir]) execute_pre_post_process(self.d, opkg_post_process_cmds) -- 2.12.0 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 2/2] package_manager.py: respect OPKGLIBDIR 2017-03-23 10:34 [PATCH 0/2] Debugfs fixes with different than default OPKGLIBDIR Martin Jansa 2017-03-23 10:34 ` [PATCH 1/2] rootfs.py: Respect OPKGLIBDIR variable Martin Jansa @ 2017-03-23 10:34 ` Martin Jansa 1 sibling, 0 replies; 5+ messages in thread From: Martin Jansa @ 2017-03-23 10:34 UTC (permalink / raw) To: openembedded-core * respect it for incremental rootfs generation * add lists_dir option to opkg.conf * also fix setting info_dir and status_file when they use default value, the problem is that self.opkg_dir is already prefixed with rootfs directory, comparing it with /var/lib/opkg always returned false and the options were appended to config file unnecessary * with opkg 0.3.4 we can use VARDIR prefix added in: commit d2a8e23dc669adc398f4bb8bcfcabfcf925708f7 Author: Florin Gherendi <floring2502@gmail.com> Date: Mon Dec 19 12:25:38 2016 +0200 libopkg: make the /var and /etc directories configurable at compile time. Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> --- meta/lib/oe/package_manager.py | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/meta/lib/oe/package_manager.py b/meta/lib/oe/package_manager.py index 2a4df61998..389ba7ce05 100644 --- a/meta/lib/oe/package_manager.py +++ b/meta/lib/oe/package_manager.py @@ -944,13 +944,15 @@ class OpkgPM(OpkgDpkgPM): self.d.getVar('FEED_DEPLOYDIR_BASE_URI'), arch)) - if self.opkg_dir != '/var/lib/opkg': + if self.d.getVar('OPKGLIBDIR') != '/var/lib': # There is no command line option for this anymore, we need to add # info_dir and status_file to config file, if OPKGLIBDIR doesn't have # the default value of "/var/lib" as defined in opkg: - # libopkg/opkg_conf.h:#define OPKG_CONF_DEFAULT_INFO_DIR "/var/lib/opkg/info" - # libopkg/opkg_conf.h:#define OPKG_CONF_DEFAULT_STATUS_FILE "/var/lib/opkg/status" + # libopkg/opkg_conf.h:#define OPKG_CONF_DEFAULT_LISTS_DIR VARDIR "/lib/opkg/lists" + # libopkg/opkg_conf.h:#define OPKG_CONF_DEFAULT_INFO_DIR VARDIR "/lib/opkg/info" + # libopkg/opkg_conf.h:#define OPKG_CONF_DEFAULT_STATUS_FILE VARDIR "/lib/opkg/status" cfg_file.write("option info_dir %s\n" % os.path.join(self.d.getVar('OPKGLIBDIR'), 'opkg', 'info')) + cfg_file.write("option lists_dir %s\n" % os.path.join(self.d.getVar('OPKGLIBDIR'), 'opkg', 'lists')) cfg_file.write("option status_file %s\n" % os.path.join(self.d.getVar('OPKGLIBDIR'), 'opkg', 'status')) @@ -969,13 +971,15 @@ class OpkgPM(OpkgDpkgPM): config_file.write("src oe-%s file:%s\n" % (arch, pkgs_dir)) - if self.opkg_dir != '/var/lib/opkg': + if self.d.getVar('OPKGLIBDIR') != '/var/lib': # There is no command line option for this anymore, we need to add # info_dir and status_file to config file, if OPKGLIBDIR doesn't have # the default value of "/var/lib" as defined in opkg: - # libopkg/opkg_conf.h:#define OPKG_CONF_DEFAULT_INFO_DIR "/var/lib/opkg/info" - # libopkg/opkg_conf.h:#define OPKG_CONF_DEFAULT_STATUS_FILE "/var/lib/opkg/status" + # libopkg/opkg_conf.h:#define OPKG_CONF_DEFAULT_LISTS_DIR VARDIR "/lib/opkg/lists" + # libopkg/opkg_conf.h:#define OPKG_CONF_DEFAULT_INFO_DIR VARDIR "/lib/opkg/info" + # libopkg/opkg_conf.h:#define OPKG_CONF_DEFAULT_STATUS_FILE VARDIR "/lib/opkg/status" config_file.write("option info_dir %s\n" % os.path.join(self.d.getVar('OPKGLIBDIR'), 'opkg', 'info')) + config_file.write("option lists_dir %s\n" % os.path.join(self.d.getVar('OPKGLIBDIR'), 'opkg', 'lists')) config_file.write("option status_file %s\n" % os.path.join(self.d.getVar('OPKGLIBDIR'), 'opkg', 'status')) def insert_feeds_uris(self, feed_uris, feed_base_paths, feed_archs): @@ -1131,7 +1135,10 @@ class OpkgPM(OpkgDpkgPM): # Create an temp dir as opkg root for dummy installation temp_rootfs = self.d.expand('${T}/opkg') - temp_opkg_dir = os.path.join(temp_rootfs, 'var/lib/opkg') + opkg_lib_dir = self.d.getVar('OPKGLIBDIR', True) + if opkg_lib_dir[0] == "/": + opkg_lib_dir = opkg_lib_dir[1:] + temp_opkg_dir = os.path.join(temp_rootfs, opkg_lib_dir, 'opkg') bb.utils.mkdirhier(temp_opkg_dir) opkg_args = "-f %s -o %s " % (self.config_file, temp_rootfs) -- 2.12.0 ^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2017-03-23 12:21 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-03-23 10:34 [PATCH 0/2] Debugfs fixes with different than default OPKGLIBDIR Martin Jansa
2017-03-23 10:34 ` [PATCH 1/2] rootfs.py: Respect OPKGLIBDIR variable Martin Jansa
2017-03-23 12:21 ` Martin Jansa
[not found] ` <cover.1490271643.git.Martin.Jansa@gmail.com>
2017-03-23 12:21 ` [PATCHv2 " Martin Jansa
2017-03-23 10:34 ` [PATCH 2/2] package_manager.py: respect OPKGLIBDIR Martin Jansa
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox