Tags
Tags
I'm using roundcube and I like it very much.
For me there is no really good theme for roundcube that is why I've adapted one to my likings.
This theme is based on groupvice4 by the user Julius Caesar.
The major version of this theme is equal to the major version of roundcube since 0.6.
E.g.: rc 0.6 → gv4alw 0.6
Latest version of theme
Latest version of theme-plugins
Version | Roundcube-Version | Plugins-Version |
---|---|---|
0.6.0 | 0.6 | TODO |
0.3.1 | 0.5.3 | v0.3.1 |
0.3 | 0.5.3 | v0.3.1 |
0.2 | 0.5rc-0.5 | v0.2 |
There is also a git repository for this theme and the plugins hosted on github:
For more details see CHANGELOG.
You can install this theme either using the install script below or running the commands manualy.
The install script will do all steps needed to install this theme for you:
install-script
install-script
#!/bin/bash rcdir="${1}" THEMENAME="gv4alw" THEMEURL="http://andrwe.org/lib/exe/fetch.php/scripting/roundcube/${THEMENAME}/${THEMENAME}.tar.gz" PLUGINURL="http://andrwe.org/lib/exe/fetch.php/scripting/roundcube/${THEMENAME}/${THEMENAME}-plugins.tar.gz" MODPLUGINS='managesieve sieverules' VERBOSE=0 opt="" skip=0 function usage() { echo "This script installs the roundcube theme ${THEMENAME} and its plugins. Just start it using the absolute roundcube install path as argument: $0 /path/to/roundcube-root/ e.g.: $0 /var/www/roundcube/ " } [ $# -ne 1 ] && usage && exit 1 [ ! -d ${rcdir} ] && echo "${rcdir} doesn't exist or isn't a directory." && exit 1 [[ ! ${rcdir} =~ ^/ ]] && echo "Relative path isn't supported. Use absolute path." && usage && exit 1 [ ${VERBOSE} -ne 0 ] && opt="v" echo "Retrieving packages ..." wget -O /tmp/${THEMENAME}.tar.gz "${THEMEURL}" || exit 1 wget -O /tmp/${THEMENAME}-plugins.tar.gz "${PLUGINURL}" || exit 1 echo "Changing directory to ${rcdir}/skins/" cd "${rcdir}/skins/" if [ -d ${THEMENAME} ] then echo "Checking version ..." locver="$(<"${THEMENAME}"/VERSION)" tarver="$(tar xfO${opt} "/tmp/${THEMENAME}.tar.gz" "${THEMENAME}/VERSION")" if [ "${locver}" == "${tarver}" ] then skip=1 echo "Theme is up-to-date. Skipping." fi fi if [ ${skip} -eq 0 ] then echo "Installing ${THEMENAME} ..." rm -rf${opt} "${THEMENAME}" tar xfz${opt} /tmp/${THEMENAME}.tar.gz || exit 1 echo "... theme installed." fi echo "Preparing plugin installation ..." mkdir -p /tmp/${THEMENAME}-plugins cd /tmp/${THEMENAME}-plugins tar xfz${opt} /tmp/${THEMENAME}-plugins.tar.gz echo "... preparation done." echo "Installing plugins ..." for plugindir in * do plugin="$(basename "${plugindir}")" if [ -e "${rcdir}/plugins/${plugin}" ] then echo -n "${plugin}: " locver="$(<"${rcdir}/plugins/${plugin}/skins/${THEMENAME}/VERSION")" tarver="$(<"${plugindir}/skins/${THEMENAME}/VERSION")" if [ "${locver}" != "${tarver}" ] then rm -rf${opt} "${rcdir}/plugins/${plugin}/skins/${THEMENAME}" cp -r${opt} "${plugindir}/skins/" "${rcdir}/plugins/${plugin}/" echo "updated" else echo "up-to-date" fi fi done echo "... installation done." echo "Now installed plugins would be modified to fully support this themes capabilities. For each modification you can choose whether it should be done, default choice is no. All done modifications will be shown." read -p "Should the plugins be modified? (y/N) " modify if [ "${modify}" == "y" -o "${modify}" == "Y" ] then for plugin in ${MODPLUGINS} do [ ! -d "${rcdir}/plugins/${plugin}" ] && continue case ${plugin} in "managesieve") echo "managesieve: public \$task = 'settings' => public \$task = '?(?!login|logout).*'" read -p "Modify? (y/N) " modplugin if [ "${modplugin}" == "y" -o "${modplugin}" == "Y" ] then sed -i 's/public \$task = \(.\)settings|mail|addressbook.;$/public $task = \1?(?!login|logout).*\1;/g' "${rcdir}/plugins/${plugin}/${plugin}.php" echo "managesieve modified" fi ;; "sieverules") echo "sieverules: public \$task = 'settings' => public \$task = '?(?!login|logout).*'" read -p "Modify? (y/N) " modplugin if [ "${modplugin}" == "y" -o "${modplugin}" == "Y" ] then sed -i 's/public \$task = \(.\)settings.;$/public $task = \1?(?!login|logout).*\1;/g' "${rcdir}/plugins/${plugin}/${plugin}.php" echo "sieverules modified" fi ;; esac done fi echo "Cleanup ..." rm -rf${opt} "/tmp/${THEMENAME}"-plugins{,.tar.gz} "/tmp/${THEMENAME}.tar.gz" echo "... cleanup done." echo "Script finished."
To install the theme change into the skins directory of your roundcube installation, e.g.:
cd /var/www/roundcube/skins/
and extract the archive, e.g.:
tar xvfz /tmp/gv4alw.tar.gz
To install the plugin support change into the plugins directory of your roundcube installation, e.g.:
cd /var/www/roundcube/plugins/
and extract the archive, e.g.:
tar xfvz /tmp/gv4alw-plugins.tar.gz
This way maybe new directories will be created for plugins supported by the theme but not installed.
To fully use all features of this theme you can modify the plugins which add an own tab to the tabbar like managesieve or sieverules in the following way:
[…] this […]