* 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 ];
"update" [ style=filled, color=green ];
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
$ 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.