Update manager WebUI

Additional to many under to hood improvements i have implemented the WebUI to manage the package updates.

Plugins administration WebUI part II

After rethinking the plugin functionality i realized that the current implementation does not reflect my requirements. It should be possible to upload plugins via WebUI (which are added to a local APT archive then) and the WebUI should also display plugins that are in the OMV package web archive. So i refactored the WebUI and backend to meet these requirements. It is only possible to install OMV plugins via WebUI (no other *.deb packages), so the packages must meet a naming convention, otherwise the backend denies uploading and installation.

Note, OMV plugins only contain the files required by the framework, e.g. the scripts, WebUI javascript and backend PHP files. The package(s) the plugin requires additionally are defined as package dependencies (get more informations here and here), this means the NAS box must have I-Net access to download these additional packages during installation.

Source: openmediavault-transmissionbt
Section: net
Priority: optional
Maintainer: Volker Theile <votdev@gmx.de>
Build-Depends: debhelper (>> 7)
Standards-Version: 3.6.10
Homepage: http://www.openmediavault.org

Package: openmediavault-transmissionbt
Architecture: all
Depends: openmediavault, transmission-daemon (>= 1.77)
Description: OpenMediaVault TransmissionBT (BitTorrent) plugin
 Transmission is a simple BitTorrent client that features a very simple and
 intuitive interface.

I do not plan to implement a special plugin package management that does not need network access to get these additional packages (which means the additional packages are included in one big file).

Plugins administration WebUI

Today i finished the implementation of the plugin administration WebUI. Now it is possible to install and delete OpenMediaVault plugins via WebUI. The plugins itself a generic Debian packages. This makes it easy to handle package dependencies and the whole install/remove process.

The (really important) ‘About’ page has been already design 🙂