[OE-core] [PATCH] update-rc.d.bbclass: check that init script exists before running it

Phil Blundell pb at pbcl.net
Thu Oct 6 15:12:58 UTC 2016


On Thu, 2016-10-06 at 16:46 +0300, Markus Lehtonen wrote:
> 
It was moved to prerm earlier to fix some other problems:
> http://git.openembedded.org/openembedded-core/commit/meta/classes/upd
> ate-al
> ternatives.bbclass?id=2a5484a90513b58c829a916bfe5268a0fde3512a

The commit message for that checkin is a bit vague about exactly what
problem it was solving.  It mentions that it "fixes deinstalling
alternatives for programs needed by the postrm script, e.g. /bin/sh"
but it's rather hard to see how that actually works.  If postrm
requires /bin/sh and prerm has deleted it then it's not obvious how
this is an improvement.

> So I think moving it back and forth between prerm and postrm doesn't
> get us
> anywhere :)

That is a fair point, though I am not entirely convinced that the
commit you mentioned above is the correct solution to whatever problem
it thinks it's solving.

As it stands, with both things in prerm, you will get essentially
random behaviour depending on the order in which the two classes (u-
rc.d and u-a) are inherited by the recipe.  If u-a comes first then u-
rc.d will not be able to run the "stop" script (and the services will
not be stopped on package uninstallation), and vice versa.

So maybe these two classes just need to be taught to play together
better.

p.



More information about the Openembedded-core mailing list