6,9 KiB
SOGo is used for accessing your mails via a webbrowser, adding and sharing your contacts or calendars. For a more in-depth documentation on SOGo please visit its own documentation.
Apply custom SOGo theme
mailcow builds after 28 January 2021 can change SOGo's theme by editing data/conf/sogo/custom-theme.js
.
Please check the AngularJS Material intro and documentation as well as the material style guideline to learn how this works.
You can use the provided custom-theme.js
as an example starting point by removing the comments.
After you modified data/conf/sogo/custom-theme.js
and made changes to your new SOGo theme you need to
1. edit data/conf/sogo/sogo.conf
and append/set SOGoUIxDebugEnabled = YES;
2. restart SOGo and Memcached containers by executing the command: === "docker compose (Plugin)"
``` bash
docker compose restart memcached-mailcow sogo-mailcow
```
=== "docker-compose (Standalone)"
``` bash
docker-compose restart memcached-mailcow sogo-mailcow
```
3. open SOGo in browser
4. open browser developer console, usually shortcut is F12
5. only if you use Firefox: write by hands in dev console allow pasting
and press enter
6. paste java script snipet in dev console:
copy([].slice.call(document.styleSheets)
.map(e => e.ownerNode)
.filter(e => e.hasAttribute('md-theme-style'))
.map(e => e.textContent)
.join('\n')
)
7. open text editor and paste data from clipboard (Ctrl+V), you should get minified CSS, save it
8. copy CSS file to mailcow server data/conf/sogo/custom-theme.css
9. edit data/conf/sogo/sogo.conf
and set SOGoUIxDebugEnabled = NO;
10. append/create docker-compose.override.yml
with:
version: '2.1'
services:
sogo-mailcow:
volumes:
- ./data/conf/sogo/custom-theme.css:/usr/lib/GNUstep/SOGo/WebServerResources/css/theme-default.css:z
11. Run: === "docker compose (Plugin)"
``` bash
docker compose up -d
```
=== "docker-compose (Standalone)"
``` bash
docker-compose up -d
```
12. Run: === "docker compose (Plugin)"
``` bash
docker compose restart memcached-mailcow
```
=== "docker-compose (Standalone)"
``` bash
docker-compose restart memcached-mailcow
```
Reset to SOGo default theme
1. checkout data/conf/sogo/custom-theme.js
by executing git fetch ; git checkout origin/master data/conf/sogo/custom-theme.js data/conf/sogo/custom-theme.js
2. find in data/conf/sogo/custom-theme.js
:
// Apply new palettes to the default theme, remap some of the hues
$mdThemingProvider.theme('default')
.primaryPalette('green-cow', {
'default': '400', // background color of top toolbars
'hue-1': '400',
'hue-2': '600', // background color of sidebar toolbar
'hue-3': 'A700'
})
.accentPalette('green', {
'default': '600', // background color of fab buttons and login screen
'hue-1': '300', // background color of center list toolbar
'hue-2': '300', // highlight color for selected mail and current day calendar
'hue-3': 'A700'
})
.backgroundPalette('frost-grey');
and replace it with:
$mdThemingProvider.theme('default');
3. remove from docker-compose.override.yml
volume mount in sogo-mailcow
:
- ./data/conf/sogo/custom-theme.css:/usr/lib/GNUstep/SOGo/WebServerResources/css/theme-default.css:z
4. Run: === "docker compose (Plugin)"
``` bash
docker compose up -d
```
=== "docker-compose (Standalone)"
``` bash
docker-compose up -d
```
5. Run: === "docker compose (Plugin)"
``` bash
docker compose restart memcached-mailcow
```
=== "docker-compose (Standalone)"
``` bash
docker-compose restart memcached-mailcow
```
Change favicon
mailcow builds after 31 January 2021 can change SOGo's favicon by replacing data/conf/sogo/custom-favicon.ico
for SOGo and data/web/favicon.png
for mailcow UI.
Note: You can use .png
favicons for SOGo by renaming them to custom-favicon.ico
.
For both SOGo and mailcow UI favicons you need use one of the standard dimensions: 16x16, 32x32, 64x64, 128x128 and 256x256.
After you replaced said file you need to restart SOGo and Memcached containers by executing:
=== "docker compose (Plugin)"
``` bash
docker compose restart memcached-mailcow sogo-mailcow
```
=== "docker-compose (Standalone)"
``` bash
docker-compose restart memcached-mailcow sogo-mailcow
```
Change logo
mailcow builds after 21 December 2018 can change SOGo's logo by replacing or creating (if missing) data/conf/sogo/sogo-full.svg
.
After you replaced said file you need to restart SOGo and Memcached containers by executing:
=== "docker compose (Plugin)"
``` bash
docker compose restart memcached-mailcow sogo-mailcow
```
=== "docker-compose (Standalone)"
``` bash
docker-compose restart memcached-mailcow sogo-mailcow
```
Connect domains
Domains are usually isolated from eachother.
You can change that by modifying data/conf/sogo/sogo.conf
:
Search...
// SOGoDomainsVisibility = (
// (domain1.tld, domain5.tld),
// (domain3.tld, domain2.tld)
// );
...and replace it by - for example:
SOGoDomainsVisibility = (
(example.org, example.com, example.net)
);
Restart SOGo:
=== "docker compose (Plugin)"
``` bash
docker compose restart sogo-mailcow
```
=== "docker-compose (Standalone)"
``` bash
docker-compose restart sogo-mailcow
```
Enable password changing
The password change option in SOGo is disabled by default because it:
- doesn't take into account the password policy set in the mailcow UI
- doesn't work when the user is logged in into SOGo using the
Login to Webmail
function in the mailcow UI (Auth Proxy)
If you still want enable this option edit data/conf/sogo/sogo.conf
and change SOGoPasswordChangeEnabled
to YES
. Please do not add a new parameter.
Run this command to activate the changes:
=== "docker compose (Plugin)"
``` bash
docker compose restart memcached-mailcow sogo-mailcow
```
=== "docker-compose (Standalone)"
``` bash
docker-compose restart memcached-mailcow sogo-mailcow
```
Reset TOTP / Disable TOTP
Run the following command from within the mailcow directory:
=== "docker compose (Plugin)"
``` bash
docker compose exec -u sogo sogo-mailcow sogo-tool user-preferences set defaults user@example.com SOGoTOTPEnabled '{"SOGoTOTPEnabled":0}'
```
=== "docker-compose (Standalone)"
``` bash
docker-compose exec -u sogo sogo-mailcow sogo-tool user-preferences set defaults user@example.com SOGoTOTPEnabled '{"SOGoTOTPEnabled":0}'
```