The startup scripts do run at the end of the booting process, except for .core. elements, and before anything in /opt/bootlocal.sh. However, currently in alpha order regardless if tce or tcz.
Curaga, is right when he mentioned adding a prefix of zz, and that is how I had originally designed it years ago, B4TC. Back then my offering was more turnkey and a complete desktop. Here much less so. Thus modifying extension names is not very desireable, even though workable.
I don't really want an additional boot code, or having the user made aware of and/or maintaing an 'order list'
The current system uses /usr/local/tce.installed for a dual purpose. To indicate which extensions are installed and if executable, the startup script to execute during boot in alpha order.
What I can offer is an init style prefix, e.g., 00-99 and such scripts be placed in /usr/local/tce.init/ directory. This would then execute the scripts by prefix category (00 - 99) as many Linux/Unix systems typically have in /etc/rc.d directories. Note, busybox does not have runlevels, and using /usr/local/tce.init is also consistent with other tce system components and is PPI (persistent /usr/local/) friendly.
Still with TC/MC being only a core, means much additionally functionality is community contributed. Therefore assiging an appropriate prefix will take coordination between the extension contributors. Perhaps a guideline can be established. And once implemented, extensions requiring this will need to make mention in their .info files specifically which version of TC/MC is required, e.g., version 2.3 or later.
For the hundreds of existing extensions those that currently have a startup script, I can programmatically move them to the new init directory with a common prefix of 55 during the boot process. Those that need adjusting can be moved to earlier or later by adjusting their prefix and resubmitting to the repository.