On Fri, 08 Jun 2007 19:42:49 -0600, Kasimir Gabert wrote:
Hm.... so I am picturing something similar to the following:
HTTP or FTP get requests possible to the server. Structure of files on the server: Top level folders: core trusted universe
I think there is some kind of classification, as to which extensions are installed on the official projects, which are in SVN, and which are third-party extensions with links from mediawiki.org. But splitting the structure this way seems counter productive, since it could take some effort to upgrade an extension if it becomes more trusted, and thus needs to be reloaded.
In each folder, it is split up into each letter of the alphabet. For example, core/a/anextensionfolder core/a/apples etc.
It seems unlikely that anyone would have that many extensions installed. Using the same structure as the SVN should be sufficient.
The extension folder would be downloaded to $IP/extensions/.
And the appropriate UPGRADE or INSTALL file in the directory would be shown.
Then it would search for LocalSettings.php.include file (or something similar), and automatically add its content to LocalSettings.php.
If that file does not exist, then it would add require_once("$IP/extensions/extensionfolder/ExtensionName.php"); to LocalSettings.php.
I could even see it proping for the fields in LocalSettings.php as defined by LocalSettings.php.include, so the user could install it without ever touching the terminal or LocalSettings.php.
Currently, the extensions that use this mechanism have a file called "install.settings" which is added to LocalSettings.php after some simple string substitution.
I think it would be useful to extend this or include a similar file describing configuration options, so Special:Extensions could display it as a web form.