[pmwiki-devel] One click installation process...

The Editor editor at fast.st
Sun Nov 26 10:52:43 CST 2006


Hi all,

Someone just posted a suggestion for a one click module installation
feature.  After a bit of thought, it occurred to me something like
this might be reasonably doable...  Thought I would post some ideas
and see if there was any feedback.

First, for a one click module installation feature, we'd need to 1)
have a way to automatically download the recipe (so we don't have to
include them all automatically with the basic download). And 2)
automatically write one or more lines to the configuration file to
enable it. Also, 3) it might be nice to optionally setup a help page
for each recipe and/or a configuration page for the recipe.  I'm not
convinced this is really worth the trouble, as it's already easy to
install recipes/skins already, but these things all seem quite
doable...  And it might make PmWiki more attractive to new users...

Here is one suggested approach:  What if there were a pmwiki
"module.php" script that created a module installation markup
producing a simple "Enter Recipe Name" textbox and an install button.
When the installation button is clicked, it would retrieve a specially
designed php install file from the PmWiki recipe page if it exists (ie
zapdata-install.php).  This page would have instructions specifiying
whatever files needed to be downloaded, and/or changes that need to be
made to the config file.  It could also have commands for creating a
help page and/or a config page, (like Zapdata.Help and
Zapdata.Configuration), and any other pages that recipe might use
(Templates, pre-built zapforms, etc.).

This would not in any way change the current way to set up recipes,
but would basically allow a way for those scripts with an extra
install file to be installed "one click".  ie, enter a recipe name and
click install. We could even have a page on PmWiki listing current
recipes that have installation features, and make that retrievable as
a dropdown menu (or a list of checkboxes) via the module.php.

An uninstall markup would also be possible.  The recipe installation
file would just have a function for deleting the appropriate pages and
config file lines.  And what about an upgrade features? Checks version
of all installed recipes (or a specific recipe) against the latest
version installed on the PmWiki server and simply reinstall if it has
been updated.  (This should only be done on command, not automatically
as some upgrades might require markup changes.)

The actual modules script would not be that hard, and adding a few
functions for simplifying downloading pages, creating recipe pages,
making config file changes, etc., would make it easier for a recipe
writers to create the auto install file.  We would have to of course
establish some recipe standards (like version numbers, etc.)  Anyway,
it does seem like a really nice way to hook people into trying PmWiki
without modifying how it currently works.  Any feedback?

Cheers,
Caveman



More information about the pmwiki-devel mailing list