summaryrefslogtreecommitdiff
path: root/meta/classes/rootfs_deb.bbclass
AgeCommit message (Collapse)AuthorFiles
2016-12-16meta: remove True option to getVar callsJoshua Lock1
getVar() now defaults to expanding by default, thus remove the True option from getVar() calls with a regex search and replace. Search made with the following regex: getVar ?\(( ?[^,()]*), True\) Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-11-24rootfs_*.bbclass: don't add BUILDNAME to do_rootfs vardepsexcludeMartin Jansa1
* rootfs_*.bbclass doesn't use this variable anymore, so we can drop it Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2014-08-15rootfs_*: Refactor common depends/lockfile task flagsRichard Purdie1
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-08-15classes: Combine rootfs_<pkgtype> and populate_sdk_<pkgtype>Richard Purdie1
There is no real reason to have these separate files any longer. It does mean in meta-toolchain type recipes some extra variables are defined but it also means the common code can be grouped and maintained together which I believe is more beneficial. We therefore merge the classes. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-07do_rootfs: Add PACKAGE_FEED_URIS as a vardepDavid Nyström1
A bit uncertain on where to put this, suggestions welcome. Needed to automatically rebuild do_rootfs when PACKAGE_FEED_URIS change. Signed-off-by: David Nyström <david.c.nystrom@gmail.com> Signed-off-by: David Nyström <david.nystrom@enea.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2014-02-11Activate the new python rootfs/image creation routinesLaurentiu Palcu1
This commit will: * remove old bash code common to all backends; * create a new do_rootfs() python function that will use the new rootfs/image creation routines; * allow creation of dpkg based images; * fail for rpm/opkg (not implemented yet); Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
2014-02-08rootfs_deb: Fix whitespace issueSaul Wold1
Fixing the following warning: WARNING: Variable rootfs_deb_bad_recommendations contains tabs, please remove these (/srv/ssd/sgw/poky/meta/recipes-extended/images/core-image-lsb-dev.bb) Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-11-22rootfs_*.bbclass: List which post-install scripts can not be runJeffrey C Honig1
When preping a read-only rootfs and finding some post-install scripts that can not be run, list the names of said scripts to avoid having to look around the rootfs to find a list. Signed-off-by: Jeffrey C Honig <jeffrey.honig@windriver.com> Signed-off-by: Jeff Polk <jeff.polk@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-06run-postinst: Ensure that the postinsts are orderedMark Hatle1
The postinst files were being generated using purely the name of the package, this unfortunately meant the run order would be based on the name of the package and not the order in which it was installed on the filesystem. If package A requires package Z to be fully installed, this causes a problem. Note: rpm - as the rpm based install proceeds the order is defined and captured. so the problem is resolved there. ipk - this unfortunately does not appear to solve the problem for ipk, as the status file is not ordered in any appreciable way. This does not cause any regressions however and sets the stage for a proper fix. deb - this -may- fix the deb install. Early testing indicates at least some ordering to the status file. But it's unclear if it completely resolves the issue. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-08-26classes: Remove references to _remove in function names since this may ↵Richard Purdie1
become a bitbake keyword There is a good chance we might want to support a bitbake operator "_remove" which works in a similar way to _append and _prepend. As such, we can't use those keywords in function or variable names. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-08-22package_deb: Add support for NO_RECOMMENDATIONS and PACKAGE_EXCLUDEMark Hatle1
Add support for NO_RECOMMENDATIONS and PACKAGE_EXCLUDE. Also add a warning that ensures users know that BAD_RECOMMENDATIONS support is not implemented in the debian package/rootfs classes. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-06-10rootfs_*.bbclass: add some helper functionsLaurentiu Palcu1
This patch adds the following helper functions: * delayed_postinsts - outputs the list of delayed postinstalls; * save_postinsts - this will save the delayed postinstalls for ipk/deb in /etc/(ipk|deb)_postinsts; * rootfs_remove_packages - removes packages from an image; Additionaly, this patch will remove a piece of code in rootfs_ipk_do_rootfs which will be moved to image.bbclass and used for all backends; [YOCTO #4484] Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-03-23classes/buildhistory: implement history collection for SDKsPaul Eggleton1
SDKs are constructed in a similar manner to images, and the contents can be influenced by a number of different factors, thus tracking the contents of produced SDKs when buildhistory is enabled can help detect the same kinds of issues as with images. This required adding POPULATE_SDK_POST_HOST_COMMAND and SDK_POSTPROCESS_COMMAND variables so that data collection functions can be injected at the appropriate points in the SDK construction process, as well as moving the list_installed_packages and rootfs_list_installed_depends functions from the rootfs_{rpm,ipk,deb} to the package_{rpm,ipk,deb} classes so they can also be called during do_populate_sdk as well as do_rootfs. Implements [YOCTO #3964]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-03-12rootfs_xxx.bbclass: fix bitbake -S hashes mismatch errorRobert Yang1
The bitbake -S <image> has errors, e.g.: NOTE: Reparsing files to collect dependency data ERROR: Bitbake's cached basehash does not match the one we just generated (/buildarea/lyang1/poky/meta/recipes-core/images/core-image-minimal.bb.do_rootfs)! ERROR: The mismatched hashes were 8e44f2296f2d6cdf2ccb0236910ef59b and 46357d5e36713646b47b0fe2233e3c8c This is caused by the BUILDNAME which is defined in cooker.py: if not self.configuration.data.getVar("BUILDNAME"): self.configuration.data.setVar("BUILDNAME", time.strftime('%Y%m%d%H%M')) The time changes during the first parsing and reparsing, so there is the error, we already have: do_rootfs[vardepsexclude] += "BUILDNAME" but what we need is rootfs_xxx_do_rootfs[vardepsexclude] += "BUILDNAME" The do_rootfs doesn't depend on BUILDNAME directly, but indirectly, the depends tree is: do_rootfs -> rootfs_xxx_do_rootfs -> BUILDNAME So add BUILDNAME to rootfs_xxx_do_rootfs[vardepsexclude] would fix the problem. [YOCTO #3299] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-03-01rootfs_deb: remove run-postinsts from ROOTFS_PKGMANAGEKang Kai1
Remove package run-postinsts from ROOTFS_PKGMANAGE. run-postinsts has already added in ROOTFS_PKGMANAGE_BOOTSTRAP and then added to rootfs conditionally by checking image feature "package-management". Signed-off-by: Kang Kai <kai.kang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-02-12rootfs_(ipk|deb|rpm).bbclass: check package installation status after ↵Laurentiu Palcu1
ROOTFS_POSTPROCESS_COMMAND Since the intercept fall-back procedure will change the package installation status, do the checking after ROOTFS_POSTPROCESS_COMMAND ends. Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18classes/rootfs_*: error out if postinstalls exist with read-only rootfsPaul Eggleton1
If there are postinstall scripts to be run on first boot and IMAGE_FEATURES contains "read-only-rootfs", we know this will fail on the target device so just error out during do_rootfs. This check was already implemented for ipk, so add it to the deb and rpm backends. Also make all backends use bberror rather than just echo to display the error. Fixes [YOCTO #3407]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-12-18rootfs_*.bbclass: exclude BUILDNAME var dependency from do_rootfsMartin Jansa1
* I have kernel recipe which depends on other recipe to build tiny initramfs image, without this change it rebuilds not only that initramfs image but also whole kernel when DATE or TIME is changed and OEBasicHash enabled * also resolves ERROR shown when bitbake -S is used for image: ERROR: Bitbake's cached basehash does not match the one we just generated (/OE/oe-core/openembedded-core/meta/recipes-core/images/core-image-minimal.bb.do_rootfs)! ERROR: The mismatched hashes were 8c35cdf8a5d09c03941f081dd9f6d8dc and b5d6e2e5952770557c48c5779ddb73fc Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-12-06rootfs generation: export two new variables to postinst scriptletsLaurentiu Palcu1
In order for the postinst scriptlets to be able to run once we need to export the location of the intercept scripts and also the location of native sysrootfs. The gdk-pixbuf binaries will need the latter because in order to generate the loaders.cache it will need to scan some shared libraries that must be native. Even though the output is a text file. Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-08-17rootfs_deb: move the lock from WORKDIR to DEPLOY_DIR_DEBRobert Yang1
* There would be race issue if we put the lock to the WORKDIR, for example: bitbake core-image-sato core-image-sato-sdk If the lock is in their own WORKDIR, the apt-rootfs.conf and Packages.gz maybe be written by two tasks at the same time, which would cause unexpected errors. * Create ${target_rootfs}/etc since the "tar -C" needs it. Note: * The rpm has put the lock to DEPLOY_DIR_RPM * The ipk doesn't need it since it has locks for each deploy directory and put the opkg.conf in his own WORKDIR, which doesn't like deb put the apt-rootfs.conf in ${STAGING_ETCDIR_NATIVE}/apt/. [YOCTO #2495] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-28buildhistory: improve performance of image info collectionPaul Eggleton1
Reduce the number of calls to the packaging tool, especially in the case of rpm, using helper utilities to gather the required information more efficiently where possible. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2012-07-28Rework installation of dev, dbg, doc, and locale packagesPaul Eggleton1
Use a similar mechanism that was previously used to install locales at rootfs generation time to install other "complementary" packages (e.g. *-dev packages) - i.e. install all of the explicitly requested packages and their dependencies, then get a list of the packages that were installed, and use that list to install the complementary packages. This has been implemented by using a list of globs which should make it easier to extend in future. The previous locale package installation code assumed that the locale packages did not have any dependencies that were not already installed; now that we are installing non-locale packages this is no longer correct. In practice only the rpm backend actually made use of this assumption, so it needed to be changed to call into the existing package backend code to do the complementary package installation rather than calling rpm directly. This fixes the doc-pkgs IMAGE_FEATURES feature to work correctly, and also ensures that all dev/dbg packages get installed for dev-pkgs/dbg-pkgs respectively even if the dependency chains between those packages was not ensuring that already. The code has also been adapted to work correctly with the new SDK-from-image functionality. To that end, an SDKIMAGE_FEATURES variable has been added to allow specifying what extra image features should go into the SDK (extra, because by virtue of installing all of the packages in the image into the target part of the SDK, we already include all of IMAGE_FEATURES) with a default value of "dev-pkgs dbg-pkgs". Fixes [YOCTO #2614]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2012-07-16classes/rootfs_deb: use more reliable check for package existencePaul Eggleton1
It turns out "apt-cache showpkg" does return some information when a package does not exist but another package recommends it, which can occur for empty *-dev packages; so use "apt-cache policy" with a different line count instead. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-07-03image.bbclass: Add support to build the SDK in parallel with the imageMark Hatle1
When building an image recipe, you can now build a companion SDK by calling the populate_sdk task: bitbake -c populate_sdk core-image-minimal Note: there are still issues w/ the SDK not working completely with multilibs. A lock is required between rootfs and populate_sdk activities to prevent configuration file clashes and similar package management problems in ipk and deb based systems. (RPM already had a lock for a different reason.) Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
2012-05-13classes/rootfs_*: fix splitting package dependency stringsPaul Eggleton1
If a + character appears in a version specification within the list of package dependencies, the version will not be removed from the list in list_package_depends/recommends leading to garbage appearing in the dependency graphs generated by buildhistory. To avoid any future problems due to unusual characters appearing in versions, change the regex to match almost any character. Fixes [YOCTO #2451]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-02classes/image: implement generic locale package installationPaul Eggleton1
Let each package-specific rootfs implementation provide basic functions to query the existence of a package and install a list of packages and then have a generic install function so this logic is in one place. Note: unlike previous versions of this code in OE-Core this uses the IMAGE_LINGUAS variable and not IMAGE_LOCALES - note that IMAGE_LINGUAS was what was used in OE-Classic and it is already used in OE-Core in order to install locale-base-*. This will mean that if IMAGE_LINGUAS is left at the default you will now get more packages installed. If you don't want these language support packages then you should set IMAGE_LINGUAS explicitly. This restores locale installation to the same state as OE-Classic, only we now support all the packaging backends. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2011-12-10classes/rootfs_deb: implement query functions for buildhistoryPaul Eggleton1
Implement the functions required for buildhistory to be able to query installed packages, get dependencies etc. for deb-based images. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-21deb packages support: switch from /var/dpkg to /var/lib/dpkgDexuan Cui1
[YOCTO #1086] The pach was backported from OE: http://git.openembedded.net/cgit.cgi/openembedded/commit/?id=41e0fbf792037f249d1b8d283b3de81718887c9f Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
2011-02-01rootfs_deb/package_deb.bbclass: move func from rootfs_deb to package_debLianhao Lu1
package_deb.bbclass: 1. Added new function package_update_index_deb() to generate package index files. 2. Added new function package_install_internal_deb() to install a list deb packages to a specified root directory, with the specified package architecutre information. rootfs_deb.bbclass: Used the above new functions to install the rootfs. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2011-01-31image/package_xx/rootfs_xx.bbclass: move rootfs_xx_log_check().Lianhao Lu1
Move function rootfs_xx_log_check() from rootfs_xx.bbclass to relevant package_xx.bbclass. (Where xx is rpm/ipk/deb). Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2010-10-11rootfs: Update ROOTFS_PKGMANAGE to include atp/zypperRichard Purdie1
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-10-08rootfs_deb: Fix problem with pseduo and rootfs locationSaul Wold1
This address [BUGID #401] to complete dpkg rootfs support Signed-off-by: Saul Wold <Saul.Wold@intel.com>
2010-10-04rootfs_deb: fix parsing a shell cmdSaul Wold1
This fixes [BUGID #360] parsing failure when using package_dep as rootfs generator. Signed-off-by: Saul Wold <Saul.Wold@intel.com>
2010-08-26opkg: finalize the change to var directoryKevin Tian1
commit 1d0757f16beb31551733d9d755d72337ccda9642 changes opkg run state from /usr/lib/opkg to /var/lib/opkg, which however is incomplete and still many important information is kept under old directory including postinst methods. This makes latest boot into a mess. So finalize this movement to /var here. Fix [BUGID #229] Signed-off-by: Kevin Tian <kevin.tian@intel.com>
2009-11-13bitbake.conf/base.bbclass: Rename the staging directory to sysroots and the ↵Richard Purdie1
populate_staging task to populate_sysroot This change makes the purpose of the staging directory more obvious and the taskname more true to what it now actually does. The layout version number is increased due to the change in layout but code to convert existing directories and insert a symlink for backwards compatibility is included. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2008-11-07meta/classes/rootfs_*.bbclass: Fix unset variableRichard Purdie1
2008-11-06classes: Add mechanism to install packages into images only if they've been ↵Richard Purdie1
built
2008-06-30rootfs_deb: use dpkg-scanpackages as our apt-native does not have ↵Marcin Juszkiewicz1
apt-ftparchive anymore git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4749 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-05-21rootfs_deb.bbclass: Use DPKG_ARCH for the architecture field, not ↵Richard Purdie1
TARGET_ARCH since it breaks x86 git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4520 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-05-20poky-image.bbclass: Correctly handle inserting package-managers into images ↵Richard Purdie1
by making it an image feature git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4517 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-05-20rootfs_deb.bbclass: Use /var/dpkg for dpkg status dataRichard Purdie1
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4511 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-05-20rootfs_deb: Export OPKG_OFFLINE_ROOT for update-alternatives fixing dpkg ↵Richard Purdie1
rootfs generation git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4506 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-03-18rootfs_deb.bbclass: s/ipkg/opkg/ - spotten by Koen KooiMarcin Juszkiewicz1
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4043 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-11-12rootfs_deb.bbclass: Make sure alternatives path existsRichard Purdie1
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3119 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-11-05rootfs_deb: Fix hardcoded etc references, add missing mkdirRichard Purdie1
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3074 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-09-01classes: Sync with OERichard Purdie1
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2630 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-08-21packaging: Split deb and ipk creation into separate tasks so changing the ↵Richard Purdie1
packaging type means the new type of packages are automatically generated. git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2526 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-08-17rootfs_deb.bbclass: Remove spurious mkdir, I needed this because my deploy/ ↵Ross Burton1
was hosed git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2508 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-08-17Create usr/lib/ipkg in the rootfs before putting symlinks in itRoss Burton1
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2506 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-08-17Instead of exit 0, do exit 1. 0 is 0, so this doesn't work as intendedRoss Burton1
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2505 311d38ba-8fff-0310-9ca6-ca027cbcb966