SlideShare a Scribd company logo
1 of 39
Download to read offline
Get up and Running
Quickly with Drupal
Distributions!
by Melissa Piper
1
Who am I?
• My name is Melissa Piper
• I’ve been a front-end developer for 7+ years
• Front End/Drupal Developer at Beyond Spots & Dots (now hiring
Drupal developers!)
You can follow me at:!
@mfpiper
linkedin.com/in/melissapiper
github.com/empee3
2
What is a Distribution?
• A pre-packaged Drupal installation that typically
addresses a specific use case (blog, portfolio,
publishing website, mobile-first website, etc.)
• Allows the developer to begin development with
pre-set configurations, modules, and themes
already in place at installation
• Useful to create if you find yourself always using
the same modules and themes when starting a new
Drupal project.
3
Example Distributions
!
OpenPublish - Distribution packaged for the online news industry
(journals, onlinenewsp apers, trade publications)
4
Example Distributions
(cont…)
!
!
!
!
Openfolio - A web portfolio distribution for photographers and artists
5
Distribution Components
6
What’s Inside a Distribution?
• Drupal Core
• Projects (contributed modules, themes, patches)
• Third party libraries (CKEditor, TinyMCE)
• Installation profile
• Configurations (settings originally stored in the
database)
7
Main Components in
Creating a Distribution
• Drush Make File 

- Pulls in core, projects, and third-party libraries

- Description of the code base

- A list of all contributed files that will be used in the
distribution
• Profile - Configuration, installation profile, features 

- Profiles are used when you first install Drupal -
default profiles are Minimal and Standard
8
4 Files Generated in a
Distribution
• .info
• .install
• .make
• .profile
9
Let’s Create a Distribution!
10
• You are a Drupal developer, and find yourself
installing the same modules and themes, and
setting the same configurations at the beginning of
each new project

• You decide to create a distribution, so that all of
these modules, themes, libraries, and
configurations will be ready to go for your next
Drupal project. But where do you begin?
11
Step 1: Set the Foundation
• Create and configure a Drupal site the way you want it to
be in your distribution.
• With a fresh Drupal install, install the themes, libraries,
modules, patches, etc. that you want to include in your
distribution.
• Create Content Types, Menus, Taxonomy, Views, etc.
• Also consider installing the Features and Profiler
Builder modules (this will help us with creating our
distribution later)
12
Typical contributed modules might include:
• Views and dependencies such as CTools!
• Google Analytics!
• Admin Toolbar!
• Date!
• Entity Reference!
• IMCE!
• WYSIWYG!
• Webform
13
Typical views and content types might include:
• Featured News view and News content type!
• Event registration view and event content type!
• Taxonomies to categorize news and events by
type!
• Slideshow view
14
Step 1.5: Features
• The Features module can be used to save some of the
configurations that you want to include in your
distribution (such as WYSIWYG profiles, created content
types and views)
• These configurations are stored in the database and are
NOT automatically included in your make file or
installation profile
• Without Features, you’ll need to create these
configurations using the Drupal API (coding each with
PHP)
15
Features allows you to export most of your
configurations as a module that can be included in your
Make file
16
Step 2: Generate the Make
File
• Once your Drupal site is configured the way you
want it to be in your distribution, it’s time to
generate a Make file
• The Make file is generated with Drush to allow for
the creation of a ready-to-use Drupal site
• A flat text file that pulls in core, contributed
modules, themes, and libraries
17
• Before generating the Make file, make sure all
modules, themes, and libraries that are not hosted
on drupal.org are hosted SOMEWHERE (such as
Github).
• This includes the initial configuration module you
may have generated using Features from the
previous step.
• You will need to provide the download URL for
these types of projects in order for the Make file to
run!
18
• To generate the Make file, run the following Drush
command:



