This message is a follow-on from previous post "Where do people mount their external storage?" to discuss a method to overcome my problems outlined in that post.
I have started thinking about the need for anything in /usr on the flash filesystem. There seems to be little point to differentiate /bin and /usr/bin, for example, on the built-in flash. Why not just put everything in /bin, /sbin, /lib and ignore /usr altogether for the internal flash filesystem?
One way to do this would be to have ipk files built to install everything in /usr (i.e. if the package is selected as <M> in the config). That way any software loaded onto the "image" can go onto another storage device. I do understand that the flash root filesystem is built from ipk files in the first place so it is not necessarily as simple as I have stated it.
To add some technical substance to what I'm proposing, I'm considering adding a make variable PKG_PREFIX which is set in include/pakage.mk based on whether the package is built as "y" or "m". Package makefiles are then modified to use $(1)$(PKG_PREFIX) as the installation root. I would not want to change the Package/foo/install $(1) parameter to include this so that packages can still put their config files in $(1)/etc. The bulk of the files would go into $(1)$(PKG_PREFIX), but a packager can choose to ignore $(PKG_PREFIX) if necessary.
The actual value used for PKG_PREFIX for modules could be a configuration parameter, so people could use /usr/local or elsewhere if they wanted to.
[Is this the best forum for discussing development ideas like this? The mailing list looks rather quiet.]