Hi,

I have tried schemes like these and found that although they appear to work 
during rootfs generation, it can result in RPM transaction failures if you try 
to perform in-place upgrades using RPMs.  The post install scriptlets can fail 
as they attempt to run the update-rc.d command, passing bad (or missing) parms.

Fortunately for this particular case there is a hook variable that is used to 
leep sysvinit out of the way when using system (or other alternative).  I fixed 
it by adding the following to my bbappend…

  INHIBIT_UPDATERCD_BBCLASS = “1”



Regards,

Darcy

Darcy Watkins ::  Senior Staff Engineer, Firmware

SIERRA WIRELESS
Direct  +1 604 233 7989   ::  Fax  +1 604 231 1109  ::  Main  +1 604 231 1100
13811 Wireless Way  :: Richmond, BC Canada V6V 3A4
[P2]
dwatk...@sierrawireless.com<mailto:dwatk...@sierrawireless.com> :: 
www.sierrawireless.com<http://www.sierrawireless.com/>

From: yocto-boun...@yoctoproject.org <yocto-boun...@yoctoproject.org> On Behalf 
Of Joshua Watt
Sent: November-01-18 10:39 AM
To: Kristupas Savickas <kristupas.savic...@teltonika.lt>; yocto@yoctoproject.org
Subject: Re: [yocto] Removing hostapd init file

On Tue, 2018-10-23 at 09:03 +0300, Kristupas Savickas wrote:

Greetings,

I'm trying to remove the hostapd init file as I'll handle startup of it on my 
own. I've created a .bbappend file in my layer to do this:

do_install_append() {
    rm -rf ${D}${sysconfdir}/init.d
}

However, this results in a compilation warning when building my image and the 
ipk-postinst is still being run on my target:

WARNING: tlt-image-1.0-r0 do_rootfs: hostapd.postinst returned 1, marking as 
unpacked only, configuration required on target.
WARNING: tlt-image-1.0-r0 do_rootfs: Intentionally failing postinstall 
scriptlets of ['hostapd'] to defer them to first boot is deprecated. Please 
place them into pkg_postinst_ontarget_${PN} ().
If deferring to first boot wasn't the intent, then scriptlet failure may mean 
an issue in the recipe, or a regression elsewhere.
Details of the failure are in 
/home/kristupas/projects/fml-linux-sdk-qtel/oe-core/build/tmp-glibc/work/fml001-oe-linux-gnueabi/tlt-image/1.0-r0/temp/log.do_rootfs.
WARNING: tlt-image-1.0-r0 do_rootfs: [log_check] tlt-image: found 1 warning 
message in the logfile:
[log_check] WARNING: Intentionally failing postinstall scriptlets of 
['hostapd'] to defer them to first boot is deprecated. Please place them into 
pkg_postinst_ontarget_${PN} ().



I tried setting INITSCRIPT_NAME to "" in my .bbappend, but it fails with an 
error during do_rootfs task of my image:
cat 
build/tmp-glibc/work/fml001-oe-linux-gnueabi/tlt-image/1.0-r0/temp/log.do_rootfs.24919
 | grep hostapd
NOTE: Found hostapd-dbg_2.6-r0_armv7ahf-neon.ipk in Packages, but mtime differs 
- re-reading
Found hostapd-dev_2.6-r0_armv7ahf-neon.ipk in Packages, but mtime differs - 
re-reading
Found hostapd_2.6-r0_armv7ahf-neon.ipk in Packages, but mtime differs - 
re-reading
NOTE: Installing the following packages: android-system-core-adbd 
android-system-core-liblog android-system-core-usb ap6212 avlcommd base-files 
base-passwd boot-config config-backup curl dnsmasq dropbear ethtool eventslog 
factory-restore firewall3 fsl-rc-local gps-control gps-utils gpsd gpsd-conf 
gsmd hostapd iio-utils iiod iproute2 iptables iputils iw kernel-modules 
libcutils0 libglib-2.0-0 libnl-3-200 libstdc++6 libtlt-lua libxml2 
lsm6dsl-rebind lsqlite3 luci lucihttp mnf-info motion-monitor mtd-utils-ubifs 
netifd openssl os-release packagegroup-core-boot perl ppp preinit procd qmuxd 
recgend rpcd run-postinsts shadow sms-utilities sqlite3 storage sysntpd system 
sysup tlt-base-files tlt-connection-manager tlt-eventslog-lua tzdata ubus 
uhttpd update-rc.d ustream-ssl
NOTE: 
/home/kristupas/projects/fml-linux-sdk-qtel/oe-core/build/tmp-glibc/work/fml001-oe-linux-gnueabi/tlt-image/1.0-r0/recipe-sysroot-native/usr/bin/opkg
 --volatile-cache -f 
