DokuWiki

It's better when it's simple

User Tools

Site Tools


plugin:plugin

Plugin Manager plugin

Compatible with DokuWiki

(bundled)

plugin Manage and install plugins (bundled with DokuWiki)

Provides
Admin

Description

The Plugin Manager plugin allows superusers to administrate installed plugins and install new ones.

Usage

The Plugin Manager is accessible from the admin screen (Login as superuser, click “Admin” and choose “Manage Plugins”).

Listing Installed Plugins

This is the default action of the Plugin Manager. Each plugin is shown in its own row. A checkbox in front of the name indicates if the plugin is enabled or not.

Plugins listed with a light red background can not be deleted. Plugins with a light blue background are currently disabled.

Enabling/Disabling Plugins

To disable a plugin, uncheck the checkbox in front of its name and press the save button. Plugins are disabled by placing a disabled file into the plugin directory.

Disabled plugins will no longer be loaded by DokuWiki, their stylesheets and JavaScript won't be loaded, and their syntax will no longer have any effect.

Display Plugin Details

Pressing the info button will display some basic information about the chosen plugin and its components. The Source and Installed fields are only available when the plugin was installed through the Plugin Manager.

Installing a Plugin from a Remote URL

The plugin manager can download, unpack and install plugins for you. To install a new plugin follow these steps:

  1. Find the plug in you want in the plugins page
  2. Copy the link (URL) to the plugin package (in .tgz or .zip format) from the plugin's detail page
  3. Paste the link into the URL box on your Plugin Manager page and hit “Download”

Updating a Plugin

When you install a plugin with the plugin manager it will remember the download URL. To update a plugin you can simply press the “Update” button next to it and the Plugin Manager will redownload the plugin and install it again, overwriting the older version.

Note: This only works when the plugin maintainer always uses the same URL for the plugin or provides some redirection to the latest version through a common URL. If this is not the case just get the new URL and install it like a new plugin. The Plugin Manager then will update your old plugin.

Plugins that were not installed through the plugin manager can not be updated with this method. The “Update” button is disabled for these plugins.

File Permissions

To be able to install and modify your plugins, the webserver needs to be able to write to the lib/plugins directory and all files below. Refer to permissions for details on how set file permissions on various systems.

The plugin manager will detect missing file permissions and warn you when a plugin could not be installed. You have to install plugins manually in this case, by downloading and unpacking them in lib/plugins your self.

Possible Error Sources

If you try to install plugins using the automatic download and install tool and get the error message ”No plugins found, or there has been an unknown problem during downloading and installing.”, then you should check:

  • whether your server has activated the zlib (and/or bzip2) extension for php. To be sure, try the following: Download a plugin, extract it, and rearchive it into a .tar file (without compression). Now try to use the download and install tool on that .tar file. If it works now, it is most likely that you just need to install the php-zlib package.
  • whether your server is able to retrieve files over SSL (https://). Many plugins (correctly) use secure download links, including all those hosted on github. If your server is incorrectly setup to use SSL for file retrieval, try dropping SSL by deleting the 's' and changing the schema to 'http://' or see below.

Bugs/feature requests

Please refer to DokuWikis bug tracker for reporting bugs or feature requests.

Discussion

Another Error Source for failed downloads: SSL

Hopping around on a few free webhosters and a WAMPP I debugged the download problem a little until this popped up:

100 Could not connect to ssl://github.com:443 
Unable to find the socket transport "ssl" - did you forget to enable it when you configured PHP? (5) 

I traced that down by patching inc/io.php + 477 (calling inc/HTTPClient.php) like this:

    $data = $http->get($url);
    if(!$data) {
        print $http->error;
        print $http->status;
        return false;
    }

All the download-links to github are automatically redirected to ssl-connections, no opt-out planned 1).

Problem is, as of now SSL transports are disabled on XAMPP and UniServer (WAMPs) and all cheap webhosters I tried so far (even those very few, that allow sockets at all).

phpinfo() may give – for example:

Registered Stream Socket Transports 	 tcp, udp, unix, udg 

:!: In XAMPP the openssl extension is actually compiled in but not activated by default. So adding

extension=php_openssl.dll

to php.ini (xampp/php/php.ini) will solve the issue.

Nice. But in the typical shared webhosting scenario, access to php.ini will not be available.

No easy fix there.

bjoernXbjoernX

2011/04/25 09:32

This is a known problem, see http://support.github.com/discussions/site/2232-allow-downloads-via-http-non-ssl. Yes, you're unfortunately right: No easy fix there. — Anika HenkeAnika Henke
ach

London, UK
2011/04/25 10:47
Thanks, Anika. Strange discussion there… it almost seems, they don't get the point. Claiming security at github against plain http as an option for package downloads sound ridiculous to me. I was wondering – maybe some kind of proxy in-the-middle thing might work, but I'm not sure, if it's worth the effort. — bjoernXbjoernX

2011/04/26 13:42

Report and possibly workaround: 2727


/dev/urandom permissions on ubuntu

:!: One for those that may follow the red herring that incorrectly points to this issue: Ubuntu 12.04 Precise fully patched, all the extensions needed were installed. Running on a VPS, Dokuwiki the Splitbain Release 2012-01-25b “Angua” and not the Ubuntu repository version:

Update via the plugin manager fails.

 Downloading archive from https://github.com/splitbrain/dokuwiki/tarball/master?.tgz...
 Could not connect to ssl://github.com:443 (0)
 Download failed.

Issue was eventually diagnosed as a /dev/urandom with incorrect permissions. Changing it to 777 was the magic bullet.

plugin/plugin.txt · Last modified: 2014/03/06 11:52 by ach