Posts

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+Qsive85z3F0572tJi2hYceV111VbHtttvG1EvstECxg4TP1A0JHTjjjDOKRz3qURGGaZ2nc1dffXVhw/ROknpI9iKCiIcCiKmhxu3IkymejYiy2GKLLQrpGLpmEiKwmD4SF9MEEUF4rbMOnVp65F/9qjjhhBOKd73rXeFmlvL73/+ed+rEHeOzen+6DIi5vvQ6t4HasZDzJL2HMKRKC+rX3Lzu9QcccEBI1+69HttxuxdpTl/3JsZXpVdmv/322y9Y7zOf+cw6HGFmYu5617uWL3nJS8pTTz21/NGPfhTDkXHENmfIfn5vfvva175Wbr311oHPHe94RwuJcAMPC5fpfWcZwITRcc3BJ+Tv7vEqvUfB1fhBBFm6h73DlgFXGjZw+eWXRzyHf8xjHlMec8wx4afeGTZC453udKd4dz7Y8+fPDwKhsnlniqbeXUpHUBIXAxEy/DBGM42DTUNUxEnjdp32Xe5yl/Itb3lL+e1vf7vMQ5TlgUC68XBZ8P7rX/9aLlq0KNJjWmuCcKcQ3qiSF8gAc5YIOryvU4jjZVFgKB22X+66665RAfe5z33Kn/3sZ3V10esBKtNj6Ste8YoIe/e73z3sL3/5y6W0dPGuYcESdjQmDUxD06DVFCzCVfkP9A6nIZ+dd965S/YgTeSRD37wg6WGr7oMvOQG9wfK4/LhRzmMl2UaEYE5Ad/2lwHmHBHkxv+oCkBhKNhKGsUs+5WvfGXNTqkwNziV4wr8wQ9+EJUk7V7Y97vf/WJxhoqE3ZO2xudSmsF4xw0nkIwQblVo7c+3YRjJCzG1g0Pk9FBK/fjHPwb9AMrjctgPO/tJNigf+MAHRjq77bab04tOUqV9iGxgzhBBbvyY31esbSXKEenko5Af/vCH6wbPvYIKMiEwJEgYjPD0NFVCef755xMkYPHixeFn1n/UUUeVUgeHn3T90WOJgxkFIZAuxMDQBOdxXi996UvLn//850azVUeRuQFT3Be96EURv0EESJL4HyYDjD0RMN57zD9F71R8CHuMuVQWfrA+Q+4N9pMEH6/nnntuhN9zzz3DXrhwYVdlUsmkZ+I46aSTYlp3qoQ1/DE0DIoYu0dpM0yYlZMPcoJmLy5WV8+3p4mfMr/jHe8IPCFozR54Z8g0ESzUOzDWRGBpP8Z8NX6MZ4zHQjwMghNAD3BPd2XgNkGg5kX6Jp57BRI44Epjnf6xj31snfY97nGPktU5QEvBpaZc9TfYNcKf8RiljeBogZV8vvjFL9ZlNe6BZPVwmXF+5CMfCRzBt9IeZiJ4gtIDxpIIjJSl/Rjz6flCOMxFF10URabAzcbPlUC4vfbaK+KYvR999NER1/Ec/gMf+ECEMxdAFZuBGQSyhnFA+GQowj2qYcF5odFkdoIbFm9uMFX5P/GJT0QcZKUKxywT/JfSA1zfHddqfhqZ/YQHyAfVUtFm+5M1vnsFFeNxnXQ8XeN9qRZcADe87R/+8IdRWR4mkMgB0jSx4EaYtDxBehCWlokj7igJAVnEREy+3/nOd0AnwGWwO+NrradnS8Ixps5KA9X5tjKAOW7HtZqeVlui4TOSK5D2LfCZ7TcLTMHd+AhCCE9KI9gnUj3TOdz0ciDHd2X9/e9/LxcsWBDhCMuQ4GGAMDkOQiVyBUMFYTFM7arx1r2t/uYww7Dz+gaNa8j44edy8f6hD30ocLnzne8ctogghlThk3caWeaS9+yDJf5bKms0WFRiIOmpngU+CpoLRwFdePTlj3jEI6KQUDw90r2TKR6Kkxw+HHo4vXe/+90RFwUNOFiv4PSbhIDyxmyW8ChiRikoUh7ygSNaNnjTm97UpfhymbBdLt4JR9zECUKolt+JMsBq5QLOfLEQoeECOSN78sknU4YoUC4Ufm4cxmgamfh5Xk3PxO/MM88keB0+HNXDaXz/+9+PsJYbGEYAf6+CBx7ZjzH5+OOPj7jkBcdp0/zxbVgGbuP6eeELX1iyv7ANV+MJ1zr44IMjfxOPcDGnPUjvgLlwxzVLT2d6gPIDwUDKSCJ4udFtuyHM9rXfrq5Ys3t6i5U6qHyR9IFmGtmP4SOzdTZmsDafw4SjepCWKxgv9hawtFyVI4aF5s4jfxuW7ZkNU1t2GAEZp+xmpdNDCGpr4YCMhc1Blu1lAHPjjmvET2fGZo7rZUBmRYVciXqXRsmFCIcebnzr94mL/h3brNJz6W9+85sRzXGcRrZNGG9729siDfeuX/7ylxGsWak5Lt8cH39mEM9+9rMjHfCBC1VLt7Uf/jM1LqdxpYdbbmni67L/5Cc/iXypK+LLWB44R/gAsyoLmPWHpk+Z3wxS1oZ5DDbyrnQXDj2+2X6z8T1Xf/7zn1/3iNxITsu20/zWt74VFeT1gk9+8pMRxN8dvs3OYVDILFmypHzIQx5SNzRcTTuIa7fKO+P3JhG87GUvY2dxK87G71Of+lTka/lKeJgIDtY7YK7ccY3o6UzYwwdCMUf1mG0J10i7wu2GM1jgy2yftNqIyPGcTtM2cWhbePRYLwA961nPih1EhHeYZtzsJkzOi9kFO5E8Q2DV0MRalXtoRODhAE2gIePsd/BjPyT5o3WU7aHgWr1vKQOYO3dcQ36azcABOBoFEsut6TvwwANrydZIUyC/UwBP9SzwuSeQliv4zW9+c9SD47lSetkO98Y3vjEqx2l7hS43bK807E9aOTwayfe9732RLjgyW/DybVX++ttM3NYVaFNLoJJxwMPu3/3ud5EfclK14OVZwQnKHzB37riG/HTvZ+s2iCyjAT3fZ6s00Iv1W8njsS83Pj3XGzy0UybScaHDMcnD4b7+9a9H5XgYOP3006eVTs6iSQgQ0+te97q6sZFTrFGs6qL+Nog7602aKm/j5XLCmcij4rpeK8BvLxlgJERg1sKhjatkyHCFpVNt42qtbCONJpA4jKe54at06vmxp46O58JPZjssvZWx2rMI2KWJ0VxisnTavpF2jtsmKFpn4bIMalttjlqb00aAy8a78WCG41XParZiWeBM5Q24rTquIT3d+49UejTmMuu56QnelJkR9jvjvnX1bdMrC4SMhW0Fp/CTgSuGMJ7OmTBhmYBxCccAjxzfguKDHvSgIGoIGnmmjbCruopw/bx7BnTssccGlpQtl88Ebd1HNe2GC5gT7K13YKhcwBS1qRJ275+oMg9hCWxzJeE24l7mdOGURleFWIA866yziLZKOuE5xcN5ewnZegFW4gB/nyKZST9TnpwOgqIlc8qEYObhsFnGftwmIMswHH4B3OhN5CxPVTMncwE23AJus45rhk/3/nrs58SO0izZt+99cW5wEHVFMZ4Rzo3vQuKHMdt74hOfWB/tyuk0C93L7fz++Mc/RrrW6FFJTs92rzT69Scd50cchh6GQJeJsrpc9puObdni3ve+d60kyrg7b51TjDwr3YA5AH57ygBD4QKW/KEoS/4r3PvbBC0jy157ZgaKt0qFmBCcDvN4wIULxzQezhPbPcNEwN4AYNC0e6FBXjlNBEUPQZSZ+bqHN5cX/36MuWIvtbZx8n7JBhd4v/IA3HE7rgGfTmQfxQf5FdKOBbUxzjL/BtwAvLtSvvrVr0Zhk+Kiq/Bml0cccUQdJ6dDWtMB58tQAq4eBhgWAH+fTpr9hCXdnDZL1OghqvoKQrB+ol9CQJi1vARXA3IeHhYuvvjiyIe2UNpZL7CV8gdmPBSYjXBogcyWW8BiubKJmBsQ1ebDHvawQM69oIpfC0tNzWEuYCQ8zYfje65sPNkrOBtA/i4/DcQZgAc84AFRByiUPAy6HqayjT+rnYDLx7vzgcs+/elPjzwqVbwXig5X+oA7cMc1zaepZzvF+7sM06wJ78VvU7QYSQtjvXq/Wf90lT4Uvhe4Uqj8ww47LCqFKSEE+Oc//zmiGb9eaQzDP+fBah8nh6k7DIJiv0vPbAnz+grqcyCn7fcvfelLkXZVpyaAbyg/wEN4xzXNp3f6PE/xyGS5dfVscXKFN22WML1l23PyKn70fjRYXmSZrtJnqgZypVhZYqXQBRdcsEoFTpXWTL5TJ8aFdCDAfFiUMd516bpps60uP/HEEwOdnKbfSdtCuabmFgZR0ftWFXNxeU0PzAHOVbQgAPfctnHVCHmO6ulMFTeolHdzBbaGA44Xjhk+nBZLvDkvNlYAJtYZZtN39CYhNAVFtKLuJG3yAVvKKAdcwzqSXAa/swOZcNWwai7wSvkBAw0Dbvya/Wt/n4WMUoctoxJc4TiMjFWmFvKEQCBHAU2pINomQPZdsz0CGge40EEHHRT5IlCxraqtAnskM3Rv8Mp1hUYxn1+EEKxRbBKCO9I555wTeOV0/M5eQ+q5khtMABfQ+oKBhgFTzYFKgMRXuEE5AWNwhdtmykV45rJeSavih78XPb7whS+sUhinOVPbleKNlR4GvCHT32eazyDxydt1hQC3REvPe++9d9QN9URjmwBse7EN1bZxdxq2IW7vHdSaijsqG0Z2kAHcoTuuPp4mgJMVFgSXW4pF6ACMTH5H80Z4s/kqbvhZObLPPvtMutMnEp/Bw3h5x5ErxsutrrQZZDGjqORvHEmIHUFZo8hqo2cA1B+EYJ0GF08AOb7L8/rXvz7quRoGYple8dmxBbg9O64pnmYZUE3c2yPBbQWXNshd38qRkQApEGFOTxgjzLsp2UQxU6UPeU0GrhC2k6FhBAfMfe9731bN2mRpjfJbkxAYVrNGEXnL9WjF0Gc/+9lAKde937/yla9EOSs5zcPAB1R2YFoEYKlxV0UMHbOmfiFdsgrl27hc0bbZZKnwcRiiOtVSV77n/GyENMKON4pKdtoImuDkDaMoTgDjMIq8p5smuGZ8mnsU6TieDbQNA457hW5Ko6wMv3RY3mUukTG4Y9vd0za1PFUhSGSF565c0gS4gnk3AuzhI7x7Ou/u/Y7vQ5OOQ/xRgNP3Xro99tgjcGMqBvj7KPIeNE1wyvWKoMim0aoN6t3EFsAd1jbKNzbSEl4zC8sB6G8Q5IFWOaDN05TCrdsAFBUvXMIYHiX5dECNHC86Gh22FDHVF0VUOMkOcR3KW9/61rjEET8JiHWYUbwYJ/J++MMfXmifYmSjbeaFKiryB49xAuoEvNWggZaE10La1mLJkiXFggULCm10Df/qapmo24y/ZmmFjs+Hl/QsNAoJbSTjK+laK73NE+oB9uABUmL7vMYNnPFSPahEvmuNvPje974XvlQwgL+mYHHtKm6pLLFWQTw8h/wgb3BTRRRPehI302iJbM89ozI1Fw/3uBFAIKUHhABuEAId76EPfWgh4bqAeIHvfve7YftBWU002lMR3lp7MAHgjnaU7Y4dYfxoEoAjYu9EIFHWPF+8LEne8bpsbfooPvaxj4Uf7wCFkEBSaN28OOWUU+K+XhAdde+PzKv8eZfwZ6+wpajqco+jg0bNhKCpXSGBNi7Ahqv1qkctDUdxNJzkYpkD9MXyTBC3VQocREQfTWqlLl5eZfrmsdRn9edX5/lUgFrpw9z/+uuvFz10yw7hMcKHKilSZ78CZxUoA+Zxj3vcKoLsCNEYStKUxXVNgi6bE/c3NI2UsRIEPRNAkwu4bTuu6tn0NJvg0Af7/+K+fWwJd3HxMu9N4Bo2wLKCECs0hQk/rkYTQkG1UPZsAXmBhxaDiqc+FXm2KLQ1rdBycVz8jJvvcwHMEej54NysR7u5uBouABeWGtmVva3KyDsygf3qYvcigG0cyY0qTWBk3IaACcAVKq5R6PRPoUWhGMPIzUjWOY/wBTyoLLNChCjAw4+Oi48w99ElDf6T1SOCoKa8gUAigC3ksUmF1ZQEYOwZAgBuqohINGp4pF5jZEwAngHQ4wGdEYQSR9773eA0OgBeVBZCKGDcuf8fkDazkCq2HmfDcw14SPgrpHOJkqjjurFpfPZztoLn/P7oSJtXHszl4xX2kiFzAm7gBCAAOIWUGYWOOxUae8PfaYRjCA/yxgCkbeOkubtfO2mCC2lLekj/IuSYrVBBWqMvjj322BjWcjkcf67Zrl/KKKVdoM97BRvI7skBmgTgSI5gd6G15vo9v9DoWowIL96hQuC5z+VHHxp4hiD599vgzJWl7YtpkzakRv5+zJ8/P8ZGcwUpWoIA/H2u2yZkZB6gIgB6CcM8+oBW6EUAGzq0e5qWK+3VZfOdqR4gDVT8ZuWd73xnIel/4MafqsEl2UcPp8Hp4cyTpfXrwot5P/ILv5NZunRpoYWU+M6UCpDuPGQUCMKVFx/m+MMdtZJ3IABYuHuvOXxdyl4E4N1ANat1z3FMVxqsVqdxo/EtC+jeXwfry84NbkHHbI0EaHDdJBLaMBpcy8mFpp5daSP8gKMb3JpJAi1cuLDQid9CC1GhXWMuvXjx4mLRokUFnMFl6UpwjjpSO9HYnXFSk7lexelFAM3ZwSrx3UBUJLCjlD6w1VNPPTVu2+7F+qlswHZbgzONocEvu+yyAon9c5/7XIznEbF60OD0cG2JKrQRtMgs/znPeU6hdfZCawDRwNphG2GZIqFeZZzU4knEgQDWJKh6PkVy4/O+Ss/HE+hFAF2qJAK6wXh348J2tQ4d7J7G11bsQooWgoRgFi96ENfxjaAJiDBucKR0Ghy1J4KkgeEH3Tjjmg5ixB+9JmtwpP4kBNV5a29AJMkfwQBtbSse//jH17OBjFMEmIMPT30bqHemRw1PnL0I4GaHdaWg7wdoSCoXgY+7/QGPO9qbFvf4842GJmyvHk4j5B7OnfoGBBmIibxRQ2upudB+e38uDjnkkFj4oIdr80RM83KDEzBPCR1Rmy1idqLNIYV23xT62UTx2te+tp46OdxctnM7qRzu+XV7NsvWiwA6KzqkoEYA+DkD4J7MeHrSSScVutGzYLxFV22FSxqHIo5UwcHS6eGM4Z///Oe7WDp6Azc4q11MK+EoBmYUrHTpJrBocFj4VA1uTuM0zLVYXIEAGBYAfgXH1JByuayOMxdtL8ZVHcAE8M+qLHlYCK9eBLDKXxidMI3LO/NogJ8tAtrjXyt9ENpoSHq4Gzz3cGYLsHQqHAkdAskNro0PsYjjfwAO0uCBVMsDdTCg6+fCZrlV6+jBqcJjTB8QqDsf9ZaJNRMvdQ+koYD1ef5B0BeYIJ6i0FDLCknM2KXP7iuzkpss8PPdfFyuxJEo7t/j7xo7ajtTFT9sjjmxORPjncH5O3cCffSjHy1FLLGH3osb5GXADyPKtte0bMcjDXbWkD8HK7F9javDTCvhEQQGD8xkZc64+p2j6xKAo0zaTBqLeCrfjTKsBwBTCvcmgAcpMAlNaDcPAkRcWkhZOYhQfatv9fDeNftLCIttWGzF8t52f8N+wQteUGr5uGSLFulR0CbkwruAzTDTdTsf7h8ED68S6vewkZS/TzfdmYbPjd0LB7a6cxKZ3c2+PNP1Ypsj6z6Sl3YFIfHeWgbwkNBx6ekGtwcVA1wjg9S3HlSFhyVnxm8AIQpJnbEWIY3VP8Zlpm+wV7NYBDod1Qq1MFK4CCrG37YxmnTN2prf+TYs8IKJ2eX5559fqOLqvIeVT1s6Ipbwtk0521g6uKFXQYGF7ISGkyk2gO4lA2mRBkMzQxoAwVRh0NPXMl3l19Myi2A1hzVeTqkGK+EQog8gwOJ94pUwangyi5MpHIikhwvZGBag1jaqxg8D9ZqCZ9qTporvfCBqKYcCZ7gVuPuWE4eZKq1+vrtsuaxt8dRwJYdauRSCoZajd97HCG7Z8O/E5sZc169krgjLWQK1ifcDdHpsD/bfiwPcoEwhs61BTnaoWpH2dcAxBDd2BzH9Q9hDvQrF8vNmHcMqtI2ZKF2ggndJ2qPs4V0ZJwe9RI0SGkMEP5RYIubgVrrkqtC1L104pqh9vbqMDuwymqvhzxQZoZfpLcooNJps82KFMgOrqExzEboJj7ILQJmFXoS8crp8syaWrXAoyCqwQoXOvYo+oI0A1lVAej0T83vASmDbKH3QrsGOtN260EUM+lwU8+fPjymiwhU64BDv4gCF/oUTswJXilldRBqDB9NOwLOYb3zjG0EAzUrthSrlAmwTzybHYWXS2krWLpjtUE86OZyDxZAqATnqjzqmPr2ZlYBPfvKTC4ZQ73Hsilw5vN7R+HZpwz2lc70qxJGyKeVyH0zgqLOBHx5xTKwKE+ffNd7Xbs7mcU+/AXZoVmW/1WGbxUPY2ikU+KqXxZ/Gep1X7JeVw5q5/Vw9uuRo2qte9aquo1+uK01r4+IsLs/y0S9/w0Y45fYPBGWGXY6H+95k6sxlaL6//OUvj/JIHqOnh/Au25si6dh9gbnCYxSaBCekKInEOPjZzJSpmw9iEp4x1QSD+9WvfnUJsRg87tu9OmwTIhUMjtx1hO1/G4hNd03D2nAkDPINd/Vw1lHb3kv1zkiHtLLhBjSmwPnMRP6OPMKpIG5V4R5lqcbbsmyVl0wMxBFXi3zVET0FZBzoaLx6yAD6vgpYELy9vjCHZJNhJMhv2zTWB3JUgIGDjmeffXZkrgWaOBDC+XeEReJjuJrd823irU5CMAGI1QZuvsaOS6d7AVMsjdklF1LyZ5LDDz+8PrrlMmJrqIuzfRz0lGxUl99h9Hvb+PElx7zQnTC1o/7aADxt3NDNcC4LdzSTB1PyJAB+XX7AKtO/jvfUz+8qCIVa4bm+L4N2xrZBzL9Ot4KFuJwKyterchDSV6QTh/i9Csf3UYDz49JFLQbVjcRBUggcnCSkhZ6CYQ/Oly+QplwYZkL83Ire7TLT6J4VQVgch5PKvJSMUWqMrv8R0CwXOJGv68M4NsM13YQHfClG1ek8A3iL8ATM1TuuPp6O8HaFpbD16WC0fYAz5t3cgGkM4c3qJBSFm16RhwXNFkrNV2vKd+FJa7bA+Pv8ID0W3Lm529q0quzh73LBZv0jy+Z3/8UsH6Xv1ZDkb9MrzFR14XjYPpgrzstw7SHg0XoH3J4dVx9PRyABKmBCwkrIAQfrfnvm0UBGADfjkO8A0BSxrjgTAn7+TrqokLlL0ECFOE37jco2Afi+PThVFmLheGgyMdXt3HV5wH2B/lWklcSSq+kRdjUFC85mwdIqbzSdAJ1k2OVzGbhJDJzgPJoiuvFR5m0mA3hY77j6eDoCG8z+JMP5wAmpFyMjxkLACOR3/SY9wuTxn/gYEwJrA5kQFi1aVC5dupRkAoZdUU432yY09ByPfOQjY+yGc3ntwzhjI7UfeuihJWXj9i8OYCATtIEvhbKamWPbQK6rtniD+DlN/4e4wf7PEO6A27LjmsbT04aPKw4NuNyNetpppwW+RgCH35H4Ce8xsYobfs13elaucIQrJGsDabqh7DdM2zjnc/ngyCUWWu2MfxZxwhgtoYe5Zv6kgfF3xnnSMIHDml0G2800BnE7LWz/era6eMrj/0LhAZibd1zTeDrivopDoVaoJ8QwwHSnqY6kEEbKN1hacKzitxIB36RMqufDsDFtAeua97qhBqmoyeI4XWYDEIHn3C5bM64bG9tldRi7sVGFUy4TN2pewPk5zkxspwU3Ji+4Kly6qms0uZ2jWTPgAJ46sI32ShIWC2d1MDJsu2zBSDG9IXwW/HC3GQ8L2BbECPfoRz86dONOk4r1+0wqrhnXDdfmT34YwvQKl+MZP7Nk7vulLG03e+R4g7w7L6mzIw86kfJy7/+03gFz8Y5rgKe5wPGKSwbLLOEec8wxgXeuGL9jM/0hTj/34RHOhNAUFNkr4IslyNANMkil9YoDvqRr43L0Ct/L3/EQCCmT64qFNM/1HaZXGv34Ow2mrFZiVUInmz/Iu7MxcwbsX2kEmILuKVcUSmrTlbAb3Esrwc3UCPJ+t2KioswI7zQms00I5OHpJOG5VRSVqIF8XBH2GwfbOPm6PHQL4K91gEDP9TMTXC1vNO4FcuP/UvlZnW8uLq/BwYmcpyQozHIPA72uXHEloB4lznSJoMon4iJHWPjEn+VSrY7V9UdlOL/aczW+uIF9ZY57KKwa8PdBUXRZUWL5Eqxqdhb3OamOXi0DmHt3XDN4OqEnKg0aJf4NbDUnix/NgrmQZoVozDQ/jQat0pj2O0Tnq+aQLbiSjkowOE+7V5ftBoJI4WCoxikzKmCmnIDDDIKje/8SKdJItxI0s/DHyW5g4OlfJ/r/P80B8GGrLhnXXOC4446LcjQbwIj6MmNPi8ziq3SmRQhoFC1ZE5/ZCCtvBiq2iYe/zabtBvbfUrzWYKXXoDg6XVYGEZKpA63TYLv3v1PvgDttxzWEpxM8QGkFAdAYnuaxggXkghlZ7Be/+MWB7A66176KP5Bt4tE5+K4ZAz+J8BhrPJx/IDbLD9eD1v6jnGgTKbevfh8UN3cq72ls9H62Z28vAwyt93eSK7pWky6SJwVabgKggQ25cK4IDwXEszaxSmMgQnBcNHSZI+hQ6lisOLoOYPm6pawuI9u8vNTrMK63qWzXJapll78aVjn0gd//ygDurB3XEJ9O+LFKkwxD6nQDMCYBplIXyG5YNfEQ6LxaVqVTF2hQNxrFrK9nwSqvOILDdCvc+A9qu8G82MSKIeUb9KZU42/BuhLEPfbP2t9DzVrOqhprme/+Z2eLN1a68K48u9koSry2n0cO2viOx5DEEIONH5cws8HC829wMR7Ga5S28/JGTZ+hYMkccIP2g4M7ka7ii7K506mcHvuP0DvgTtpxjeBpvcBuStvzzlo7ePTRR9flyQXM78znFbf0P3M9ruM3DANbTBVUPkv/77HW0hXvxqmRHcGLywwB+rcu7ixsAjEuU2VtXJlVmIiqe5ut9UMwN2SB3X5Dt01lRyllGi3GIKtxUYMCploX0AVhL54XL0bBCSqcQjrOhMC/g1jFM4CPG8l+w7ZdZlTB4HXPe94z7La7/9vyzvixYkoalU6ENZlYl5G9twzgztlxjfCZqexi5QNiy5jrI5Th9h7AXkTAv3S86cJEUKUT8Yf5zm4kK65Il59BuwdS6aMkBBMAi0Hk7bURhGY3ru02AnB8HcaJ+GkqbcGPDTuAO2XHNQtPU9ueysuNNuGtX+z4sbTrQriAdiOkscZOfA8HKS2nOTSb5WkTKPmwhSqv6YPXZI1h/Kdj5/Q8FTYRcCs44PpopuvOo7MYUQcIuexeFu5m/VyA7HbInVLeswOmOgQQEAuBxGyXdXDvHGoW0m6mSd7KDHXn00ZVmkMhAMsZVKDxI/0HP/jBscHDeE7WIM0G6tftssL2ydM6gclmA47jnT7Eq04wWeonLTofYCLouGb56VnBZ5QvK3rBmtyjfb08lZV7A24Xkspn/k58Vs+s7nWj4T8s4zQRxvJCk083gxcArk18O1+m/3Q58/zdcpLzyqk6PBzU2r6kQLPUf5jqBPCiT8e1Gp4mgA2U92UyEEEgaSLIx8qblerCUgE+ck4auZfiHpVprjgyi7mi2u4GTuDXxBn/QYEO4bMHpNFM2/UBZzxYey8ptwnVnUt+J8oAq7Xnd1DoPD0U7Cwn551APKaIFlqY/xt6FZrvjHfWmzOrqPTcIyOACtdQIuUVR10dE8fWjfOwCMFDDXXQqx5Y4PIOX3ei1PjfFM6G1TLuO/OmbVb0YH1wg02glPH0kKNSBlO63VSG/fgD1rHaj+d0EJoq4af287dh23lrGmnDlbyCB67G0XgPYjcbPqfLIo+nyN5HYI4qfH4js7EMMDa9v4NO52ki2F9OGot56gRqX7Mx/284FzpXYq5gzhh4SxWsOmv5qvSHShCq6EgPojW+5IMun0Mdxi0Ta8a9n/e2xre0z5hvtp8a3xL/X4XLHWQAc9yOa8yeJoJDhFdNBFSu5/v8xdPr+C58rjwq2hXFVNF73kgPARFW3XbrSJXfjInChMCKo3EmbY6C+VQU+GY8M/79vmdCQtq3wJfYvhuf43md++3GQOgTLlOCiQBJ1Q0SMoEpGyVQXjdwg+fKy8TBphOWUlN6MbS0nazNYWbybkJAd2BZhvSaW9Myzv2+m5sQnm3nxtOcR3lb2qfx7yoD9Lzts/N5vJ4mgoVCKwqoQgVFu1ehnaPwhlwp9su9BD/2BPIj5XzmgCVp5Aw2n45SVnA+Lg+cyad+2gjYZWjambCt4SNNhjjs1Phc7eKeP6caX3gHmAi8lawuXJa4OSzqxu/FVvF3GCoUQRHFim/7Um5ReWy/ghiYRqI546iXVwcdpl+btJA9IDbSzDg7DU4TW0icighy2VjYsW4fPH1NjRrfKl4EPo/5I238UU8lIAJ6/n/JfFlmMyhcbbi+WCs/pIrLp7gXUPcI1H8lU2WtchGk4ta3f6pRcYabK2q4RfR8XfTkm0vjY/UQEcSlVGrQ8FHeEQ8bED5dBn9u5/ClWBGoemhGUhx44IFxk4g0evWPKIhDOm3g/CQMx2d+WqUhMK6G0dAS18SIK4TArAAgeaEMey64gt31p9e5C52a79xV58UjiGJCldYlcaOft4Coiuvq9bgNzaEBf/xY5GHNXH8pCxWz7vwJzqC8BrL5URb/5D399NPjIoi8G9m49LLBJ7N7hgtv5gCfxFEs7IHjiTKGWZH228nWKAzPzpRMIZkl0Gs4Zrye2GDcjcOPJ/R72kJXzxSaAta5qzLrXlp76kVx6zt6zBXyd7HnuLxKDRcXUmuqFf820NGvyI/49EztIYh/DMIt+DOKtq3Fj65w8y2D8zTnyN9493fjQ14arqJcfNfwFFfac6ijKr9Z/OH6/EHCCGAXE/G2Bj2y8uIglYu766B6JN4JxlyvlOHPRk+ObmdoygL5G+/mDFleaIaZrjunyXsb5DD+Didbom1y/p0rZUrL0vR6r+ezqpcXdmarUyrb2QcKZ0LYXu/nyJg9IwDFqaN8kISDpuzosRqVCnaF92oQNwLfHdbEY9vfpvrutJp2jpe/0bM5seNDG5QPobTawEmv9hSPcrOe7/rwUCmvNR/y+PYcFfdaGRMCFbSSaV2e7j3jGc+Ie4g89XKl54bgfVRA2jmvnA/+V2gRiamhtZeUh3G+Ws9oNjzbuPaWMZgI7P6PsBHlze621PsJMiYC2OMyjZFBCIl1xtRO/yWIo9xMB9vAvRzbDWe7Lbz9HAY7p8F7EwiDBo+lXevvjT8NX21/bzY8hO4NnHoNta7rAPd/JGRusJdq4EwZEwI2hDDBXJmKzd/QLCKlw3LpgZ6TNxsru3Mj5/ccptc7+npOKnMLiFfsjA86A4audEo3s3oObbxNBkI3jEWvHxfqMzew5At7fLkMl1MYUCdzPe260iHMQ3r39akOwPWv/FhC+vS4UlWq4pDq0Tdot1GrbsFxbWvqFjMEZhDMGnSopeAGTq0DxEXM6BwM4CDuFH9X1yWTKyWnwLmynPM3uU+WeZfM72UACJ5yQsyrHcaFAFwR9AoqhooEkI6ZHrHCuLmMAWKYpwOq62iMnYeSx1M9B7AtOSJ+p8pfQVA+MbWDIGg8pmpi7/FDSU8ZtUYRhCUJ3kl02VIJx9SQW0TgCJL2jWvmZJcr0kdkFstcLQPwnbAOj99qh3EjAFdIkxC20of9ZA6UgTtk9hm9SUQAQczTdq956u3zaFhJ5NGLFX4ggIMovYjLtI4hBoNMIE+4FsZAbz9X5mMyX5FhqgeMZcN3UOuwK7+Po01DQ6TB/isEd5e9j8x/y9xLZkOZDHUvgzNo6XgeBgKh17vn5wga80M9DNEwBDDl5PwCBj8BOHiYylH/LMe3ZL4gQ6O7t+t1vBseBIFx5QAd7P7/6d7WHDt3UBA4wgKZ+8jsIrORzGRA7wVs80499FMXrNBdKvMdmQtkvidzvYzBBNvE09/Hzu6n0OOG9GSVvJ2Q3U3mLjIspe4ks60M0vfGMhvIZLYtZxfAaf4lAzunsa+U+bUMvx3/mczlMtfJZDA+NefJH8f9fS4SQK5Tcwb88jCRw1DGTWQ2rWw4xK1k0MHzjYZDC8lU7SYZGh+DqroNiEOjA3Oy0Tuod55znQCaZaE8EAU2LH6mDeTeraQiPaeJe42ANYkAejUIZXQ5m3aOY5kAO7/nMGvf19bA2hpYWwNra2BtDaytgbU1sEbUwP8Bi3sDqaUbhwAAAAAASUVORK5CYII=)
}
/* 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

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+

Roundcube for OS X Server

Important: Server 5.1 Upgrade Issue

Upgrading to Server 5.1 may disable the Rouncube WebApp, follow this link for the fix.
Why did Server 5.1 break Roundcube Webmail ?

What’s new in version 1.1.4?
  • 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)
Optional plugins (automatically configured)
  • Plugin: CardDAV Address Book
  • Plugin: HTML5 Desktop Notifications
  • Plugin: Multiple message selection
  • Plugin: Image Paster (paste clipboard images directly into message)
Why we made this installer

Mac OS X Server administrators usually wear many hats (entrepreneur, designer, etc.). We choose the Mac expecting it to have a nice GUI interface and all our basic needs to be met out of the box.
Apple used to provide webmail services in earlier versions of OS X Server (10.7 and earlier). For reasons unknown, webmail was dropped in 10.8 leaving it up to administrators to roll their own solution.

An OS X Server administrator with a Unix background could jump through all the hoops in a couple of hours – but lets face it, most OS X Server administrators would be stuck facing a day or more of tutorials, articles and frustration to get webmail working on their server.

As consultants specializing in mail services for OS X Server, we found ourselves repeating the same steps over and over with each new server installation. So we decided to apply our rule of thumb: if a repeatable process takes more than 30 minutes – document, automate and share.

What does the installer do?

Our installer for Roundcube for OS X Server installs Roundcube Webmail as a simple WebApp available to any website configured inside Server.app. When the WebApp is enabled (by default, its enabled for all sites), you can access webmail by adding /mail /webmail or /roundcube to your website URL.

Furthermore and if you haven’t already done so yourself, MCrypt (a requirement for Roundcube) is installed.
The Roundcube database is initialized. A core set of plugins is installed along with a choice of optional plugins. The finer details like: permissions, php.ini settings, apache config are all updated. Updated files are backed up and the process is logged to /var/log/installer.log

Please browse our FAQs for answers to most questions.
Compatibility
  • OS X 10.11.x (El Capitan with OS X Server 5.x)
  • OS X 10.10.x (Yosemite with OS X Server 4.x or 5.x)
  • Mac OS X Server 10.9.x (Mavericks with Server.app 3.x)
  • Mac OS X Server 10.8.3+. (Mountain Lion withServer app 2.x)

See current changelog for a complete list of fixes and additions.
Please read our FAQs as well.

The topicdesk Roundcube installer is a free download.

 

 

What does the Image Paster plugin do?

The Image Paster plugin allows you to paste an image directly into the body of an email.

Very useful when sending screenshots

image_paster plugin


Source
https://plugins.roundcube.net/packages/mat_krauser/image_paster

Version 1.0
https://github.com/mkrauser/roundcube_image_paster/tree/v1.0

License
GPL-3.0+

How do I enable and disable Roundcube plugins?

This article covers how to enable and disable plugins, but does not cover how to configure any specific plugins.

IMPORTANT: A misconfigured plugin could cause roundcube to fail. Always backup before making changes.

To see a list of your available plugins

ls /usr/local/topicdesk/roundcube/WebApp/plugins/
Let’s be friendly and enable: emoticons

Plugins are enabled/disabled in the roundcube configuration file. We’ll use pico to edit the file.

sudo pico /usr/local/topicdesk/roundcube/WebApp/config/config.inc.php

Look for the plugin array, it will look something like this
$config['plugins'] = array('image_paster','html5_notifier','chbox','carddav','managesieve');

To enable show_additional_headers add it to the array, so it looks like this:
$config['plugins'] = array('image_paster','html5_notifier','chbox','carddav','managesieve','emoticons');

Logout and Login to Roundcube and now you have:

Roundcube WebMail Emoticons

To disable plugins

If a plugin causes roundcube to fail or you simply don’t need it – you remove the plugin from the array.

sudo pico /usr/local/topicdesk/roundcube/WebApp/config/config.inc.php