<?php namespace Orchestra\Support\Providers;

use Orchestra\Contracts\Config\PackageRepository;
use Orchestra\Support\Providers\Traits\PackageProviderTrait;
use Illuminate\Support\ServiceProvider as BaseServiceProvider;

abstract class ServiceProvider extends BaseServiceProvider
{
    use PackageProviderTrait;

    /**
     * Merge the given configuration with the existing configuration.
     *
     * @param  string  $path
     * @param  string  $key
     * @return void
     */
    protected function mergeConfigFrom($path, $key)
    {
        parent::mergeConfigFrom($path, $key);

        $config = $this->app['config'];

        if ($config instanceof PackageRepository) {
            $config->file($key);
        }
    }
}

<?php namespace Orchestra\Support\Providers;

use Orchestra\Support\Providers\Traits\PackageProviderTrait;
use Illuminate\Support\ServiceProvider as BaseServiceProvider;

abstract class ServiceProvider extends BaseServiceProvider
{
    use PackageProviderTrait;
}

--- 
+++ 
@@ -1,9 +1,28 @@
 <?php namespace Orchestra\Support\Providers;
 
+use Orchestra\Contracts\Config\PackageRepository;
 use Orchestra\Support\Providers\Traits\PackageProviderTrait;
 use Illuminate\Support\ServiceProvider as BaseServiceProvider;
 
 abstract class ServiceProvider extends BaseServiceProvider
 {
     use PackageProviderTrait;
+
+    /**
+     * Merge the given configuration with the existing configuration.
+     *
+     * @param  string  $path
+     * @param  string  $key
+     * @return void
+     */
+    protected function mergeConfigFrom($path, $key)
+    {
+        parent::mergeConfigFrom($path, $key);
+
+        $config = $this->app['config'];
+
+        if ($config instanceof PackageRepository) {
+            $config->file($key);
+        }
+    }
 }
Allow to push packages name/key to config repository.

Signed-off-by: crynobone <e1a543840a942eb68427510a8a483282a7bfeddf@gmail.com>