drush generate-makefile drupal-
org.make!
• You can also include the —exclude-versions
flag to prevent the Make file from including version
numbers for all modules and themes
• Note* - Name your Make file drupal-org.make if
you plan to share your distribution with the Drupal
community, as this is a requirement on drupal.org
19
Generated Make file example
20
• In some cases, Drush will not be able to find all of
the libraries, modules, or themes you want to use
(often when the projected is not hosted on
drupal.org).
• When this happens, Drush will generate
placeholder information in the Make file and prompt
you to fill in the missing information (such as
download URL and download type)
21
Example of generated Make file with missing information
22
Step 3: Generate Profile
• You can use the Profiler Builder module to
generate the .info, .install, and .profile files
• Note* - Profile Builder also generates the Make file,
but I find it more efficient to generate my own Make
file if I’m including projects not hosted on
drupal.org
23
Profiler .info file generation
24
• The Profiler Builder module will generate and
automatically download the .info, .install, .profile,
and .make files into a tarbell (tar.gz) download
25
Step 4: Making the Make File
• Once you have generated your make and profile
files, you’re ready to test your new distribution!
• Create a new directory and database for your test
site
• Copy and paste your drupal-org.make Make file
into the new directory
• In your new directory, run the Drush command:

drush make drupal-org.make
26
• Running the Make file will ask if you want to create
a new site in this present directory
• After entering “y” (yes), you will Drupal core,
contributed modules, themes, and libraries being
downloaded into the current directory
• If all downloads complete successfully, you will
have a ready-to-install download of Drupal core in
your new directory. If any errors are encountered
along the way, the download will stop
27
Step 5: Adding the Profile
• In your new directory, navigate to the Profiles directory
• In the Profiles directory, create a new directory named
the same as the .profile, .install, and .info files that
were generated from the Profiler Builder module (for
instance, if your .info file is named
blue_drop_dist.info, name your directory
blue_drop_dist)
• Copy and paste your .profile, .install, and .info files
into this directory
28
Step 6: Install Your
Distribution!
• Navigate to your distribution directory in your
browser. You will be redirected to the Drupal
installation screen
• When selecting your profile, in addition to the
default Standard and Minimal profiles, you should
see the name and description of your distribution!
29
Example of a distribution profile ready for install
30
• With your distribution selected, continue with
installation as normal
• As your distribution installs, you will see the
modules and themes that you included in your
Make file being installed as well
31
Example of contributed modules being installed during
distribution installation
32
• Once installation is complete, you should be able
to use the new site with the modules, themes, and
libraries that you included in your distribution.
33
A Note on Contribution
34
Sharing Your Distribution
• You can share your finished distribution on sites
such as Github, or contribute your distribution on
drupal.org
• If sharing your contribution on drupal.org, there are
a few guidelines that you must follow, such as:
35
• Name your make file “drupal-org.make”
• Install drupal.org drush extension (https://
www.drupal.org/project/drupalorg_drush)
• Verify the make file



drush verify-makefile
• Create a sandbox project page on drupal.org
• Push your distribution to the sandbox project page
with Git
36
• If this is your first time contributing on drupal.org,
you will need to submit your project for approval
before it can be released to the community as a full
project.
37
Example Distribution
• The distribution used as an example in this
presentation, The Blue Drop MFD (mobile-first
distribution), can be downloaded from my Github
account:
• https://github.com/empee3/
the_blue_drop_mobile_first_distribution
38
Thank You!
39

More Related Content

What's hot

5 Important Tools for Drupal Development
5 Important Tools for Drupal Development5 Important Tools for Drupal Development
5 Important Tools for Drupal Developmentjcarrig
 
Speedrun: Build a Website with Panels, Media, and More in 45 Minutes
Speedrun: Build a Website with Panels, Media, and More in 45 MinutesSpeedrun: Build a Website with Panels, Media, and More in 45 Minutes
Speedrun: Build a Website with Panels, Media, and More in 45 MinutesAcquia
 
Distribution Deli
Distribution DeliDistribution Deli
Distribution DeliWylbur
 
