short hardcoded paths are an advantage. this is not linux. this is plan9. there are rules. the kernel already provides a way for indirection that works for *everything*. mount/bind and private namespaces.
no need to reimplement indirection in every program over and over again. a hardcoded path expresses an intent. you can look at it and you know what it expects because ususly the stuff it points to is already there or has an established meaning. (read namespace(4)) this is better than enviroment variables like $FOOBARBAZPATH because it hides the default somewhere in the program, or it will just fail when not specified giving me no clue what $FOOBARBAZPATH is supposed to be. theres also complexity involved in the implementatoin. using a hardcoded paths is great. you just let the program fail with sysfatal("%r"); and it will show the path it tired to open in the error message giving immidiate clue what it needs. -- cinap