Quantcast
Channel: Issues for Drupal core
Viewing all articles
Browse latest Browse all 296940

Allow profiles to provide a base/parent profile and load them in the correct order

$
0
0

Updated: Comment #326

Problem/Motivation

With Drupal 7's vastly-improved install profile functionality, and the recently-improved drupal.org distribution packaging infrastructure, many new install profiles have been created, and they are awesome.

However, install profiles are not inheritable, so if you want to, say, take Drupal Commons, and base your site off of it, but add one or two extra modules in your own customized install profile, you have to clone the entire install profile and change it to your needs. Allowing install profiles to declare base profiles (just like themes can declare base themes) would drastically simplify customizations to existing distributions by:

  • Inheriting configuration from a parent install profile (base-profile)
  • Overriding specific configuration from the base-profile
  • Inheriting customizations in the installer from the base-profile
  • Having additional installer tasks and form items to customize their own "start-state"
  • Removing dependencies from the base-profile to customize which modules and themes are enabled by default.

Additional motivations are detailed on Dries's blog post.

Proposed resolution

  • Modify the module load system to take into account base install profiles.
  • Modify the install profile system to run parent installer(s) in the correct order.

Remaining tasks

User interface changes

None.

API changes

Install profiles can define base profiles using the syntax base profile: BASE_PROFILE inside their .info.yml files.

Or, override dependencies from the base profile using the syntax:

base profile:
  name: BASE_PROFILE
  excluded_dependencies:
    - MODULE_NAME
  excluded_themes:
    - THEME_NAME

Viewing all articles
Browse latest Browse all 296940

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>