Finally up and running! So, I have some tools to make and enable "profiles", a group of extensions that will load (or not load) at next boot. Components:
* a few lines in tce-setup to search for a profile; bail to normal if there is no profile
* setprofile - a script to set what extension set/profile will boot next
* saveprofile, restoreprofile, linktc.sh - scripts for making an extension profile
* data in /profiles, a subdirectory of the main tce directory - stores profile lists (about 40k for my current lists and their symlinks, future state, current state, and error messages)
So ... I can pick a profile that will be enabled/disabled at next boot. I am using it to select from a few different setups:
* base
* build environment
* netbook
* default (load everything as normal by disabling profile)
I do love GRUB, but it's nice not to have to set up different GRUB entries and select them at boot time.
I guess this setup isn't philosophically tight - It relies on having data outside of mydata.tgz, stored alongside the extensions. But it works for me =)
Thank you all for the help. Special kudos to Jason W - the linking script is a very basic change to the movetc script you sent earlier. I really appreciate it.
EDIT:
now that I've gone through all that ... it remains quite complex! I'm thinking of other ways to skin this.
EDIT:
going through and writing scripts to do this via .dep files ... (I'll dig up who told me to do that in the first place
![Shocked :o](https://forum.tinycorelinux.net/Smileys/default/shocked.gif)
). It may be possible to create an extension that pulls this off.