Drupal upgrades and migrations. BAD Camp 2013 version
Drupal upgrades and migrations. BAD Camp 2013 versionDrupal upgrades and migrations. BAD Camp 2013 version
Drupal upgrades and migrations. BAD Camp 2013 versionDavid Lanier
 
Media handling in Drupal (Drupalcamp Leuven 2013)
Media handling in Drupal (Drupalcamp Leuven 2013)Media handling in Drupal (Drupalcamp Leuven 2013)
Media handling in Drupal (Drupalcamp Leuven 2013)Pure Sign
 
Drupal 8: Most common beginner mistakes
Drupal 8: Most common beginner mistakesDrupal 8: Most common beginner mistakes
Drupal 8: Most common beginner mistakesIztok Smolic
 
Dd13.2013.milano.open ntf
Dd13.2013.milano.open ntfDd13.2013.milano.open ntf
Dd13.2013.milano.open ntfUlrich Krause
 
The Flexibility of Drupal 8 | DCNLights 2017
The Flexibility of Drupal 8 | DCNLights 2017The Flexibility of Drupal 8 | DCNLights 2017
The Flexibility of Drupal 8 | DCNLights 2017Michael Miles
 
Building A Platform From Open Source At Yahoo
Building A Platform From Open Source At YahooBuilding A Platform From Open Source At Yahoo
Building A Platform From Open Source At Yahooelliando dias
 
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...Chipway
 
Building and Maintaining a Distribution in Drupal 7 with Features
Building and Maintaining a  Distribution in Drupal 7 with FeaturesBuilding and Maintaining a  Distribution in Drupal 7 with Features
Building and Maintaining a Distribution in Drupal 7 with FeaturesNuvole
 
2.28.17 Introducing DSpace 7 Webinar Slides
2.28.17 Introducing DSpace 7 Webinar Slides2.28.17 Introducing DSpace 7 Webinar Slides
2.28.17 Introducing DSpace 7 Webinar SlidesDuraSpace
 

What's hot (14)

5 Important Tools for Drupal Development
5 Important Tools for Drupal Development5 Important Tools for Drupal Development
5 Important Tools for Drupal Development
 
Speedrun: Build a Website with Panels, Media, and More in 45 Minutes
Speedrun: Build a Website with Panels, Media, and More in 45 MinutesSpeedrun: Build a Website with Panels, Media, and More in 45 Minutes
Speedrun: Build a Website with Panels, Media, and More in 45 Minutes
 
Distribution Deli
Distribution DeliDistribution Deli
Distribution Deli
 
Drupal upgrades and migrations. BAD Camp 2013 version
Drupal upgrades and migrations. BAD Camp 2013 versionDrupal upgrades and migrations. BAD Camp 2013 version
Drupal upgrades and migrations. BAD Camp 2013 version
 
Media handling in Drupal (Drupalcamp Leuven 2013)
Media handling in Drupal (Drupalcamp Leuven 2013)Media handling in Drupal (Drupalcamp Leuven 2013)
Media handling in Drupal (Drupalcamp Leuven 2013)
 
Drupal 8: Most common beginner mistakes
Drupal 8: Most common beginner mistakesDrupal 8: Most common beginner mistakes
Drupal 8: Most common beginner mistakes
 
Dd13.2013.milano.open ntf
Dd13.2013.milano.open ntfDd13.2013.milano.open ntf
Dd13.2013.milano.open ntf
 
Drupal Best Practices
Drupal Best PracticesDrupal Best Practices
Drupal Best Practices
 
The Flexibility of Drupal 8 | DCNLights 2017
The Flexibility of Drupal 8 | DCNLights 2017The Flexibility of Drupal 8 | DCNLights 2017
The Flexibility of Drupal 8 | DCNLights 2017
 
Building A Platform From Open Source At Yahoo
Building A Platform From Open Source At YahooBuilding A Platform From Open Source At Yahoo
Building A Platform From Open Source At Yahoo
 
