]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - README
Fix help text for getvaliddaemons.php
[quix0rs-gnu-social.git] / README
diff --git a/README b/README
index 2c92a75da8b925f05ebb0c8ccfe7e77498cf6de2..0bf1319c6d4d4b1b0c0345b3f5168d566323ef2a 100644 (file)
--- a/README
+++ b/README
@@ -3,7 +3,7 @@ README
 ------
 
 Laconica 0.8.0 ("Shiny Happy People")
-8 July 2009
+15 July 2009
 
 This is the README file for Laconica, the Open Source microblogging
 platform. It includes installation instructions, descriptions of
@@ -116,6 +116,16 @@ This is a major feature release since version 0.7.4, released May 31
   as default TOS for Laconica sites.
 - Better command-line handling for scripts, including standard options
   and ability to set hostname and path from the command line.
+- An experimental plugin to use Meteor (http://www.meteorserver.org/)
+  for "real-time" updates.
+- A new framework for "real-time" updates, making it easier to develop
+  plugins for different browser-based update modes.
+- RSS 2.0 and Atom feeds for groups.
+- RSS 2.0 and Atom feeds for tags.
+- Attachments can be sent by email.
+- Attachments are encoded as enclosures in RSS 2.0 and Atom.
+- Notices with attachments display in Facebook as media inline.
+
 - Many, many bug fixes.
 
 Prerequisites
@@ -124,7 +134,7 @@ Prerequisites
 The following software packages are *required* for this software to
 run correctly.
 
-- PHP 5.2.x. It may be possible to run this software on earlier
+- PHP 5.2.3+. It may be possible to run this software on earlier
   versions of PHP, but many of the functions used are only available
   in PHP 5.2 or above.
 - MySQL 5.x. The Laconica database is stored, by default, in a MySQL
@@ -252,13 +262,16 @@ especially if you've previously installed PHP/MySQL packages.
    that user's default group instead. As a last resort, you can create
    a new group like "mublog" and add the Web server's user to the group.
 
-4. You should also take this moment to make your avatar subdirectory
-   writeable by the Web server. An insecure way to do this is:
+4. You should also take this moment to make your avatar, background, and
+   file subdirectories writeable by the Web server. An insecure way to do
+   this is:
 
          chmod a+w /var/www/mublog/avatar
+         chmod a+w /var/www/mublog/background
+         chmod a+w /var/www/mublog/file
 
-   You can also make the avatar directory writeable by the Web server
-   group, as noted above.
+   You can also make the avatar, background, and file directories
+   writeable by the Web server group, as noted above.
 
 5. Create a database to hold your microblog data. Something like this
    should work:
@@ -1419,6 +1432,51 @@ notify third-party servers of updates.
 notify: an array of URLs for ping endpoints. Default is the empty
         array (no notification).
 
+Plugins
+=======
+
+Beginning with the 0.7.x branch, Laconica has supported a simple but
+powerful plugin architecture. Important events in the code are named,
+like 'StartNoticeSave', and other software can register interest
+in those events. When the events happen, the other software is called
+and has a choice of accepting or rejecting the events.
+
+In the simplest case, you can add a function to config.php and use the
+Event::addHandler() function to hook an event:
+
+    function AddGoogleLink($action)
+    {
+        $action->menuItem('http://www.google.com/', _('Google'), _('Search engine'));
+        return true;
+    }
+
+    Event::addHandler('EndPrimaryNav', 'AddGoogleLink');
+
+This adds a menu item to the end of the main navigation menu. You can
+see the list of existing events, and parameters that handlers must
+implement, in EVENTS.txt.
+
+The Plugin class in lib/plugin.php makes it easier to write more
+complex plugins. Sub-classes can just create methods named
+'onEventName', where 'EventName' is the name of the event (case
+matters!). These methods will be automatically registered as event
+handlers by the Plugin constructor (which you must call from your own
+class's constructor).
+
+Several example plugins are included in the plugins/ directory. You
+can enable a plugin with the following line in config.php:
+
+    addPlugin('Example', array('param1' => 'value1',
+                               'param2' => 'value2'));
+
+This will look for and load files named 'ExamplePlugin.php' or
+'Example/ExamplePlugin.php' either in the plugins/ directory (for
+plugins that ship with Laconica) or in the local/ directory (for
+plugins you write yourself or that you get from somewhere else) or
+local/plugins/.
+
+Plugins are documented in their own directories.
+
 Troubleshooting
 ===============