Index: follow.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/follow/follow.module,v
retrieving revision 1.1.2.15
diff -u -r1.1.2.15 follow.module
--- follow.module	12 Jan 2010 17:22:38 -0000	1.1.2.15
+++ follow.module	9 Feb 2010 01:27:49 -0000
@@ -575,7 +575,8 @@
   }
   else {
     // We don't have an API to create new networks yet, so for now, we only call hook_follow_networks().
-    $networks = module_invoke_all('follow_networks');
+    $networks = follow_default_networks();
+    drupal_alter('follow_networks', $networks);
     cache_set('follow:networks', $networks);
   }
   return $networks;
@@ -587,7 +588,7 @@
  * @return
  *   An array of network names, keys are machine names, values are visible titles.
  */
-function follow_follow_networks() {
+function follow_default_networks() {
   return array(
     'facebook'  => t('Facebook'),
     'virb'      => t('Virb'),
Index: follow.api.php
===================================================================
RCS file: follow.api.php
diff -N follow.api.php
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ follow.api.php	1 Jan 1970 00:00:00 -0000
@@ -0,0 +1,17 @@
+<?php
+// $Id$
+
+/**
+ * Alter the available networks to the Follow module.
+ *
+ * @param $networks
+ *   Associative array of networks that are available.
+ */
+function hook_follow_networks_alter(&$networks) {
+  // Add a network.
+  $networks['mailinglist'] = t('Mailing List');
+
+  // Replace Twitter with Identi.ca
+  unset($networks['twitter']);
+  $networks['identica'] = t('Identi.ca');
+}