Management de communaute
Management de communauteManagement de communaute
Management de communaute
 
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
 
Building and Maintaining a Distribution in Drupal 7 with Features
Building and Maintaining a  Distribution in Drupal 7 with FeaturesBuilding and Maintaining a  Distribution in Drupal 7 with Features
Building and Maintaining a Distribution in Drupal 7 with Features
 
2.28.17 Introducing DSpace 7 Webinar Slides
2.28.17 Introducing DSpace 7 Webinar Slides2.28.17 Introducing DSpace 7 Webinar Slides
2.28.17 Introducing DSpace 7 Webinar Slides
 

Viewers also liked

Câu 1 - 5 quản trị nhân lực
Câu 1 - 5 quản trị nhân lựcCâu 1 - 5 quản trị nhân lực
Câu 1 - 5 quản trị nhân lựcTrinh Van
 
cameron weygandt blackout slides
cameron weygandt blackout slidescameron weygandt blackout slides
cameron weygandt blackout slidesCameron Weygandt
 
Another exhibition of history or an other exhibition of history? 100 years o...
Another exhibition of history or  an other exhibition of history? 100 years o...Another exhibition of history or  an other exhibition of history? 100 years o...
Another exhibition of history or an other exhibition of history? 100 years o...Annabelle Hornung
 
7 loại hình thông minh thomas armstrong
7 loại hình thông minh   thomas armstrong7 loại hình thông minh   thomas armstrong
7 loại hình thông minh thomas armstrongTrinh Van
 
Introductiontoheattransfer (1)
Introductiontoheattransfer (1)Introductiontoheattransfer (1)
Introductiontoheattransfer (1)fabiola_9
 
Síndrome meniscal de la rodilla.ppsx
Síndrome meniscal de la rodilla.ppsxSíndrome meniscal de la rodilla.ppsx
Síndrome meniscal de la rodilla.ppsxelmundopganar
 
Bản mô tả công việc
Bản mô tả công việcBản mô tả công việc
Bản mô tả công việcTrinh Van
 
Thị trường lao động quốc tế
Thị trường lao động quốc tếThị trường lao động quốc tế
Thị trường lao động quốc tếTrinh Van
 
đề Cương ôn tập quản trị nhân lực
đề Cương ôn tập quản trị nhân lựcđề Cương ôn tập quản trị nhân lực
đề Cương ôn tập quản trị nhân lựcTrinh Van
 

Viewers also liked (11)

Câu 1 - 5 quản trị nhân lực
Câu 1 - 5 quản trị nhân lựcCâu 1 - 5 quản trị nhân lực
Câu 1 - 5 quản trị nhân lực
 
cameron weygandt blackout slides
cameron weygandt blackout slidescameron weygandt blackout slides
cameron weygandt blackout slides
 
Another exhibition of history or an other exhibition of history? 100 years o...
Another exhibition of history or  an other exhibition of history? 100 years o...Another exhibition of history or  an other exhibition of history? 100 years o...
Another exhibition of history or an other exhibition of history? 100 years o...
 
CS120G Group 1 ODU
CS120G Group 1 ODUCS120G Group 1 ODU
CS120G Group 1 ODU
 
Hidalgo County Bail Bonds Fast
Hidalgo County Bail Bonds FastHidalgo County Bail Bonds Fast
Hidalgo County Bail Bonds Fast
 
7 loại hình thông minh thomas armstrong
7 loại hình thông minh   thomas armstrong7 loại hình thông minh   thomas armstrong
7 loại hình thông minh thomas armstrong
 
Introductiontoheattransfer (1)
Introductiontoheattransfer (1)Introductiontoheattransfer (1)
Introductiontoheattransfer (1)
 
Síndrome meniscal de la rodilla.ppsx
Síndrome meniscal de la rodilla.ppsxSíndrome meniscal de la rodilla.ppsx
Síndrome meniscal de la rodilla.ppsx
 
