It'd be handy if Splunk supported a /etc/splunk.d/ configuration structure. This would make it much easier to have puppet or chef drop config files into splunk based on the type of server its being installed on. Does Splunk already support this and I'm just seeing it?
I don't know what you mean by a "/etc/splunk.d/"configuration structrure, but all splunk config is contained under
$SPLUNK_HOME/etc/system and (more suitable for your use)
$SPLUNK_HOME/etc/apps/*. Details of how those are laid out and resolved are in the docs, here and in following sections. You can (and plenty of people do) have puppet or chef place configuration files there. What exactly are you trying to do that this configuration structure doesn't work with, or that is makes harder?
Just to clarify, the term "apps" is probably misleading. An "app" is nothing more than a configuration bundle, i.e., a set of configuration files, that are merged with all other configuration bundles present on the system.