Drupal distributions session by Omar Bickell at DrupalCamp Montreal
See also Hally Turner's notes on this presentation.
irakli and jmiccolis know more, this draws in part on their presentations.
Distributions contain installation profiles
(an installation profile does not contain a distribution)
install profiles are install time only
- run custom install tasks
- enable modules and themes
A lot of those on Drupal.org are old, not released, or unmaintained
products, development platforms, demos, and community-specific tools
no clear line between where development projects end and products start
development platform tries to do the first 40-60%
these are all install time: do i take the internationalization distribution or the wiki distribution?
so, often you see us try to move things out of the installation profile and into features which can be applied any time
DrupalEd
ELMS (e-learning management system)
Conference Organizing Distribution
Hostmaster (Aegir)
oh, god, the Agaric starter profile also got listed-- i promised it will be made to work for Drupal 7.
distribution as instant demo for module
from products to platforms
there are many ways to use distributions
the tools and infrastructure are falling into place
We've been talking about them forever but they weren't quite there. There were only installation profiles, would have to get all the modules themselves.
now the installation profiles that are done right have a make file with them
still a question on what to do with 3rd party libraries
syntax of .make file is quite simple
could just write projects[] = CCK
openatrium.make gets exact module versions
http://drupal.org/project/drush_make
drush make openatrium.make
drush is great individually. Drush make gives this power times many.
- don't think of the install profile as the configurerer - do as much as you can with features
- use batch processing (if the list of modules is too long to install in one go)
- Divide and conquer -organize features functionally -- such as around content types
- Use contexts, say the DevSeed guys (whom i'm stealing from). Or Panels.
- Be explicit about module version numbers so that you know it will work when people download
Building your first distribution is a learning experience. Forces you to think about what you'll want to add over time to a feature...
me: How should installation profiles and distributions work together?
Your Features are modules.
Features can have dependencies for other modules.
Can have nested .make files.
Just make sure no two .make files download the same module.
Then the .make file is enabling features.
Could have an installation profile that turns on 1, 2, or 3 Features, and then the Features can enable modules etc.
There's a difference between products and platforms. Drupal can do both. But you should only do one at a time!
Comments
Post new comment