Main Stories
Slash Boxes

Slash Open Source Project

HOWTO For Plugins

posted by Krow on 02:25 PM February 22nd, 2001   Printer-friendly   Email story
Ok, what follows is the first draft of the HOWTO on plugins for Bender. This is currently in CVS. Any feedback is appreciated. Hope this answers some questions for admins.

NAME

HOWTO-Plugin - How to write and use Slash plugins


What is a plugin?

A plugin is an extension to the Slash system that adds some sort of functionality to the site. It should inherit its basic look and feel from the currently running theme (for example, backgroun/foreground colors, calling header and footer components, etc. will be handled by the installed theme).


How do I get my plugin into the install system?

There are two ways to do this. First, you can put it in the plugins directory with the distribution. During the install it will be copied to the plugins directory in (by default, /usr/local/slash/plugins/. The second option is to copy it in there yourself and make sure that your library files (perl modules) are installed. If you decide to go the first route you may want to consider adding your libraries to the list that get installed from the Makefile (this is the Makefile that comes with the distribution).


What does my plugin need to make it work with the install?

If you look at the plugins that come with Slash you will find a file called PLUGIN. This handles how the plugin installer will see your plugin. The syntax is that each keyword must appear on a line by itself with a '=' seperating it and the directive. The following are the keywords it knows:

description
What will be displayed during the install for the user, describing what the plugin does

mysql_schema
Schema for MySQL

mysql_dump
Dump for MySQL

pg_schema
Schema for PostgreSQL

pg_dump
Dump for PostgreSQL

htdoc
A document to be installed in the htdocs directory for the Slash site

template
A template to be installed in the database

image
An image to be installed in the image directory

note
A note to show the user when the install is over. Good place to put notes about aditional libraries needed, or other dependencies.


How do I install a plugin once my site is installed?

Use the install-plugin tool. If you call it with a -? it will give you its basic syntax. If run it will list what plugins it knows about and you can then select which plugins you want (just like the install).


Do install-plugin and install-slashsite use the same logic?

Yes, you can find it in the Slash::Install library.


I have a really cool plugin and I would like to see it added to the Slash distribution. Will you distribute mine?

Maybe. We don't have any rules concerning this at the moment, so it will be on a case by case basis. At some point in the future we will come up with a much better answer.

This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login
Loading... please wait.