Hello Alex, Seems to not be so quick to change for the deb packages. First I had issues building the sdk on the master branch as it runs some postinst scripts that leak out of the yocto sandbox and into the host system [1]. Not sure if that’s a recent regression as I don’t normally use deb packages in Yocto.
Then I found that apt will fight over a lock file written into the recipe-sysroots-native directory [2]. I am not so familiar with apt-get to resolve that trivially. I’ll try to re-visit it another day. Kind regards, Michael [1] Setting up nativesdk-shadow (4.8.1-r0) ... mkdir: cannot create directory ‘/usr/lib/opkg’: Permission denied dpkg: error processing package nativesdk-shadow (--configure): installed nativesdk-shadow package post-installation script subprocess returned error exit status 1 [2] E: Could not get lock /nvme/poky/build-deb/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/recipe-sysroot-native/var/cache/apt/archives/lock - open (11: Resource temporarily unavailable) -- BMW Car IT GmbH Michael Ho Spezialist Entwicklung – Build and Release Engineering Lise-Meitner-Straße 14 89081 Ulm Tel.: +49-731-37804-071 Mobil: +49-152-54980-471 Fax: +49-731-37804-001 Mail: [email protected]<mailto:[email protected]> Web: http://www.bmw-carit.de<http://www.bmw-carit.de/> ------------------------------------------------------------------------- BMW Car IT GmbH Geschäftsführer: Kai-Uwe Balszuweit und Michael Böttrich Sitz und Registergericht: München HRB 134810 ------------------------------------------------------------------------- From: Alexander Kanavin <[email protected]> Date: Monday, 11. January 2021 at 15:45 To: "Ho Michael, JC-3UL" <[email protected]> Cc: OE-core <[email protected]> Subject: Re: [OE-core] [PATCH] rootfs_ipk: allow do_populate_sdk in parallel to do_rootfs If you can fix the deb packaging easily, then please do so, but it is not mandatory, and don't spend too much time if it turns out to be a time sink. Alex On Mon, 11 Jan 2021 at 15:01, <[email protected]<mailto:[email protected]>> wrote: Hello Alexander, Did a quick test and it seems the rpm packaging classes don’t have this issue. The rootfs_deb bbclass however has the same lock files like with rootfs_ipk. Should I try to patch this too to keep them aligned? Kind regards, Michael -- BMW Car IT GmbH Michael Ho Spezialist Entwicklung – Build and Release Engineering Lise-Meitner-Straße 14 89081 Ulm Tel.: +49-731-37804-071 Mobil: +49-152-54980-471 Fax: +49-731-37804-001 Mail: [email protected]<mailto:[email protected]> Web: http://www.bmw-carit.de<http://www.bmw-carit.de/> ------------------------------------------------------------------------- BMW Car IT GmbH Geschäftsführer: Kai-Uwe Balszuweit und Michael Böttrich Sitz und Registergericht: München HRB 134810 ------------------------------------------------------------------------- From: Alexander Kanavin <[email protected]<mailto:[email protected]>> Date: Monday, 11. January 2021 at 13:46 To: "Ho Michael, JC-3UL" <[email protected]<mailto:[email protected]>> Cc: OE-core <[email protected]<mailto:[email protected]>> Subject: Re: [OE-core] [PATCH] rootfs_ipk: allow do_populate_sdk in parallel to do_rootfs Does deb/rpm packaging already have this feature? Alex On Mon, 11 Jan 2021 at 13:45, Michael Ho <[email protected]<mailto:[email protected]>> wrote: From: Michael Ho <[email protected]<mailto:[email protected]>> Switch do_populate_sdk for the ipk package manager to use a separate target opkg config file and separate the lockfiles restricting do_rootfs and do_populate_sdk from running in parallel. This way if an image recipe includes a dependency to do_populate_sdk by default then it will run in parallel to do_rootfs saving time compared to the sequential execution. Signed-off-by: Michael Ho <[email protected]<mailto:[email protected]>> --- meta/classes/package_ipk.bbclass | 1 + meta/classes/rootfs_ipk.bbclass | 4 ++-- meta/lib/oe/package_manager/ipk/sdk.py | 6 ++++++ 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/meta/classes/package_ipk.bbclass b/meta/classes/package_ipk.bbclass index 79cb36c..d31dba0 100644 --- a/meta/classes/package_ipk.bbclass +++ b/meta/classes/package_ipk.bbclass @@ -4,6 +4,7 @@ IMAGE_PKGTYPE ?= "ipk" IPKGCONF_TARGET = "${WORKDIR}/opkg.conf" IPKGCONF_SDK = "${WORKDIR}/opkg-sdk.conf" +IPKGCONF_SDK_TARGET = "${WORKDIR}/opkg-sdk-target.conf" PKGWRITEDIRIPK = "${WORKDIR}/deploy-ipks" diff --git a/meta/classes/rootfs_ipk.bbclass b/meta/classes/rootfs_ipk.bbclass index f1e0219..245c256 100644 --- a/meta/classes/rootfs_ipk.bbclass +++ b/meta/classes/rootfs_ipk.bbclass @@ -14,8 +14,8 @@ do_rootfs[recrdeptask] += "do_package_write_ipk do_package_qa" do_rootfs[vardeps] += "PACKAGE_FEED_URIS PACKAGE_FEED_BASE_PATHS PACKAGE_FEED_ARCHS" do_rootfs[lockfiles] += "${WORKDIR}/ipk.lock" -do_populate_sdk[lockfiles] += "${WORKDIR}/ipk.lock" -do_populate_sdk_ext[lockfiles] += "${WORKDIR}/ipk.lock" +do_populate_sdk[lockfiles] += "${WORKDIR}/sdk-ipk.lock" +do_populate_sdk_ext[lockfiles] += "${WORKDIR}/sdk-ipk.lock" OPKG_PREPROCESS_COMMANDS = "" diff --git a/meta/lib/oe/package_manager/ipk/sdk.py b/meta/lib/oe/package_manager/ipk/sdk.py index 37af034..e2ca415 100644 --- a/meta/lib/oe/package_manager/ipk/sdk.py +++ b/meta/lib/oe/package_manager/ipk/sdk.py @@ -14,6 +14,12 @@ class PkgSdk(Sdk): def __init__(self, d, manifest_dir=None): super(PkgSdk, self).__init__(d, manifest_dir) + # In sdk_list_installed_packages the call to opkg is hardcoded to + # always use IPKGCONF_TARGET and there's no exposed API to change this + # so simply override IPKGCONF_TARGET to use this separated config file. + ipkgconf_sdk_target = d.getVar("IPKGCONF_SDK_TARGET") + d.setVar("IPKGCONF_TARGET", ipkgconf_sdk_target) + self.target_conf = self.d.getVar("IPKGCONF_TARGET") self.host_conf = self.d.getVar("IPKGCONF_SDK") -- 2.7.4
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#146596): https://lists.openembedded.org/g/openembedded-core/message/146596 Mute This Topic: https://lists.openembedded.org/mt/79594382/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