Bản mô tả công việc
Bản mô tả công việcBản mô tả công việc
Bản mô tả công việc
 
Thị trường lao động quốc tế
Thị trường lao động quốc tếThị trường lao động quốc tế
Thị trường lao động quốc tế
 
đề Cương ôn tập quản trị nhân lực
đề Cương ôn tập quản trị nhân lựcđề Cương ôn tập quản trị nhân lực
đề Cương ôn tập quản trị nhân lực
 

Similar to Get Up and Running Quickly with Drupal Distributions

Building a Drupal Distribution using Features, Drush Make, Installation Profi...
Building a Drupal Distribution using Features, Drush Make, Installation Profi...Building a Drupal Distribution using Features, Drush Make, Installation Profi...
Building a Drupal Distribution using Features, Drush Make, Installation Profi...Ben Shell
 
Introduction to Drupal
Introduction to DrupalIntroduction to Drupal
Introduction to DrupalTom Deryckere
 
Week6 office-hours
Week6 office-hoursWeek6 office-hours
Week6 office-hoursRandall Rode
 
Blisstering drupal module development ppt v1.2
Blisstering drupal module development ppt v1.2Blisstering drupal module development ppt v1.2
Blisstering drupal module development ppt v1.2Anil Sagar
 
Creating a Reusable Drupal Website for Higher Education - Webinar
Creating a Reusable Drupal Website for Higher Education - WebinarCreating a Reusable Drupal Website for Higher Education - Webinar
Creating a Reusable Drupal Website for Higher Education - WebinarSuzanne Dergacheva
 
Absolute Beginners Guide to Drupal
Absolute Beginners Guide to DrupalAbsolute Beginners Guide to Drupal
Absolute Beginners Guide to DrupalRod Martin
 
Dipping Your Toe into Drupal 8 Module Development
Dipping Your Toe into Drupal 8 Module DevelopmentDipping Your Toe into Drupal 8 Module Development
Dipping Your Toe into Drupal 8 Module DevelopmentSuzanne Dergacheva
 
Getting started with CSS frameworks using Zurb foundation
Getting started with CSS frameworks using Zurb foundationGetting started with CSS frameworks using Zurb foundation
Getting started with CSS frameworks using Zurb foundationMelanie Archer
 
Intro to Drupal Module Developement
Intro to Drupal Module DevelopementIntro to Drupal Module Developement
Intro to Drupal Module DevelopementMatt Mendonca
 
Top 20 mistakes you will make on your 1st Drupal project
Top 20 mistakes you will make on your 1st Drupal projectTop 20 mistakes you will make on your 1st Drupal project
Top 20 mistakes you will make on your 1st Drupal projectIztok Smolic
 
Fastest Way to DRUPAL
Fastest Way to DRUPALFastest Way to DRUPAL
Fastest Way to DRUPALBrahm
 
Drupal: Reusing functionality
Drupal: Reusing functionalityDrupal: Reusing functionality
Drupal: Reusing functionalityRaymond Muilwijk
 
Creating a Reusable Drupal Website for Higher Education - at USG Tech Day
Creating a Reusable Drupal Website for Higher Education - at USG Tech DayCreating a Reusable Drupal Website for Higher Education - at USG Tech Day
Creating a Reusable Drupal Website for Higher Education - at USG Tech DaySuzanne Dergacheva
 
Brief Intro to Drupal
Brief Intro to DrupalBrief Intro to Drupal
Brief Intro to DrupalJohnnie Fox
 
Rapid site production with Drupal
Rapid site production with DrupalRapid site production with Drupal
Rapid site production with DrupalRob Sawyer
 
One Drupal to rule them all - Drupalcamp London
One Drupal to rule them all - Drupalcamp LondonOne Drupal to rule them all - Drupalcamp London
One Drupal to rule them all - Drupalcamp Londonhernanibf
 
