One of the most common hurdles that Drupal beginners face is learning to navigate all the modules available on Drupal.org.
With over 38,000 modules, choosing which ones to use can be a daunting experience.
One answer is often to use a distribution.
Building your own e-commerce, intranet or a social networking site in Drupal can be intimidating. Imagine how much easier it would be if an expert had found all the best modules for your purpose and had combined them into one package. Imagine that you could download and install that package as easily as a normal copy of Drupal. That's what distributions can do for you.
Where to Find Drupal Distributions
Drupal distributions are available at https://www.drupal.org/project/project_distribution. There you'll find over 1,000 distributions.
Examples of Drupal Distributions
Here are examples of Drupal distributions that are designed to meet a specific need:
- Drupal Commerce: The quickest way to get up and running with e-commerce in Drupal.
- Opignopigno: A Learning Management System for Drupal.
- Lightning: Acquia's version of Drupal that moves faster than core, and ships cool features early.
- aGovGov: A Drupal package specificially designed for the needs of the Australian goverment.
Installing a Drupal Distribution
In most cases, installing a Drupal distribution will be exactly the same as installing a plain copy of Drupal. We're going to use the example of Drupal Commerce to walk you through installing a typical distribution. You can download this package from http://drupal.org/project/commerce_kickstart.
The main difference during installation is that you will be given the option of choosing an installation profile during install.
The installation profile might also offer you the choice of some additional features. In the case of Drupal Commerce, you have the option of installing sample content:
The File Structure of Distributions
When you install a distribution, you'll see the phrase "installation profile" used. This can cause confusion, so let's explain the difference.
A distribution is not an installation profile. The installation profile is underneath the distribution and site in the /profiles/ folder.
Take a look at the image below which is a screenshot of the Drupal Commerce distribution for Drupal 7. All of the extra modules and themes are in the /profiles/ folder. They are not in the /sites/all/modules/ folder as you would expect.
- Installation profile = all of the files in /profiles/commerce_kickstart/
- Distribution = all of the files into the entire package, not just in the /profiles/ folder.
The same is true with distributions in Drupal 8. The image below shows the files for the Lightning distribution:
Notes of Caution on Using Distributions
Although distributions can be time-savers, it's worth being aware of some potential drawbacks:
- Not Drupal 8 ready. Because of their complexity, many distributions are still only for Drupal 7.
- Confusing for beginners. You do need some knowledge of Drupal before using them, otherwise you'll find yourself trying to reverse engineer some fairly advanced features.
- Learning curve. It's not unusual for a Drupal distribution to have a radically different admin area design. The advantage is that the admin area is often good fit for the purpose of the distribution. For example, the image below shows Open Atrium which was designed for intranets. This admin area design works much more effectively for an intranet than the default Drupal design. The disadvantage is that distributions often need custom training. For example, normal books and training materials won't apply to Open Atrium so it had its own books and materials.
Drupal.org gives a list of times when it is really useful to use a distribution:
- Evaluating Drupal: Distributions are easier to setup and you can see real life examples of what Drupal can do.
- Demoing Drupal: Before building a site for someone it can be useful to show them examples of how Drupal can be configured.
- Learning Drupal: You can analyse real, working features.
- Quickly Building a Site: If you're building a site similar to one provided by a distribution, it makes sense to start with a distribution. If you're changing too much though, it may make more sense to just start with stock Drupal and build from there, rather than try to undo and change what was setup for you.