Hiya, so I just noticed a minor change in semantics between previous baselayouts and baselayout-2. Previously when using /etc/init.d/blah stop, if the service was already stopped, a yellow warning was printed but the program gave a return code of 0. On baselayout-2 there's still the yellow warning, but there's now a return code of 1. This breaks the vmware-config.pl script which tries to shut down the vmware services before configuration and fails if it receives an error code. Unfortunately the service can't be successfully started until the configuration has completed, so the user's left in a bit of spot. Whilst we could patch the vmware-config script, it does feel as though a success code should be returned since we're interested in whether the service has been stopped, and sure enough it has. Looking in the code, it appears that ewarnx always returns ERROR_FAILURE, which may not always be appropriate. I'm not sure how to go about fixing it other than perhaps making failures *failures* and warnings a success but with a user notification? Perhaps modelling it on the previous baselayout's behaviour would be best? As ever, I'm happy to test out any patches or dodgy hacks to help find a solution... 5:)
OK, I've fixed this in our svn repo.
Fixed in baselayout-2.0.0_alpha2
Sadly, this appears to have regressed in the baselayout-2.0.0_alpha6 (possibly earlier) and it's now causing issues with vmware again. Is there any way of bringing forward the regression fix again please? A single change like this can make packages such as vmware, which uses "/etc/init.d/blah stop" rather than checking the status first, unusable without more extensive patching. Since this is a behaviour change, it'd be great if this could be reverted, to give the defacto standard results of success unless there was a real problem getting the service into a stopped state... Thanks 5:)
It appears this was re-introduced during a code shuffle in checkin 3021. http://sources.gentoo.org/viewcvs.py/baselayout/trunk/src/runscript.c?r1=3018&r2=3021
Created attachment 136295 [details, diff] Baselayout-2.0.0_rc6 start/stop return code patch It turns out the patch is very, very similar to the originally checked in patch. http://sources.gentoo.org/viewcvs.py/baselayout/trunk/src/runscript.c?r1=2659&r2=2666 Hopefully this can be fixed in time for baselayout-2.0.0_rc7 or the first release of openrc?
I already have this fixed locally.
*** Bug 199807 has been marked as a duplicate of this bug. ***
Fixed in OpenRC.