Custom IMO configuration file. This will make your life easier when you decide to upgrade to the new major version of CI, since you can overwrite config.php without losing critical application constants.
config.php entire application is always loaded, so everything you insert there will be available globally, while custom configuration files can be downloaded on demand, saving resources and providing a better separation of code responsibilities.
Example: loading a configuration file on demand:
$this->config->load('filename');
Jens rolling
source share