Commands /etc/init/boot.local get started before some environment variables get initialized

view story

http://serverfault.com – I have OpenSuse 11.4. I start some on-boot scripts inside /etc/init/boot.local. Where could I move those scripts so that they would be started after all (most) environment variables got initialized? These scripts need to be started really once, so things such as /etc/profile.local aren't candidates. I try to start Sonar, which searches for Java in some strange way (instead just by look up JAVA_HOME), and it fails to find Java (logs don't tell me exactly why). From command line, after boot, it can be started (as root and as user). I suppose, there are some environment variables which get i (HowTos)