Drupal Global Training Day by Drupal Mumbai 6th Sep - Drupal Intro
Drupal Global Training Day by Drupal Mumbai 6th Sep - Drupal IntroDrupal Global Training Day by Drupal Mumbai 6th Sep - Drupal Intro
Drupal Global Training Day by Drupal Mumbai 6th Sep - Drupal IntroDrupalMumbai
 
Using Open Atrium in Your Organization
Using Open Atrium in Your OrganizationUsing Open Atrium in Your Organization
Using Open Atrium in Your OrganizationPhase2
 

Similar to Get Up and Running Quickly with Drupal Distributions (20)

Building a Drupal Distribution using Features, Drush Make, Installation Profi...
Building a Drupal Distribution using Features, Drush Make, Installation Profi...Building a Drupal Distribution using Features, Drush Make, Installation Profi...
Building a Drupal Distribution using Features, Drush Make, Installation Profi...
 
An Introduction to Drupal
An Introduction to DrupalAn Introduction to Drupal
An Introduction to Drupal
 
Introduction to Drupal
Introduction to DrupalIntroduction to Drupal
Introduction to Drupal
 
Week6 office-hours
Week6 office-hoursWeek6 office-hours
Week6 office-hours
 
Blisstering drupal module development ppt v1.2
Blisstering drupal module development ppt v1.2Blisstering drupal module development ppt v1.2
Blisstering drupal module development ppt v1.2
 
Creating a Reusable Drupal Website for Higher Education - Webinar
Creating a Reusable Drupal Website for Higher Education - WebinarCreating a Reusable Drupal Website for Higher Education - Webinar
Creating a Reusable Drupal Website for Higher Education - Webinar
 
Absolute Beginners Guide to Drupal
Absolute Beginners Guide to DrupalAbsolute Beginners Guide to Drupal
Absolute Beginners Guide to Drupal
 
Dipping Your Toe into Drupal 8 Module Development
Dipping Your Toe into Drupal 8 Module DevelopmentDipping Your Toe into Drupal 8 Module Development
Dipping Your Toe into Drupal 8 Module Development
 
Getting started with CSS frameworks using Zurb foundation
Getting started with CSS frameworks using Zurb foundationGetting started with CSS frameworks using Zurb foundation
Getting started with CSS frameworks using Zurb foundation
 
Intro to Drupal Module Developement
Intro to Drupal Module DevelopementIntro to Drupal Module Developement
Intro to Drupal Module Developement
 
Top 20 mistakes you will make on your 1st Drupal project
Top 20 mistakes you will make on your 1st Drupal projectTop 20 mistakes you will make on your 1st Drupal project
Top 20 mistakes you will make on your 1st Drupal project
 
Fastest Way to DRUPAL
Fastest Way to DRUPALFastest Way to DRUPAL
Fastest Way to DRUPAL
 
Drupal: Reusing functionality
Drupal: Reusing functionalityDrupal: Reusing functionality
Drupal: Reusing functionality
 
Creating a Reusable Drupal Website for Higher Education - at USG Tech Day
Creating a Reusable Drupal Website for Higher Education - at USG Tech DayCreating a Reusable Drupal Website for Higher Education - at USG Tech Day
Creating a Reusable Drupal Website for Higher Education - at USG Tech Day
 
Brief Intro to Drupal
Brief Intro to DrupalBrief Intro to Drupal
Brief Intro to Drupal
 
Rapid site production with Drupal
Rapid site production with DrupalRapid site production with Drupal
Rapid site production with Drupal
 
Drupal Skils Lab 302Labs
Drupal Skils Lab 302Labs Drupal Skils Lab 302Labs
Drupal Skils Lab 302Labs
 
One Drupal to rule them all - Drupalcamp London
One Drupal to rule them all - Drupalcamp LondonOne Drupal to rule them all - Drupalcamp London
One Drupal to rule them all - Drupalcamp London
 
