Index: modules/system/system.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/system/system.module,v
retrieving revision 1.406
diff -u -p -r1.406 system.module
--- modules/system/system.module	24 Nov 2006 10:57:20 -0000	1.406
+++ modules/system/system.module	24 Nov 2006 17:26:51 -0000
@@ -1807,10 +1807,46 @@ function system_status($check = FALSE) {
     return drupal_requirements_severity($requirements) == REQUIREMENT_ERROR;
   }
 
+  // Output list of enabled modules.
+  $modules = module_rebuild_cache();
+  $enabled = array();
+  foreach ($modules as $module) {
+    if ($module->status) {
+      if (!isset($module->info['package'])) {
+        $module->info['package'] = 'Uncategorized';
+      }
+      if ($module->info['package'] != 'Core - required') {
+        $version = $module->info['version'] ? $module->info['version'] : t('No version information');
+        $enabled[$module->info['package']][$module->name] = t('@module (@version)', array('@module' => $module->info['name'], '@version' => $version));
+      }
+    }
+  }
+  $requirements['enabled_modules'] = array(
+    'title' => t('Enabled modules'),
+    'description' => theme('status_enabled_modules', $enabled),
+    'severity' => REQUIREMENT_INFO,
+  );
+
   return theme('status_report', $requirements);
 }
 
 /**
+ * Themes the output of the enabled module listing on the 
+ * system status page.
+ *
+ * @ingroup themeable
+ */
+function theme_status_enabled_modules($modules) {
+  $output = '';
+  foreach ($modules as $package => $modules) {
+    $output .= '<strong>'. t($package) .'</strong>';
+    $output .= theme('item_list', $modules);
+  }
+
+  return $output;
+}
+
+/**
  * Helper function to sort requirements.
  */
 function _system_sort_requirements($a, $b) {
