Posts

Error when sending mail from Roundcube Webmail

Symptom:
You can login to Roundcube/Webmail but receive an error when sending.

Possible Solution:
Edit the following file
/usr/local/topicdesk/roundcube/WebApp/config/config.inc.php

Add the following 2 lines
$config['smtp_user'] = '%u';
$config['smtp_pass'] = '%p';

Changes take effect immediately, no need to logout.

Test sending mail.


Please leave a comment if this worked for you, or if it didn’t and you’d like additional advice.

Jeff

Why did Server 5.1 break Roundcube Webmail ?

It appears that Server 5.1 doesn’t properly activate webapps for the two default websites.

This issue only effects roundcube installations upgraded to Server 5.1
Roundcube can be installed or re-installed on Server 5.1 without issue.

Quick Fix

To re-activate the webapp after upgrading to Server 5.1, run this command:

sudo /Applications/Server.app/Contents/ServerRoot/usr/sbin/webappctl start com.topicdesk.roundcube

How Do I Add a Webmail Icon to the Default OS X Server Page?

Screenshot 2016-03-03 14.32.32
Please read the complete tutorial before attempting This tutorial is valid for OS X 10.10 & 10.11 running Server app 5


To complete this tutorial you will need Terminal and your favorite text editor (Sublime Text or Adobe Brackets are great for this) and of course admin privileges.

Step 1 – copy default page to Desktop

To locate the correct path for your language paste this command into Terminal

ls /Library/Server/Web/Data/Sites/Default/

In Terminal paste in the following code: This example is using the English version simply adjust for your default server language

cp -H /Library/Server/Web/Data/Sites/Default/default.html.en ~/Desktop/default.html

Step 2

Now that we have a workable copy open the default.html page on your desktop in your text editor.

We will be adding in 3 sections of code into the page.

The first will be located close to the top of the file after the opening style tag around line 42. Locate either visually or by using the Find option the section that looks like this, paste this code over top of the existing code: (alternatively you can just change the height value from 496 to 575).

modified CSS for page spacing

#main {
width: 658px;
height: 575px; /* changed from 496 to 575 */
position: relative;
margin-top: 20px;
margin-bottom: 20px;
padding-left: 36px;
padding-right: 36px;
}

The next code block will be entered around line 141 right before the code that reads:

#bottom .item .item_desc_container {

Click the empty line before the code above and hit enter a couple of times to create space and then paste in the following code:

CSS code for icon(s) – This covers both standard & hidpi icons

/* Begin Webmail Icon in base64 encoding */
#bottom .item .img_item.webmail {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAAlwSFlzAAALEwAACxMBAJqcGAAAAVlpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KTMInWQAAEyNJREFUeAHtmneQVkWzxg9JMYAImAFFDKioiNkrll7rlmW6WgbUa0Dl+7TEEjFnLXO4oqWUocw5Q5lDGVZFxUCZE4qggjknlE1zn1+/5zmcfdldd2Hxr9tV886cCT3dPT09PT1vp+yfg06ayolZKRuSC8oblcrfpaaOL5aJ6Gjs4O6cJ5hqaMcEjOuihCAYS1oosDAEYKbrm6G4t+r6kBZddNEeSl0bGhoa58yZM7u+vv4n1f+o9K1S9ViEAbRHiJURf/PbkQJojsjByy233JaLL774Jl26dFm3U6dO/VJKfevq6rr/9ddfWW1tbab6bJFFFsm6devWIIEghK/U52P1efXnn3+erDRFdbNzPqCXeRDEP7ZN8rlbzKyu7tBPhbErrrjipEGDBv2pMoTOV1p++eXTGmusMXWFFVa4TDg2VSpD1/LH/JYXVAMgwuo6uE+fPmN69Oix16+//tr7xx/R5oD6PffcM2200UadBg4c2Llfv36seKfFFlss69q1a6YtkEn9Sen333/PPv300/Thhx+mxx9/PHv99dcLJlddddWkPk9//vnn44X1wRx32U7kVf9M5n3ObH2lxuNF4ByVvdL1RxxxRN0zzzzTMGPGDBiTVrcPJMD0xhtvNF511VX1W2yxRZ1xIwhpRo2+hysZCkG5YmHm5cn2kXrOVDLjtTfccEPDuHHj0oEHHpimT5/ePq5b6I0wnnjiicY99tgDQcT+RxAqj1NaLGe2TFde1fFZtxxld+XXr7baagXj5513XsOsWbOSLHoaPXq069P555+fUOs///wzffHFF+mdd95JL7/8cnrkkUfSxIkT0wMPPJCef/759O6776avvvoq+pXl0NjYWHyC48knn2zcdNNNazV/WnnlldMyyyzzvsrDcroQwoJu6xzVvJmZ76c9PCVfgYbhw4fXv/baawWRMKShSWqbdAJEeaWVVkoHHHBA6tu3byEY+lSn/v37p3333Tddfvnl6cUXX0zff/99gVe2oij/8MMP6bLLLsM3CEFoHMZ2hBLA9uxwIZj5Ib169ZolQwbxcy644IJGHVMFYd98800wtfbaa6fJkyennXfeuQmTAwYMSGgNjK6yyipJRjFyyqVtVIxZffXVQxgYRYOORxdDc0RHCEEnDuPGKAEdKoSC+aWXXvp7JSaac9dddxWEeHVuuummIP6WW26JtrPOOiu+WdFDDz00yhqbIFZnfvFNnXyEtOSSS4bWoF0Ii3onttJnn302z5zYmc022yyMZC6EsRoDdIgQbFj6sfJm/rHHHgtCyvvzueeeC2I32GCD9O2330Z7TU1N1N13331JTk+6//7707rrrht1cnwSjJKL2BAAuRMCYT764A+4fsKECRyHgR+cwNdff5101HIcN+ZCOFhlwPRXvtr5iwSB7ux5q72Z96qjkjqqCgIxbgZviR122CEEQP13332Xrr/++qL/sssuG1tC8xR11eXOnTuHIFx/1FFHFfbBQsBebL/99gghtpXyrZSA+RaCBXBDbvAKtTfznO8nnXRSQfjee++d/vjjD/Mf+cknnxzt5X1MAyfDueeeW4zFDpRXGg0Q8U1Sz54901prrRV122yzTcLHACwEtohOhdgOMsCfa/xySEBgN73y1YZfS22f/KhrwOAxmdUe5g855JAgRsdS5Bg+AAFZSDq2ou3uu++ONtTXOKh477330pFHHhl9RFcYyd69exff1FUnucdF3dSpUwOvhfDmm2/SNoftI5syUWWAU6HNJ4NXvi9Ojgamrbbaqv6nn36KifhhMq/8JptsEsSMHTu22JswaAHMnDkz2keNGhU+AuPL7Xyz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);
}