Drupal Global Training Day by Drupal Mumbai 6th Sep - Drupal Intro
Drupal Global Training Day by Drupal Mumbai 6th Sep - Drupal IntroDrupal Global Training Day by Drupal Mumbai 6th Sep - Drupal Intro
Drupal Global Training Day by Drupal Mumbai 6th Sep - Drupal Intro
 
Using Open Atrium in Your Organization
Using Open Atrium in Your OrganizationUsing Open Atrium in Your Organization
Using Open Atrium in Your Organization
 

Recently uploaded

APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 

Recently uploaded (20)

APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 

Get Up and Running Quickly with Drupal Distributions

  • 1. Get up and Running Quickly with Drupal Distributions! by Melissa Piper 1
  • 2. Who am I? • My name is Melissa Piper • I’ve been a front-end developer for 7+ years • Front End/Drupal Developer at Beyond Spots & Dots (now hiring Drupal developers!) You can follow me at:! @mfpiper linkedin.com/in/melissapiper github.com/empee3 2
  • 3. What is a Distribution? • A pre-packaged Drupal installation that typically addresses a specific use case (blog, portfolio, publishing website, mobile-first website, etc.) • Allows the developer to begin development with pre-set configurations, modules, and themes already in place at installation • Useful to create if you find yourself always using the same modules and themes when starting a new Drupal project. 3
  • 4. Example Distributions ! OpenPublish - Distribution packaged for the online news industry (journals, onlinenewsp apers, trade publications) 4
  • 5. Example Distributions (cont…) ! ! ! ! Openfolio - A web portfolio distribution for photographers and artists 5
  • 7. What’s Inside a Distribution? • Drupal Core • Projects (contributed modules, themes, patches) • Third party libraries (CKEditor, TinyMCE) • Installation profile • Configurations (settings originally stored in the database) 7
  • 8. Main Components in Creating a Distribution • Drush Make File 
 - Pulls in core, projects, and third-party libraries
 - Description of the code base
 - A list of all contributed files that will be used in the distribution • Profile - Configuration, installation profile, features 
 - Profiles are used when you first install Drupal - default profiles are Minimal and Standard 8
  • 9. 4 Files Generated in a Distribution • .info • .install • .make • .profile 9
  • 10. Let’s Create a Distribution! 10
  • 11. • You are a Drupal developer, and find yourself installing the same modules and themes, and setting the same configurations at the beginning of each new project
 • You decide to create a distribution, so that all of these modules, themes, libraries, and configurations will be ready to go for your next Drupal project. But where do you begin? 11
  • 12. Step 1: Set the Foundation • Create and configure a Drupal site the way you want it to be in your distribution. • With a fresh Drupal install, install the themes, libraries, modules, patches, etc. that you want to include in your distribution. • Create Content Types, Menus, Taxonomy, Views, etc. • Also consider installing the Features and Profiler Builder modules (this will help us with creating our distribution later) 12
  • 13. Typical contributed modules might include: • Views and dependencies such as CTools! • Google Analytics! • Admin Toolbar! • Date! • Entity Reference! • IMCE! • WYSIWYG! • Webform 13
  • 14. Typical views and content types might include: • Featured News view and News content type! • Event registration view and event content type! • Taxonomies to categorize news and events by type! • Slideshow view 14
  • 15. Step 1.5: Features • The Features module can be used to save some of the configurations that you want to include in your distribution (such as WYSIWYG profiles, created content types and views) • These configurations are stored in the database and are NOT automatically included in your make file or installation profile • Without Features, you’ll need to create these configurations using the Drupal API (coding each with PHP) 15
  • 16. Features allows you to export most of your configurations as a module that can be included in your Make file 16
  • 17. Step 2: Generate the Make File • Once your Drupal site is configured the way you want it to be in your distribution, it’s time to generate a Make file • The Make file is generated with Drush to allow for the creation of a ready-to-use Drupal site • A flat text file that pulls in core, contributed modules, themes, and libraries 17
  • 18. • Before generating the Make file, make sure all modules, themes, and libraries that are not hosted on drupal.org are hosted SOMEWHERE (such as Github). • This includes the initial configuration module you may have generated using Features from the previous step. • You will need to provide the download URL for these types of projects in order for the Make file to run! 18
  • 19. • To generate the Make file, run the following Drush command:
 
 drush generate-makefile drupal- org.make! • You can also include the —exclude-versions flag to prevent the Make file from including version numbers for all modules and themes • Note* - Name your Make file drupal-org.make if you plan to share your distribution with the Drupal community, as this is a requirement on drupal.org 19
  • 20. Generated Make file example 20
  • 21. • In some cases, Drush will not be able to find all of the libraries, modules, or themes you want to use (often when the projected is not hosted on drupal.org). • When this happens, Drush will generate placeholder information in the Make file and prompt you to fill in the missing information (such as download URL and download type) 21
  • 22. Example of generated Make file with missing information 22
  • 23. Step 3: Generate Profile • You can use the Profiler Builder module to generate the .info, .install, and .profile files • Note* - Profile Builder also generates the Make file, but I find it more efficient to generate my own Make file if I’m including projects not hosted on drupal.org 23
  • 24. Profiler .info file generation 24
  • 25. • The Profiler Builder module will generate and automatically download the .info, .install, .profile, and .make files into a tarbell (tar.gz) download 25
  • 26. Step 4: Making the Make File • Once you have generated your make and profile files, you’re ready to test your new distribution! • Create a new directory and database for your test site • Copy and paste your drupal-org.make Make file into the new directory • In your new directory, run the Drush command:
 drush make drupal-org.make 26
  • 27. • Running the Make file will ask if you want to create a new site in this present directory • After entering “y” (yes), you will Drupal core, contributed modules, themes, and libraries being downloaded into the current directory • If all downloads complete successfully, you will have a ready-to-install download of Drupal core in your new directory. If any errors are encountered along the way, the download will stop 27
  • 28. Step 5: Adding the Profile • In your new directory, navigate to the Profiles directory • In the Profiles directory, create a new directory named the same as the .profile, .install, and .info files that were generated from the Profiler Builder module (for instance, if your .info file is named blue_drop_dist.info, name your directory blue_drop_dist) • Copy and paste your .profile, .install, and .info files into this directory 28
  • 29. Step 6: Install Your Distribution! • Navigate to your distribution directory in your browser. You will be redirected to the Drupal installation screen • When selecting your profile, in addition to the default Standard and Minimal profiles, you should see the name and description of your distribution! 29
  • 30. Example of a distribution profile ready for install 30
  • 31. • With your distribution selected, continue with installation as normal • As your distribution installs, you will see the modules and themes that you included in your Make file being installed as well 31
  • 32. Example of contributed modules being installed during distribution installation 32
  • 33. • Once installation is complete, you should be able to use the new site with the modules, themes, and libraries that you included in your distribution. 33
  • 34. A Note on Contribution 34
  • 35. Sharing Your Distribution • You can share your finished distribution on sites such as Github, or contribute your distribution on drupal.org • If sharing your contribution on drupal.org, there are a few guidelines that you must follow, such as: 35
  • 36. • Name your make file “drupal-org.make” • Install drupal.org drush extension (https:// www.drupal.org/project/drupalorg_drush) • Verify the make file
 
 drush verify-makefile • Create a sandbox project page on drupal.org • Push your distribution to the sandbox project page with Git 36
  • 37. • If this is your first time contributing on drupal.org, you will need to submit your project for approval before it can be released to the community as a full project. 37
  • 38. Example Distribution • The distribution used as an example in this presentation, The Blue Drop MFD (mobile-first distribution), can be downloaded from my Github account: • https://github.com/empee3/ the_blue_drop_mobile_first_distribution 38