Sorry aus9 - you've made me think and now you have to pay the price.
<thinking out loud>
I try to stick to a few constraints for personal reasons - some of which I don't even remember right now.
1) I try to keep my boot menu (menu.lst in grub4dos) to one entry per distribution - one for Core, one for CorePure64 and all that across many hardware platforms (I boot from a USB stick on any of several physical hosts).
2) I don't want to have to enter boot codes by hand except in some unusual circumstance.
3) The only persistence I want to use is the tce directory and mydata.tgz
Currently I use a script called whathost to figure out from various system features (blkid, mac or overriding bootcode) what physical host I'm running on and configure Core accordingly. In addition to different hardware, various systems are used for different activities. Since the entire whathost system lives in mydata.tgz, it really doesn't concern itself with what extensions get loaded. I load a few extensions onboot, none ondemand and a list, determined by the host, that are stuffed into a menu to be loaded manually (though I invariably choose the "load'em all" option because I've gotten lazy).
I haven't used the lst= bootcode for anything yet, though it has been on my todo list to play with it some.
I have created, but don't currently use, an extension called onload.tcz that does nothing but execute a script when it is loaded (which, if loaded onboot, is before bootsync runs - even before restore). If the whathost tables and script were included in there, then I might be able to select what extensions get loaded based upon the physical host. (Might there be a simpler way to do host-based extension loading by determining the host in the bootloader and using a calculated lst= boot code?)
How about this:
*) onboot.lst contains whathost.tcz and everythingelse.tcz
*) the install script for whathost.tcz determines the physical host and creates everythingelse.tcz.dep as a symlink to the appropriate list of extensions
*) everythingelse.tcz is a meta-extension existing only to load its deps.
+ #1) I get just the set up I want without having to do anything interactively during boot.
+ #2) I get the whathost system out of my backup, since it doesn't change all that often (but I have to rebuild it every time I add a new host to the tables)
- #1) For those more concerned with a particular purpose or task than with running on different hosts, probably not so effective - the hardware doesn't know which video driver you want.
----
Backup... I currently keep separate copies of mydata.tgz in
/mnt/sdc1/boot/core4.7.4/tce/ and
/mnt/sdc1/boot/core4.7.4/tce64/
but it seems like I ought to just keep one copy in
/mnt/sdc1/boot/core4.7.4/
-----
While I'm mucking around with onload.tcz / whathost.tcz, I think I'll also make a tcz out of my firefox profile. I currently have that locked up in a .tgz file that gets restored at boot time - security/privacy/ad-blocking extensions installed in an otherwise fresh minefield profile... no cookies, no sqlite databases containing who-knows-what, no client side bugs/trackers etc. Any new bookmarks are maintained externally (gotta script that up).
-----
OK. Done thinking for the day. Tomorrow (or Friday) I'll completely overhaul my system, no doubt trashing it thoroughly in the process - its nice to have a spare USB stick, and even nicer to have two.