This document explains how to update and customize the Roundcube webmail application.
The SQLite database uses the following path and filename, where
username represents a cPanel account username and
domain represents a domain name:
Additionally, the database applies the following naming conventions, where
username represents a cPanel account username:
|A backup file with a Unix timestamp.|
|A symlink to the latest Roundcube backup.|
|A SQLite v2 backup file.|
The method that cPanel & WHM uses to update Roundcube affects your customizations. cPanel & WHM uses the following process to update Roundcube:
/scripts/upcpscript to update cPanel & WHM.
/scripts/upcp script runs the
During this step, the script will check for custom Roundcube tarballs. For more information, read the Where to save a custom Roundcube tarball installation section.
/usr/local/cpanel/install/webmailscript executes the
/usr/local/cpanel/bin/update-roundcube script runs the following command to remove the current Roundcube installation:
rm -rf /usr/local/cpanel/base/3rdparty/roundcube
/usr/local/cpanel/bin/update-roundcube script extracts the appropriate source tarball to the
During this step, the
/usr/local/cpanel/bin/update-roundcubescript changes the ownership of the Roundcube installation to the
rootuser and the
/usr/local/cpanel/bin/update-roundcube script checks for the existence of the
/usr/local/cpanel/bin/update-roundcubescript extracts MySQL configuration values from the system settings.
/usr/local/cpanel/bin/update-roundcube script backs up Roundcube's MySQL database to the
/var/cpanel/roundcube/roundcube.backup.sql.currenttimestamp file, where
currenttimestamp represents the time at which the script ran.
/usr/local/cpanel/bin/update-roundcubescript drops the Roundcube database from MySQL.
/usr/local/cpanel/bin/update-roundcubescript updates Roundcube's configuration files and MySQL files with the server's settings.
/usr/local/cpanel/bin/update-roundcubescript recreates Roundcube's database from the MySQL files.
/usr/local/cpanel/bin/update-roundcubescript reloads the previous Roundcube database backup and finishes the update.
There are many ways that you can customize Roundcube. For example, you can make simple configuration changes or completely replace the Roundcube tarball.
For instructions on how to customize Roundcube, read the Roundcube wiki.
During step 2 of the Roundcube update installation procedure, the
/usr/local/cpanel/bin/update-roundcube script checks for custom Roundcube tarballs. If any of these tarball files exist, cPanel & WHM uses them instead of the cPanel-provided tarball.
If the script locates multiple tarballs, it uses them in the following order, where
RCUBE_VERSION represents the Roundcube version number:
|Use this location for a compressed tarball that you want to apply to a specific Roundcube version.|
|Use this location for an uncompressed tarball that you want to apply to a specific Roundcube version.|
|Use this location for a compressed tarball that you want to apply to Roundcube, regardless of version.|
|Use this location for an uncompressed tarball that you want to apply to Roundcube, regardless of version.|
For example, cPanel & WHM uses the
/var/cpanel/roundcube/roundcube-0.4-local.tar.gz file if the following statements are true:
/var/cpanel/roundcube/roundcube-0.4-local.tar.gzfile matches the version number that the
The overlay tarball allows you to customize specific attributes of Roundcube, such as the use of an overlay to change graphics, themes, or plugins. It can also contain one image file.
The overlay does not require a complete Roundcube distribution. It only requires the components that you wish to modify, because cPanel & WHM will overlay it onto the Roundcube installation. However, the overlay requires a directory structure that matches the
/usr/local/cpanel/base/3rdparty/roundcube directory structure and begins with the
After you determine which tarball to use for the source installation and extract it, the
/usr/local/cpanel/bin/update-roundcube script checks for the following directories. If the script locates multiple tarballs, it uses them in the following order, where
RCUBE_VERSION represents a Roundcube version number:
|Use this location for a compressed overlay that you want to apply to a specific Roundcube version.|
|Use this location for an uncompressed overlay that you want to apply to a specific Roundcube version.|
|Use this location for a compressed overlay that you want to apply to Roundcube, regardless of version.|
|Use this location for an uncompressed overlay that you want to apply to Roundcube, regardless of version.|
The value of the