body.hidpi #bottom .item .img_item.webmail {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAAAXNSR0IArs4c6QAAAAlwSFlzAAALEwAACxMBAJqcGAAAAVlpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KTMInWQAALlRJREFUeAHtnQe4JUWxx2dBEJEgSRARFhBBRMH4FMOa08OAKAoYVgFBn2KOIIuK4fOpKCoGEBcVxQCoKAqyIooZMCOisioqoBJEDOzu3Xn/X535z6szO+fec8895+6569b39fR0T4fq7urq6uowRbEW1tbA2hpYWwNra+A/tAbmrcHlpmzZUNR+yltWdYKdTeW9Zln9VMhcKDHlWEfGDb5S7xNDRHzdKn0IgrQxawTMZQKgwTHAio7V9aRsW8lsLbNN9b6F7E1kNpRZX4YwEMrNMv+Q+ZvMtTLXJHOD3tvgFpXnnCaIuUYANDi9kUbLvRD/XWT2krm7zB4yO8nQ8LeRGaScENV1Mn+Q+ZXMT2UukfmJzB9lMoCTiclDSP4+tu+DVMxsFwYcqWAqNrP17eReIPMwmfvKQADulXrtAoiF+P00DvlBUL3q5iZ9+7nMhTLnyXxb5kYZAzg0cfW3sbN7FXIcEKURMJm90+iPk9lX5n4yG8lkgEDKefPmFRtuuOE6t7rVrYr1119/3nrrrVesu+668u4UtyzLAmPAP39bsWJFuXz58uLmm28u//nPf5b//ve/Hdg4OSr2VTJfkzld5qsyEAhAZuZWjh8fxukxjgTgSnbD4/5vmYUyj5TJjR4Nrgaet8kmm6xz61vfOhr7X//6V/GnP/1JQYcDd7jDHSCkIIibbrqpvPHGG8uVK1fSqMbVGTFcnClziszF9pQNVwhck99YvI4TAbjHuOE3VQ0tlHmuzO4yhvhOD99ss83WueUtb1lce+21xd/+hvzWDU94whOKXXbZpbj97W9fbLnllsWmm24KZyiIc4tb0CZiF+IE9Hb18kK9vbjhhhuKv/zlL8WVV15Z/OIXvyjOO++87kTl2mabbSKdf/zjH+V1110Ht2CIMf4Ov0Qv75X5nD1kk6nLl7xX3+u4EECuGIS2F8j8jwxCHODes64afZ5MccUVV3S+VM999923uP/971/svvvuxfbbb19stdVWxcYbb1xssMEGNXvvijCFQz28gJNAWNdcc02xdOnS4qc//WkQxIUXXljHhqg233zzQlyhEDGsFEGB63p1gKL4od7/V+aTlR9cg3on3H88UBmMkwD2i2SuloG9YpbLrNhoo41KseFSFW3/sF/zmteUZ599diliKNVYqvt2gF1PTEz0ZQiL6QWw/0svvbQ87bTTykMPPbQLH3DcbrvtSg1JcITAvSoH4S6SYSgzQPTj0gGN06zaVICBirlUxhW6TO8T6sHljjvuaL+wn/e855XqgaV65SoNlRvaDTlZY/ZqZPwdPxNOMzzC4tKlS8tPf/rT5VOe8pQaz9vc5jaluFApuQE/CAHj72fpfTcZgzuA3Wu8nXs9ShpYoysnGl7S+yoNT497+9vfHhX961//um4LGgHTb0O7YdvsOtEeL45josjBmClccskl5Rve8AaXpYRzQQiagZgQGP95xz5KxpA7g/3WSDsX9GkqIYoWV8hyTcXKHXbYoa7Ae93rXuVnPvOZUoJZuWzZsnL//fevvx155JHB+t0INIqJoNlQ+ZvDt9m94jndZhz824jht7/9bfne9763xvV2t7tdianKCpH7nZnCnjJAc0bR8V2DnhaM1leZFsu4ElDDlre97W1j/ORdglU0vASwus4//vGPR/i73e1u5U477eS45fvf//5SUnsdjgaZDOAWzO+RGWwgrqniuaGnIob8/Q9/+EN53HHH1biCt6aquBEAo9yUV+YIGUPuJPYbmT1bQgiNzzjIdO4MmV1lYIPq9PPWVcUUv/nNb+Qsive85z3F0572tJi2hYceV111VbHtttvG1Evs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)
}
/* End Webmail Icon code */

