There is an alternative approach to achieve the aims here, which I think is a bit simpler. No SOLR_VAR env; we don't need it. Instead SOLR_HOME is that. Anything that goes in SOLR_HOME would be resolved with defaulting logic off of SOLR_TIP (solr install dir) at the typical paths from there (e.g. server/solr). That means solr.xml, zoo.cfg, configSets, fileStore, lib, ... -- if none of this is in SOLR_HOME, then it will be resolved against SOLR_TIP/server/solr. It would be fine to start Solr with an empty SOLR_HOME for a new node (SOLR-9575). SOLR_TIP is to be treated as read-only.
Furthermore, SOLR_HOME ought to point to /var/solr (not /var/solr/data) and coreRootDirectory ought to default to "data", thus keeping cores separate from our other stuff. This should have been done a long time ago. Related: https://issues.apache.org/jira/browse/SOLR-11508 Any concerns?
