* enable or disable modules from the UNIX command line
* list all enabled or disabled modules on your site
* generate a dot file of your modules (for processing with graphviz - easily convertible to a PNG image of all you modules with the dependency graph)
( we assume you have an installed Drupal with drush and drush_mm enabled and access to a UNIX shell and you are in the Drupal main dir )
( use drush help in the shell to remind you of options )
$ drush mm list missing: privatemsg simpletest sms enabled: admin_menu adminrole ... views views_ui disabled: blogapi book charts ...
So you can copy the space-separated list of modules and give it to a "enable" or "disable" command.
$ drush mm enable blogapi book charts
With a :
$ drush mm disable blogapi book charts
you disable those back ...
If you are going to do a Drupal core update, and you issue a "drush mm list" command you will get a list of ALL enabled modules and will have to get out of it the core modules ...
So I made a BASH script for this and attached it below - drlist_contribs.sh_.txt . It gives you only enabled contribs! And you can copy the output to "drush mm disable" ! And after that, you would run "drush mm enable"! Voilla!
The last command is "dot":
$ drush mm dot >backup/site1.dot # ( the backup dir is created by drush after the 1st module update - there it stores old versions of modules - and it makes sense to put your dot files there too. We assume that you have a multisite and site1 needs its modules dumped to a list ... ) ... "tracker" [ style=filled, color=green ]; "tracker" -> "comment" "translation" [ style=filled, color=green ]; "translation" -> "locale" "trigger" [ style=filled, color=green ]; "trigger" "update" [ style=filled, color=green ]; "update" ...
This is meta text with all dependencies and enabled (green), disabled (yellow). To get a png file just:
$ sudo apt-get install graphviz # ( install graphviz on debian-based linux - this may differ on your distro ) $ man dot # ( the manual of the dot viewer ) $ cd backup/ $ dot -Tpng -o site1.png site1.dot # for a top down graph - a very wide image or $ neato -T png -Goverlap=false -o site1.neato.png site1.dot # with non overlapping nodes - both quite wide and high image
So now we have a dot image file with all our modules with all in it except the versions.