The final code will be inserted around line 224 depending on how much space you added for the CSS above.

Look for the last closing a tag </a>, click just after the closing bracket and hit enter to create a new line.

Copy and paste the code below on the new line you just created. (You can alter the title & description text to suit your needs)

HTML code to add


<!-- This adds the webmail icon, link and description to the page -->
<a class="item" href="/webmail">
<div class="img_item webmail"></div>
<div class="item_desc_container">
<div class="item_title">
Web Mail
</div>
<div class="item_desc">
Access your email via web browser.
</div>
</div>
</a>
<!-- End webmail Link -->

Save the file.

Step 3

Now that we have the completed html file we can go about putting it in place. We move our modified default.html file into the default directory by pasting this into terminal:

sudo cp ~/Desktop/default.html /Library/Server/Web/Data/Sites/Default/

Open your web browser and point it to your default server page and you should now see your new Web Mail link.


If you are already running an English server and simply would like to have the completed html file you can download it here and save to your desktop and follow step 3.


Server app updates may possibly remove the custom file. Keep it on hand and simply repeat step 3

Changelog: Roundcube for OS X Server

1.1.4 Released 2016-02-19
  • Roundcube Webmail 1.1.4
  • El Capitan and Server 5 support (SIP compliant)
  • Updated MCrypt installer (SIP compliant)
  • Updated managesieve (mail filtering, vacation auto-responder)
  • Improved installer logging to /var/log/install.log
  • Optional plugins, automatically configured
    • CardDAV Address Book
    • HTML5 Desktop Notifications
    • Multiple message selection
    • Image Paster (paste clipboard images directly into message)
1.0.3a Released 2014-11-24
  • Yosemite Compatible (10.8, 10.9, 10.10)
  • Includes Roundcube 1.0.3
  • Postgres no longer supported, moved database to sqlite
  • Updated Mcrypt to support Yosemite and PHP 5.5.14

The 1.0.3a installer performs a CLEAN installation and replaces your previous version.
Existing user preferences and roundcube config are not saved.

Note: The roundcube config files have changed.
http://roundcube.net/news/2014/04/07/roundcube-webmail-1.0.0-released

0.9.5a Released 2013-12-5

The installer will upgrade from 0.9.0 retaining the same config and database
Added /history.txt to view your installation history

  • We now install Roundcube 0.9.5
  • Compatible with OS X Server 10.8/10.9 with Server App 2.2 – 3.01
  • Added auto-configuring carddav plugin
    http://www.crash-override.net/carddav.html
  • Enhanced the mcrypt installation to not touch an existing/working mcrypt
    If mcrypt is not installed, we install the proper libraries for 10.8 and 10.9
  • Improved Roundcube config defaults (only applies to clean installations)
$rcmail_config['mail_pagesize'] = 100
$rcmail_config['addressbook_pagesize'] = 100
$rcmail_config['show_images'] = 2
$rcmail_config['htmleditor'] = 1
$rcmail_config['preview_pane'] = true
0.9.0 Release 2013-01-10

First Public Release
Installs Roundcube 0.9.0 WebApp

What are HTML5 desktop notifications and how do I use them for Roundcube?

HTML5 notifications allow Roundcube to post notifications to your operating system.

To enable desktop notifications on a Mac: Roundcube Settings, Preferences, Mailbox View.

desktop notifications plugin

Notifications can be configured to play a sound and display alerts or banners.


Source
https://plugins.roundcube.net/packages/kitist/html5_notifier

Version 0.5.2
https://github.com/kitist/html5_notifier/tree/master

License
GPL-3.0+