core-image-full-cmdline build failure
Hi all,
I'm getting consistent failures trying to build core-image-full-cmdline with an up-to-date oe-core (d0be4b3) and bitbake (38d4f65). The useradd commands for rpcbind and openssh-sshd are running before the base-passwd package has been installed and so are not finding /etc/passwd.
I've hacked together a local fix for this by modifying the do_rootfs command to install base-passwd before installing other packages. If this is a common failure and it's not just me seeing it, would it be worth expanding the package types listed in the install manifest? Currently we have 'mip' for must install package, 'aop' for attempt only, etc. If we need to ensure certain packages are installed first, perhaps we could add something like 'ep' for early package.
Looking into the rpcbind package, the useradd commands are performed in a preinst script so I don't think the problem is opkg running the script too early. Do other package managers guarantee that a package's dependencies are installed before the preinst script is ran? If so, I may need to re-order things within opkg. If not, I think the above solution of listing certain packages for early installation would be best.
Thanks,
Signature · 4 lines
Paul Barker Email: [email protected] http://www.paulbarker.me.uk
Quoted 14 lines · Paul Barker
Hi all,
I'm getting consistent failures trying to build core-image-full-cmdline with an up-to-date oe-core (d0be4b3) and bitbake (38d4f65). The useradd commands for rpcbind and openssh-sshd are running before the base-passwd package has been installed and so are not finding
/etc/passwd.I've hacked together a local fix for this by modifying the
do_rootfscommand to install base-passwd before installing other packages. If this is a common failure and it's not just me seeing it, would it be worth expanding the package types listed in the install manifest? Currently we have 'mip' for must install package, 'aop' for attempt only, etc. If we need to ensure certain packages are installed first, perhaps we could add something like 'ep' for early package.
Quoted 4 lines
Looking into the rpcbind package, the useradd commands are performed in a preinst script so I don't think the problem is opkg running the script too early. Do other package managers guarantee that a package's dependencies are installed before the preinst script is ran? If so, I may need to re-order things
For rpm, I think yes ? The "pre" depends on base-passwd:
$ rpm -qpR -v tmp/deploy/rpm/core2_64/rpcbind-0.2.1-r0.core2_64.rpm | grep base-pass manual: base-passwd pre: base-passwd post: base-passwd preun: base-passwd postun: base-passwd
But I can't find such info in ipk.
// Robert
Quoted 7 lines
within opkg. If not, I think the above solution of listing certain packages for early installation would be best.
Thanks,
Quoted 5 lines · Robert Yang
Quoted 3 lines · Paul Barker
Looking into the rpcbind package, the useradd commands are performed in a preinst script so I don't think the problem is opkg running the script
too
Quoted 1 line
Quoted 1 line
early. Do other package managers guarantee that a package's dependencies
are
Quoted 1 line
Quoted 1 line
installed before the preinst script is ran? If so, I may need to
re-order things
Quoted 4 lines
For rpm, I think yes ? The "pre" depends on base-passwd:
$ rpm -qpR -v tmp/deploy/rpm/core2_64/rpcbind-0.2.1-r0.core2_64.rpm |
grep base-pass
Quoted 8 lines
manual: base-passwd
pre: base-passwd
post: base-passwd
preun: base-passwd
postun: base-passwdBut I can't find such info in ipk.
Ok, looking at the opkg code it should satisfy dependencies before running the preinst script. I'll have to look into this further later and find out exactly what is going wrong.
Signature · 6 lines
(Sent from mobile) Paul Barker Email: [email protected] http://www.paulbarker.me.uk
Quoted 22 lines · Paul Barker
Quoted 5 lines · Robert Yang
Quoted 3 lines · Paul Barker
Looking into the rpcbind package, the useradd commands are performed in a preinst script so I don't think the problem is opkg running the script
too
Quoted 1 line
Quoted 1 line
early. Do other package managers guarantee that a package's dependencies
are
Quoted 1 line
Quoted 1 line
installed before the preinst script is ran? If so, I may need to
re-order things
Quoted 4 lines
For rpm, I think yes ? The "pre" depends on base-passwd:
$ rpm -qpR -v tmp/deploy/rpm/core2_64/rpcbind-0.2.1-r0.core2_64.rpm |grep base-pass
Quoted 6 lines
manual: base-passwd
pre: base-passwd
post: base-passwd
preun: base-passwd
postun: base-passwd
Quoted 7 lines
Quoted 2 lines
But I can't find such info in ipk.
Ok, looking at the opkg code it should satisfy dependencies before running the preinst script. I'll have to look into this further later and find out exactly what is going wrong.
Yea, I broke opkg. Also getting confused, I thought I'd switched back from the development snapshot of opkg to the released version but I hadn't.
*facepalm*
opkg-0.2.2 works, opkg-0.2.3-SNAPSHOT doesn't work as it fails to install things in the correct order. I'll have to fix this before releasing opkg-0.2.3.
Signature · 4 lines
Paul Barker Email: [email protected] http://www.paulbarker.me.uk