I know that many of the directories in
/System/Library/ have analogues in
/Library/, and a fewer several have analogues in
~/Library/ as well. I also know that in at least some cases, when the system is looking for something that may be rooted in one of these Library directories, it looks in the analogous locations as well.
For example, an application may install a file in
/Library/Application Support/A/B/, but have been just as happy to have installed it in
~/Library/Application Support/A/B/, and though there may be records of the location of every file the application installed, the system may not refer to them when looking for a file. In other words, it knows that any time it checks for anything rooted in
System/Library/, it needs to look in the corresponding locations in
Is that last statement really true? That in all cases, (or in almost all cases, with certain exceptions) when the computer looks in one of the three Library directories it looks in the other two as well? For example, can a user move something that was installed in
/System/Libary/Extensions/ to an Extensions directory he creates in his home directory's
Library/ and expect it to be loaded from there at login, the way that, say, a property list found in
~/Libary/LaunchAgents/ would have been found just as easily had it been located in
Similarly, I notice that some applications store frameworks, plugins, and so forth in directories rooted in those applications' bundles. Can files be moved between there and appropriately-named locations elsewhere without problem? In theory at least, is this the way the filesystem is designed to work?