/home/kristupas/projects/fml-linux-sdk-qtel/oe-core/build/tmp-glibc/work/fml001-oe-linux-gnueabi/tlt-image/1.0-r0/opkg.conf
 -t 
/home/kristupas/projects/fml-linux-sdk-qtel/oe-core/build/tmp-glibc/work/fml001-oe-linux-gnueabi/tlt-image/1.0-r0/temp/ipktemp/
 -o 
/home/kristupas/projects/fml-linux-sdk-qtel/oe-core/build/tmp-glibc/work/fml001-oe-linux-gnueabi/tlt-image/1.0-r0/rootfs
  --force_postinstall --prefer-arch-to-version --no-install-recommends  
--force-overwrite install android-system-core-adbd android-system-core-liblog 
android-system-core-usb ap6212 avlcommd base-files base-passwd boot-config 
config-backup curl dnsmasq dropbear ethtool eventslog factory-restore firewall3 
fsl-rc-local gps-control gps-utils gpsd gpsd-conf gsmd hostapd iio-utils iiod 
iproute2 iptables iputils iw kernel-modules libcutils0 libglib-2.0-0 
libnl-3-200 libstdc++6 libtlt-lua libxml2 lsm6dsl-rebind lsqlite3 luci lucihttp 
mnf-info motion-monitor mtd-utils-ubifs netifd openssl os-release 
packagegroup-core-boot perl ppp preinit procd qmuxd recgend rpcd run-postinsts 
shadow sms-utilities sqlite3 storage sysntpd system sysup tlt-base-files 
tlt-connection-manager tlt-eventslog-lua tzdata ubus uhttpd update-rc.d 
ustream-ssl
ERROR: Unable to install packages. Command 
'/home/kristupas/projects/fml-linux-sdk-qtel/oe-core/build/tmp-glibc/work/fml001-oe-linux-gnueabi/tlt-image/1.0-r0/recipe-sysroot-native/usr/bin/opkg
 --volatile-cache -f 
/home/kristupas/projects/fml-linux-sdk-qtel/oe-core/build/tmp-glibc/work/fml001-oe-linux-gnueabi/tlt-image/1.0-r0/opkg.conf
 -t 
/home/kristupas/projects/fml-linux-sdk-qtel/oe-core/build/tmp-glibc/work/fml001-oe-linux-gnueabi/tlt-image/1.0-r0/temp/ipktemp/
 -o 
/home/kristupas/projects/fml-linux-sdk-qtel/oe-core/build/tmp-glibc/work/fml001-oe-linux-gnueabi/tlt-image/1.0-r0/rootfs
  --force_postinstall --prefer-arch-to-version --no-install-recommends  
--force-overwrite install android-system-core-adbd android-system-core-liblog 
android-system-core-usb ap6212 avlcommd base-files base-passwd boot-config 
config-backup curl dnsmasq dropbear ethtool eventslog factory-restore firewall3 
fsl-rc-local gps-control gps-utils gpsd gpsd-conf gsmd hostapd iio-utils iiod 
iproute2 iptables iputils iw kernel-modules libcutils0 libglib-2.0-0 
libnl-3-200 libstdc++6 libtlt-lua libxml2 lsm6dsl-rebind lsqlite3 luci lucihttp 
mnf-info motion-monitor mtd-utils-ubifs netifd openssl os-release 
packagegroup-core-boot perl ppp preinit procd qmuxd recgend rpcd run-postinsts 
shadow sms-utilities sqlite3 storage sysntpd system sysup tlt-base-files 
tlt-connection-manager tlt-eventslog-lua tzdata ubus uhttpd update-rc.d 
ustream-ssl' returned 255:
Installing hostapd (2.6) on root
Downloading 
file:/home/kristupas/projects/fml-linux-sdk-qtel/oe-core/build/tmp-glibc/deploy/ipk/armv7ahf-neon/hostapd_2.6-r0_armv7ahf-neon.ipk<file://home/kristupas/projects/fml-linux-sdk-qtel/oe-core/build/tmp-glibc/deploy/ipk/armv7ahf-neon/hostapd_2.6-r0_armv7ahf-neon.ipk>.
To remove package debris, try `opkg remove hostapd`.
To re-attempt the install, try `opkg install hostapd`.
 * preinst_configure: Aborting installation of hostapd.

Any pointers of how I could accomplish my goal?



We override INITSCRIPT_PARAMS in a bbappend like so:

INITSCRIPT_PARAMS = "stop 20 0 1 0 ."

Seems to work OK.


--
Joshua Watt <jpewhac...@gmail.com<mailto:jpewhac...@gmail.com>>
-- 
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto

Reply via email to