summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/run-postinsts
AgeCommit message (Collapse)Author
2017-08-16run-postinsts: do not reload daemon configurationMax Krummenacher
In case a systemd service disables itself while init is still in its boot sequence the reloading of the service files can be problematic. In that case: It seems that systemd looses the state of .device units, and some services depend on such units (namely serial consoles such as serial-getty@ttymxc0.service). As a result no getty is spawned on the affected serial tty. After a power-cycle the second boot (which does not disable services) succeeds. The following sequence shows this problem: | Jan 09 16:36:28 apalis-t30 systemctl[162]: Removed /etc/systemd/system/sysinit.target.wants/run-postinsts.service. | Jan 09 16:36:28 apalis-t30 systemd[1]: Reloading. | ... | And then the failing one: | Feb 22 15:33:15 apalis-t30 systemd[1]: dev-ttyS0.device: Job dev-ttyS0.device/start timed out. | Feb 22 15:33:15 apalis-t30 systemd[1]: Timed out waiting for device dev-ttyS0.device. | Feb 22 15:33:15 apalis-t30 systemd[1]: Dependency failed for Serial Getty on ttyS0. | Feb 22 15:33:15 apalis-t30 systemd[1]: serial-getty@ttyS0.service: Job serial-getty@ttyS0.service/start failed with result 'dependency'. | Feb 22 15:33:15 apalis-t30 systemd[1]: dev-ttyS0.device: Job dev-ttyS0.device/start failed with result 'timeout'. | Feb 22 15:33:15 apalis-t30 systemd[1]: Reached target Login Prompts. (the time has been updated between this two events, but that does not influence the issue) Using --no-reload in the service file avoids the "Reloading." message above and seems to not cause such issues anymore. Reported-by: Stefan Agner <stefan.agner@toradex.com> Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com> (cherry picked from commit 4a425d05bac5dcba023b67aa3d726f7e7869404f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-12-08run-postinsts: Print message before running deferred postinst scriptsHaris Okanovic
Opkg can defer running postinst scripts to first boot, which can take a while on some systems. The output of `opkg configure` (or whatever pm is used) is redirected to a file when logging is enabled (I.e. $POSTINST_LOGGING == 1), making the machine appear hung during this process. This change simply prints a wait message on the console to inform the user of this potentially long and silent operation so that they do not mistakenly reboot their machine. Why not simply `tee` the output instead? Tee might be provided by BusyBox in some distros, which may need to run update-alternatives in the very postinst scripts being executed by this process. It's therefore not safe to assume Tee (or any other packaged util) is available until the configure process finishes. Signed-off-by: Haris Okanovic <haris.okanovic@ni.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-12-07run-postinsts: Use opkg/dpkg to configure when possibleJussi Kukkonen
Currently run-postinsts script has code to run postinst scripts via opkg/dpkg configure but that code is never used. The advantage of using package managers instead of just executing the scripts is to keep the package manager DB updated. Fix the script so that the package managers are used when appropriate. Also use $localstatedir for the opkg runtime file location. Fixes [YOCTO #10478]. Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-10-28Remove $COREBASE/LICENSE from LIC_FILES_CHKSUMOlaf Mandel
Several recipes reference the LICENSE file in their LIC_FILES_CHKSUM variable as ${COREBASE}/LICENSE. This forces distribution providers to keep this file verbatim or to overload the affected recipes. The section "Moving to the Yocto Project 1.6 Release" in the Yocto manual suggests removing the LICENSE file where possible. Remove LICENSE in cases where COPYING.MIT is also given and replace LICENSE with COPYING.MIT if the former was the only entry. All modified recipes specify LICENSE = "MIT" and none of the in-tree files specify a different license either. As the packages do not change (the license files are not contained in them), do not increase PR. Signed-off-by: Olaf Mandel <o.mandel@menlosystems.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-07-08run-postinsts: Correct comment misspelling, "rpm-posinsts".Robert P. J. Day
Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01opkg: upgrade to v0.3.0Alejandro del Castillo
Changes required: - Rename opkg-cl to opkg - Add libarchive dependency - Drop backport patches - Drop obsolete directory options - Add patch to handle empty index files Based on initial work by Paul Barker. Signed-off-by: Alejandro del Castillo <alejandro.delcastillo@ni.com> CC: Paul Barker <paul@paulbarker.me.uk> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-31run-postinsts: use ${localstatedir} instead of hardcoding /var/libAndré Draszik
Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-06-26run-postinsts: Fix ipk package management detectionAníbal Limón
run-postinsts always mark ipk package management as true, causing problems when try to execute opkg-cl and isn't present. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-01-23meta: set proper S valuePetter Mabäcker
After removal of auto-creating S we must ensure that all recipes are using a proper value for S. Fix all recipes that only need to set S equals to WORKDIR. [YOCTO #5627] Signed-off-by: Petter Mabäcker <petter@technux.se>
2014-09-03run-postinsts.service: remove redundant lineChen Qi
The basic.target itself requires sysinit.target, so there's no need to write this redundant line in the run-postinsts unit file. Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-27run-postinsts: fix issue with checking IMAGE_FEATURESLaurentiu Palcu
The old implementation was wrong. It was not very generic and it checked IMAGE_FEATURES while building the recipe, which led to various issues with the generation of the final script. That is, the run-postinsts script was generated once, while building the package for the first time. Hence, any other changes to IMAGE_FEATURES, like removing/adding 'package-management' did not reflect in the final script. This commit makes run-postinsts script autodetect the backend used for creating the image, making it generic. [YOCTO #5666] [YOCTO #5972] Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-07run-postinsts: use it for opkg/dpkg tooLaurentiu Palcu
Currently, opkg/dpkg have their own postinstalls that create a run-postinsts script which is run at first boot. This commit prepares the run-postinsts recipe/script to be used by opkg/dpkg when DISTRO_FEATURES includes package-management. [YOCTO #5666] Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-28run-postinsts: Add systemd service fileRoss Burton
This patch mainly adds a systmd service file for run-postinsts, which is started at first boot to run the post-install scripts. Apart from this, this patch also modifies the installation location of run-postinsts to ${sbindir}. This is because this script would be used by both sysvinit and systemd based images. So it's more reasonable to make it locate under ${sbindir}. [YOCTO #5719] Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2014-01-28run-postinsts: remove the init script after a clean start-upChen Qi
If we enable ipk/deb package back-end, and we have 'package-management' in our IMAGE_FEATURES, then the /etc/rcS.d/S99run-postinsts would still exist in our system after a clean start-up. The initial design for run-postinsts requires the related init script to be removed if there's no more post-install script left in the system. This patch fixes this problem. [YOCTO #5718] Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2014-01-02Update after toplevel LICENSE file checksum changeRichard Purdie
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-02Replace one-line DESCRIPTION with SUMMARYPaul Eggleton
A lot of our recipes had short one-line DESCRIPTION values and no SUMMARY value set. In this case it's much better to just set SUMMARY since DESCRIPTION is defaulted from SUMMARY anyway and then the SUMMARY is at least useful. I also took the opportunity to fix up a lot of the new SUMMARY values, making them concisely explain the function of the recipe / package where possible. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2013-09-06run-postinsts: move script execution from S98 to S99 in rcS.dLaurentiu Palcu
Apparently, when opkg/dpkg and run-postinsts are installed in the same time, opkg/dpkg postinstall overwrites the run-postinsts link in rcS.d. This will make run-postinsts script useless and the delayed postinstalls will not be run. This issue happens only when 'package-management' is disabled and, in the same time, dpkg/opkg ends up in the image: either pulled by some dependency or manually installed. With this patch, both opkg/dpkg and run-postinsts scripts will run but the former will silently fail because the package metadata is removed from the image since 'pacakge-management' is disabled. [YOCTO #4484] Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-07-26run-postinsts: add more logging to the log file to make things clearerChen Qi
When all postinsts scripts succeed at system startup, it's very possible that the log file /var/log/postinstall.log is empty. This is kind of confusing, as that file is supposed to hold information about the postinsts. Add more logging to the log file to make things clearer. Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-07-26run-postinsts: fix commentChen Qi
The run-postinsts script also handles the #SYSCONFDIR#/rpm-postinsts directory. Add it to the comment for clarity. Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-07-18run-postinsts: Fix typoYi Zhao
Fix a typo for stderr redirection. Signed-off-by: Yi Zhao <yi.zhao@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-06-10run-postinsts: make it genericLaurentiu Palcu
This recipe is used only when the package manager is not deployed on target and there still are delayed postinstalls that need to be run on target. At the moment, run-postinsts is targeted to dpkg/opkg. RPM uses another recipe, called rpm-postinsts which, in turn, is used even when the rpm package is deployed. This patch intends to make run-postinsts generic and deprecate rpm-postinsts. Here's why: * when opkg/dpkg are not deplyed, the meta-data files are useless. Hence, the awk script is not needed. The postinstall files are already saved in /etc/(deb|ipk)-postinsts directory and we can use the same procedure as in rpm's case; Also, the recipe is moved out from meta/recipes-devel/dpkg to meta/recipes-devel/run-postinsts. Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>