Unified MOD Install Library
Introducing UMIL - What is it?
UMIL (Unified MOD Install Library) was built by EXreaction under the supervision of the MOD Team. This utility enables MOD Authors to create simple installation scripts for their MOD that allow the user to install, update, or uninstall a Modification quickly. Released under the GNU GPL license, UMIL is included within MOD Packages to make MOD Installations simple and automatic.
UMIL performs basic database actions that would be required to install a MOD. UMIL does not perform file edits. AutoMOD (Blinky) is the tool of choice for file edits and installing MODs from a MODX (xml) file. AutoMOD (Blinky) does not perform module, permission installations, etc. This is why UMIL exists.
What does UMIL do?
The Unified MOD Install Library can perform any of the following operations from within a UMIF (Unified MOD Install File) provided by the Modification:
- Add, update, or remove configs
- Add or remove modules
- Add or remove permissions
- Set or unset permission options from roles and groups
- Add or remove database tables
- Add, update, or remove table columns
- Add or remove table keys/indexes
- Purge / Refresh Caches
How do I install UMIL?
Most modifications will be distributed with the UMIL package, you would need to simply follow the install instructions from within the install XML (MODX) file for the MOD.
If you are downloading UMIL from the downloads page, you will find a file called “install.xml” in the package. Open this file up in your browser. This file contains instructions for installing UMIL. Installation of UMIL is a simple process of dragging the 'umil' directory from within the UMIL root directory to your phpBB directory and uploading to the server.
How does the end-user use UMIL?
When a user downloads a UMIL enabled Modification, they can run the installation script (known as a UMIF - Unified MOD Install File) provided with the MOD. To run a UMIF, browse to the file in your browser as directed by the MOD install instructions. UMI Files can be ran in much the same way phpBB3 is installed onto the server. UMIFs provide a nice user interface that enables the user to easily install, update and uninstall MODs.
How does UMIL benefit the end-user?
UMIL makes installing modules, permissions, database tables, columns, configs, making SQL changes, purging caches, and other database operations an easy and pain-free task. The user would simply run the installation script provided and the UMI Library would determine what actions to perform. Where MODs would normally use the complicated and detailed DIY-Instructions within MODX or their own installation script, they would now use the UMI Library to perform these tasks automatically.
How does the MOD Author use UMIL?
The MOD Author will create a file called the UMIF (Unified MOD Install File), this file utilises the UMI Library to perform the database installation, updates or uninstalls at the user’s request. UMIL is a very easy to use API (Application Programming Interface) that allows MOD Authors to easily and quickly create UMIF files. UMIL is extremely intuitive and easy to learn.
How does a MOD Author create a UMIF?
There are several simple methods to create a UMIF.
- Create a basic UMIF using the UMIF Creation Tool.
- Use one of the two example UMIF files located in the SVN or the downloads page.
- Reference the Wiki UMIL Documentation or the downloads page. Documentation downloads are provided in docx and pdf formats.
If you work with UMIL, please consider contributing additional documentation to the UMIL Documentation on the Wiki so that it may benefit others.
How does UMIL benefit the MOD Author?
- Easily and quickly create installation scripts for Modifications.
- Complicated database components (permissions, modules, etc) are now easy to create.
- No more complicated installation instructions for modules, configs, or SQL queries.
- Eliminate user error, effectively decreasing support time and headaches.
- UMIF/UMIL conforms to the MOD Database Guidelines and Policies.
- No hard-coded language or HTML within installation scripts.
Multiple translations are supported in the UMI library with no need for MOD Authors to support all languages. If you are a translator or maintainer and would like to provide a translation for UMIL, please contact the Modifications Team Leader.
Found a bug?
If you believe you have found a bug within UMIL, please report it to the UMIL (MOD Tools) Bug Tracker
Feedback, Suggestions, Features
If you have feedback or feature suggestions for UMIL, please contact the MOD Team Leader.
UMIL SVN (Subversion) Development
If you wish to test the ongoing development of UMIL, you may checkout the SVN trunk or view the repository here: UMIL GitHub.