Procházet zdrojové kódy

Roundcube now coming from official Debian Repo.

Thomas Buck před 5 roky
rodič
revize
d235887c55

+ 5
- 10
roles/webmail/DESIGN.md Zobrazit soubor

@@ -1,17 +1,12 @@
1 1
 # Overview
2 2
 
3
-This role installs the Roundcube package to enable browser-based email handling. This is useful if you need to access email with something other than your own computer or smart phone.  It is also the only friendly way in Sovereign to edit sieve filters for email.
3
+This role installs the Roundcube package to enable browser-based email handling.
4
+This is useful if you need to access email with something other than your own computer or smart phone.
5
+It is also the only friendly way in Sovereign to edit sieve filters for email.
4 6
 
5 7
 Roundcube is stable and continues to be actively developed.
6 8
 
7 9
 # Install
8 10
 
9
-The role installs roundcube from the source package released by the Roundcube team.  The version is pinned.  Old versions of this role installed Roundcube from apt packages, but the packages for Debian 8 do not install unattended correctly unless mysql is used at the backend.  We want to use only one database server (postgres) to save on RAM, so using packages is not an option for now.
10
-
11
-Roundcube is installed with sqlite3 for its persistence layer.  This eliminates dependency on a database server and likely improves performance given how little persistet data Roundcube keeps.  Roundcube automatically looks for the database file and intializes it if it is missing.  The file is kept on `/data` since it contains user data.
12
-
13
-PHP composer is used for downloading and installing plugins.  Configuration files are kept with sovereign.  The configuration files for `carddav` are not modified from their defaults.  I chose to do this so that maintainers could recognize when configuration files change in future plugin versions and decide whether or not to change new defaults.
14
-
15
-# Upgrade
16
-
17
-It's unknown how upgrades will be handled.  The best case is that an update can be installed over the current version, and code will automatically update the database the first time it connects.  This needs to be considered for plugins that store data also.
11
+The role installs Roundcube from the official Debian apt packages.
12
+Roundcube is installed and the package automatically configured to use the postgres server.

+ 6
- 3
roles/webmail/defaults/main.yml Zobrazit soubor

@@ -1,5 +1,8 @@
1
-webmail_version: 1.2.1
2
-
3 1
 # Keep in sync with mail_server_hostname in mailserver role
4
-webmail_domain: "mail.{{ domain }}"
2
+webmail_subdomain: "mail"
3
+webmail_domain: "{{ webmail_subdomain }}.{{ domain }}"
4
+webmail_language: "en_US"
5 5
 
6
+secret_root: '{{ inventory_dir | realpath }}'
7
+secret_name: 'secret'
8
+secret: '{{ secret_root + "/" + secret_name }}'

roles/webmail/files/var_www_roundcube_config_global.sieve → roles/webmail/files/etc_roundcube_global.sieve Zobrazit soubor


roles/webmail/files/var_www_roundcube_plugins_managesieve_config.inc.php → roles/webmail/files/etc_roundcube_plugins_managesieve_config.inc.php Zobrazit soubor

@@ -41,7 +41,7 @@ $config['managesieve_usetls'] = false;
41 41
 $config['managesieve_conn_options'] = null;
42 42
 
43 43
 // default contents of filters script (eg. default spam filter)
44
-$config['managesieve_default'] = '/var/www/roundcube/config/global.sieve';
44
+$config['managesieve_default'] = '/etc/roundcube/global.sieve';
45 45
 
46 46
 // The name of the script which will be used when there's no user script
47 47
 $config['managesieve_script_name'] = 'managesieve';

+ 0
- 44
roles/webmail/files/var_www_roundcube_composer.json Zobrazit soubor

@@ -1,44 +0,0 @@
1
-{
2
-    "name": "roundcube/roundcubemail",
3
-    "description": "The Roundcube Webmail suite",
4
-    "license": "GPL-3.0+",
5
-    "repositories": [
6
-        {
7
-            "type": "pear",
8
-            "url": "https://pear.php.net/"
9
-        },
10
-        {
11
-            "type": "composer",
12
-            "url": "https://plugins.roundcube.net/"
13
-        },
14
-        {
15
-            "type": "vcs",
16
-            "url": "https://github.com/roundcube/Net_Sieve.git"
17
-        },
18
-        {
19
-            "type": "vcs",
20
-            "url": "https://git.kolab.org/diffusion/PNL/php-net_ldap.git"
21
-        }
22
-    ],
23
-    "require": {
24
-        "php": ">=5.3.7",
25
-        "pear/pear-core-minimal": "~1.10.1",
26
-        "roundcube/plugin-installer": "~0.1.6",
27
-        "pear-pear.php.net/net_socket": "~1.0.12",
28
-        "pear-pear.php.net/auth_sasl": "~1.0.6",
29
-        "pear-pear.php.net/net_idna2": "~0.1.1",
30
-        "pear-pear.php.net/mail_mime": "~1.10.0",
31
-        "pear-pear.php.net/net_smtp": "~1.7.1",
32
-        "pear-pear.php.net/crypt_gpg": "~1.4.2",
33
-        "roundcube/net_sieve": "~1.5.0",
34
-        "roundcube/carddav": "dev-master"
35
-    },
36
-    "require-dev": {
37
-        "phpunit/phpunit": "*"
38
-    },
39
-    "suggest": {
40
-        "pear-pear.php.net/net_ldap2": "~2.2.0 required for connecting to LDAP address books",
41
-        "kolab/Net_LDAP3": "dev-master required for connecting to LDAP address books"
42
-    },
43
-    "minimum-stability": "dev"
44
-}

+ 0
- 185
roles/webmail/files/var_www_roundcube_plugins_carddav_config.inc.php Zobrazit soubor

@@ -1,185 +0,0 @@
1
-<?php
2
-
3
-//// RCMCardDAV Plugin Admin Settings
4
-
5
-//// ** GLOBAL SETTINGS
6
-
7
-// Disallow users to add / edit / delete custom addressbooks (default: false)
8
-//
9
-// If true, User cannot add custom addressbooks
10
-// If false, user can add / edit / delete custom addressbooks
11
-//
12
-// This option only affects custom addressbooks. Preset addressbooks (see below)
13
-// are not affected.
14
-// $prefs['_GLOBAL']['fixed'] = true;
15
-
16
-// When enabled, this option hides the 'CardDAV' section inside Preferences.
17
-// $prefs['_GLOBAL']['hide_preferences'] = true;
18
-
19
-// Scheme for storing the CardDAV passwords, in order from least to best security.
20
-// Options:
21
-// plain: store as plaintext
22
-// base64: store encoded with base64 (default)
23
-// des_key: store encrypted with global des_key of roundcube
24
-// encrypted: store encrypted with IMAP password of the user
25
-//            NOTE: if the IMAP password of the user changes, the stored
26
-//             CardDAV passwords cannot be decrypted anymore and the user
27
-//             needs to reenter them.
28
-// $prefs['_GLOBAL']['pwstore_scheme'] = 'base64';
29
-
30
-//// ** ADDRESSBOOK PRESETS
31
-
32
-// Each addressbook preset takes the following form:
33
-/*
34
-$prefs['<Presetname>'] = array(
35
-	// required attributes
36
-	'name'         =>  '<Addressbook Name>',
37
-	'username'     =>  '<CardDAV Username>',
38
-	'password'     =>  '<CardDAV Password>',
39
-	'url'          =>  '<CardDAV URL>',
40
-
41
-	// optional attributes
42
-	'active'       =>  <true or false>,
43
-	'readonly'     =>  <true or false>,
44
-	'refresh_time' => '<Refresh Time in Hours, Format HH[:MM[:SS]]>',
45
-
46
-	// attributes that are fixed (i.e., not editable by the user) and
47
-	// auto-updated for this preset
48
-	'fixed'        =>  array( < 0 or more of the other attribute keys > ),
49
-
50
-	// hide this preset from CalDAV preferences section so users can't even
51
-	// see it
52
-	'hide' => <true or false>,
53
-);
54
-*/
55
-
56
-// All values in angle brackets <VALUE> have to be substituted.
57
-//
58
-// The meaning of the different parameters is as follows:
59
-//
60
-// <Presetname>: Unique preset name, must not be '_GLOBAL'. The presetname is
61
-//               not user visible and only used for an internal mapping between
62
-//               addressbooks created from a preset and the preset itself. You
63
-//               should never change this throughout its lifetime.
64
-//
65
-// The following parameters are REQUIRED and need to be specified for any preset.
66
-//
67
-// name:         User-visible name of the addressbook. If the server provides
68
-//               an additional display name for the addressbooks found for the
69
-//               preset, it will be appended in brackets to this name, except
70
-//               if carddav_name_only is true (see below).
71
-//
72
-// username:     CardDAV username to access the addressbook. Set this setting
73
-//               to '%u' to use the roundcube username.
74
-//               In case one uses an email address as username there is the
75
-//               additional option to choose '%l', which will only use the
76
-//               local part of the username (eg: user.name@example.com will
77
-//               become user.name).
78
-//               Also, %d is available to get only the domain part of the
79
-//               username (eg: user.name@example.com will become example.com).
80
-//
81
-// password:     CardDAV password to access the addressbook. Set this setting
82
-//               to '%p' to use the roundcube password. The password will not
83
-//               be stored in the database when using %p.
84
-//
85
-// url:          URL where to find the CardDAV addressbook(s). If the given URL
86
-//               refers directly to an addressbook, only this single
87
-//               addressbook will be added. If the URL points somewhere in the
88
-//               CardDAV space, but _not_ to the location of a particular
89
-//               addressbook, the server will be queried for the available
90
-//               addressbooks and all of them will be added. You can use %u
91
-//               within the URL as a placeholder for the CardDAV username.
92
-//               '%l' works the same way as it does for the username field.
93
-//
94
-// The following parameters are OPTIONAL and need to be specified only if the default
95
-// value is not acceptable.
96
-//
97
-// active:       If this parameter is false, the addressbook is not used by roundcube
98
-//               unless the user changes this setting.
99
-//               Default: true
100
-//
101
-// carddav_name_only:
102
-//               If this parameter is true, only the server provided displayname
103
-//               is used for addressbooks created from this preset, except if
104
-//               the server does not provide a display name.
105
-//               Default: false
106
-//
107
-// readonly:     If this parameter is true, the addressbook will only be
108
-//               accessible in read-only mode, i.e., the user will not be able
109
-//               to add, modify or delete contacts in the addressbook.
110
-//               Default: false
111
-//
112
-// refresh_time: Time interval for that cached versions of the addressbook
113
-//               entries should be used, in hours. After this time interval has
114
-//               passed since the last pull from the server, it will be
115
-//               refreshed when the addressbook is accessed the next time.
116
-//               Default: 01:00:00
117
-//
118
-// fixed:        Array of parameter keys that must not be changed by the user.
119
-//               Note that only fixed parameters will be automatically updated
120
-//               for existing addressbooks created from presets. Otherwise the
121
-//               user may already have changed the setting, and his change
122
-//               would be lost. You can add any of the above keys, but it the
123
-//               setting only affects parameters that can be changed via the
124
-//               settings pane (e.g., readonly cannot be changed by the user
125
-//               anyway). Still only parameters listed as fixed will
126
-//               automatically updated if the preset is changed.
127
-//               Default: empty, all settings modifiable by user
128
-//
129
-//               !!! WARNING: Only add 'url' to the list of fixed addressbooks
130
-//                if it _directly_ points to an address book collection.
131
-//                Otherwise, the plugin will initially lookup the URLs for the
132
-//                collections on the server, and at the next login overwrite it
133
-//                with the fixed value stored here. Therefore, if you change the
134
-//                URL, you have two options:
135
-//                1) If the new URL is a variation of the old one (e.g. hostname
136
-//                 change), you can run an SQL UPDATE query directly in the
137
-//                 database to adopt all addressbooks.
138
-//                2) If the new URL is not easily derivable from the old one,
139
-//                 change the key of the preset and change the URL. Addressbooks
140
-//                 belonging to the old preset will be deleted upon the next
141
-//                 login of the user and freshly created.
142
-//
143
-// hide:         Whether this preset should be hidden from the CalDAV listing
144
-//               on the preferences page.
145
-
146
-
147
-// How Preset Updates work
148
-//
149
-// Preset addressbooks are created for a user as she logs in.
150
-
151
-//// ** ADDRESSBOOK PRESETS - EXAMPLE: Two Addressbook Presets
152
-
153
-//// Preset 1: Personal
154
-/*
155
-$prefs['Personal'] = array(
156
-	// required attributes
157
-	'name'         =>  'Personal',
158
-	// will be substituted for the roundcube username
159
-	'username'     =>  '%u', 
160
-	// will be substituted for the roundcube password
161
-	'password'     =>  '%p',
162
-	// %u will be substituted for the CardDAV username
163
-	'url'          =>  'https://ical.example.org/caldav.php/%u/Personal',
164
-
165
-	'active'       =>  true,
166
-	'readonly'     =>  false,
167
-	'refresh_time' => '02:00:00',
168
-
169
-	'fixed'        =>  array( 'username' ),
170
-	'hide'        =>  false,
171
-);
172
-*/
173
-
174
-//// Preset 2: Corporate
175
-/*
176
-$prefs['Work'] = array(
177
-	'name'         =>  'Corporate',
178
-	'username'     =>  'CorpUser',
179
-	'password'     =>  'C0rpPasswo2d',
180
-	'url'          =>  'https://ical.example.org/caldav.php/%u/Corporate',
181
-
182
-	'fixed'        =>  array( 'name', 'username', 'password' ),
183
-	'hide'        =>  true,
184
-);
185
-*/

+ 5
- 0
roles/webmail/handlers/main.yml Zobrazit soubor

@@ -0,0 +1,5 @@
1
+- name: restart apache
2
+  service: name=apache2 state=restarted
3
+
4
+- name: apply roundcube config
5
+  command: '/usr/sbin/dpkg-reconfigure --frontend noninteractive roundcube-core'

+ 52
- 89
roles/webmail/tasks/roundcube.yml Zobrazit soubor

@@ -1,112 +1,75 @@
1
-- name: Determine whether roundcube is configured
2
-  stat: path=/var/www/roundcube/config.inc.php
3
-  register: roundcube_config
4
-
5
-- name: Install roundcube dependencies (PHP5 variant)
6
-  apt: pkg={{ item }} state=present
7
-  with_items:
8
-    - php5
9
-    - php5-sqlite
10
-    - php5-mcrypt
11
-    - php5-gd
12
-    - php5-pspell
13
-    - php5-intl
14
-    - php5-curl
15
-    - aspell
16
-    - aspell-en
17
-  when: (ansible_distribution_release != "xenial" and ansible_distribution_release != "bionic" and ansible_distribution_release != "stretch")
18
-  tags:
19
-    - dependencies
20
-
21
-- name: Install roundcube dependencies
22
-  apt: pkg={{ item }} state=present
23
-  with_items:
24
-    - php
25
-    - php-sqlite3
26
-    - php-mbstring
27
-    - php-mcrypt
28
-    - php-gd
29
-    - php-pspell
30
-    - php-intl
31
-    - php-curl
32
-    - php-xml
33
-    - aspell
34
-    - aspell-en
35
-  when: (ansible_distribution_release == "xenial" or ansible_distribution_release == "bionic" or ansible_distribution_release == "stretch")
1
+---
2
+# Installs and configures the Roundcube webmail interface.
3
+
4
+- name: Install Roundcube and related packages
5
+  apt:
6
+    name: "{{ packages }}"
7
+    state: present
8
+  vars:
9
+    packages:
10
+    - roundcube
11
+    - roundcube-core
12
+    - roundcube-pgsql
13
+    - roundcube-plugins
14
+    - roundcube-plugins-extra
36 15
   tags:
37 16
     - dependencies
38 17
 
39
-- name: Clone roundcube
40
-  git: repo=https://github.com/roundcube/roundcubemail.git
41
-       dest=/var/www/roundcube
42
-       version={{ webmail_version }}
43
-       update=no
44
-       accept_hostkey=yes
45
-
46
-- name: Get Composer installer
47
-  get_url: url=https://getcomposer.org/installer
48
-           dest=/tmp/composer-installer
49
-
50
-- name: Copy composer configuration
51
-  copy: src=var_www_roundcube_composer.json dest=/var/www/roundcube/composer.json
52
-    owner=root
53
-    group=www-data
54
-    mode=0644
55
-
56
-- name: Install Composer
57
-  command: php /tmp/composer-installer
58
-           chdir=/root
59
-           creates=/root/composer.phar
60
-
61
-- name: Initialize composer
62
-  command: php /root/composer.phar install --no-dev
63
-           chdir=/var/www/roundcube
64
-           creates=/var/www/roundcube/vendor/autoload.php
65
-
66
-- name: Remove installer directory
67
-  file: path=/var/www/roundcube/installer state=absent
68
-
69
-- name: Install Roundcube configuration
70
-  template: src=var_www_roundcube_config_config.inc.j2 dest=/var/www/roundcube/config/config.inc.php
71
-
72
-- name: Create db directory
73
-  file: path=/data/roundcube group=www-data mode=0775 state=directory
74
-
75 18
 - name: Make logs and temp directories writable by web server
76
-  file: path=/var/www/roundcube/{{ item }} mode=0775 state=directory
19
+  file: path=/var/lib/roundcube/{{ item }} mode=0775 state=directory
77 20
   with_items:
78 21
     - temp
79 22
     - logs
80 23
 
81 24
 - name: Make roundcube directory accessible to web server
82
-  file: path=/var/www/roundcube group=www-data recurse=yes state=directory
25
+  file: path=/var/lib/roundcube group=www-data recurse=yes state=directory
83 26
 
84 27
 - name: Install sieve plugin configuration
85
-  copy: src=var_www_roundcube_plugins_managesieve_config.inc.php
86
-    dest=/var/www/roundcube/plugins/managesieve/config.inc.php
28
+  copy: src=etc_roundcube_plugins_managesieve_config.inc.php
29
+    dest=/etc/roundcube/plugins/managesieve/config.inc.php
87 30
     owner=root
88 31
     group=www-data
89 32
     mode=0644
90 33
 
91 34
 - name: Install global sieve
92
-  copy: src=var_www_roundcube_config_global.sieve
93
-    dest=/var/www/roundcube/config/global.sieve
35
+  copy: src=etc_roundcube_global.sieve
36
+    dest=/etc/roundcube/global.sieve
94 37
     owner=root
95 38
     group=www-data
96 39
     mode=0644
97 40
 
98
-- name: Install carddav plugin configuration
99
-  copy: src=var_www_roundcube_plugins_carddav_config.inc.php
100
-    dest=/var/www/roundcube/plugins/carddav/config.inc.php
101
-    owner=root
102
-    group=www-data
103
-    mode=0644
41
+- name: Set server parameter for Roundcube
42
+  debconf:
43
+    name: roundcube-core
44
+    question: roundcube/hosts
45
+    value: "ssl://{{ webmail_domain }}:993"
46
+    vtype: string
47
+  notify: apply roundcube config
48
+
49
+- name: Set language for Roundcube
50
+  debconf:
51
+    name: roundcube-core
52
+    question: roundcube/language
53
+    value: "{{ webmail_language }}"
54
+    vtype: string
55
+  notify: apply roundcube config
104 56
 
105
-- name: Configure Apache for Roundcube
106
-  template: src=etc_apache2_sites-available_roundcube.j2
107
-    dest=/etc/apache2/sites-available/roundcube.conf
108
-    group=root owner=root force=yes
57
+- name: Install Roundcube configuration
58
+  template:
59
+    src=etc_roundcube_config.inc.j2
60
+    dest=/etc/roundcube/config.inc.php
61
+
62
+- name: Configure Apache sites for Roundcube
63
+  template:
64
+    src=etc_apache2_sites-available_roundcube.j2
65
+    dest=/etc/apache2/sites-available/mail_{{ item.name }}.conf
66
+    owner=root
67
+    group=root
68
+    force=yes
69
+  with_items: "{{ virtual_domains }}"
70
+  notify: restart apache
109 71
 
110
-- name: Enable Roundcube site
111
-  command: a2ensite roundcube.conf creates=/etc/apache2/sites-enabled/roundcube.conf
72
+- name: Enable Roundcube sites
73
+  command: a2ensite mail_{{ item }}.conf creates=/etc/apache2/sites-enabled/mail_{{ item }}.conf
74
+  with_items: "{{ virtual_domains | json_query('[*].name') }}"
112 75
   notify: restart apache

+ 11
- 12
roles/webmail/templates/etc_apache2_sites-available_roundcube.j2 Zobrazit soubor

@@ -1,15 +1,18 @@
1 1
 <VirtualHost *:80>
2
-    ServerName {{ webmail_domain }}
2
+    ServerName {{ webmail_subdomain }}.{{ item.name }}
3 3
 
4
-    Redirect permanent / https://{{ webmail_domain }}/
4
+    Redirect permanent / https://{{ webmail_subdomain }}.{{ item.name }}/
5 5
 </VirtualHost>
6 6
 
7 7
 <VirtualHost *:443>
8
-    ServerName {{ webmail_domain }}
9
-    SSLEngine On
8
+    ServerName {{ webmail_subdomain }}.{{ item.name }}
10 9
 
11
-    DocumentRoot            /var/www/roundcube
10
+    SSLEngine               On
11
+    DocumentRoot            /var/lib/roundcube
12 12
     Options                 -Indexes
13
+    LogLevel		        warn
14
+    ErrorLog                /var/log/apache2/roundcube.info-error_log
15
+    CustomLog               /var/log/apache2/roundcube.info-access_log common
13 16
 
14 17
     <Directory /var/www/roundcube>
15 18
         AllowOverride All
@@ -19,20 +22,16 @@
19 22
 
20 23
     <Directory /opt/roundcube/config>
21 24
         AllowOverride None
22
-	Require all denied
25
+        Require all denied
23 26
     </Directory>
24 27
 
25 28
     <Directory /opt/roundcube/temp>
26 29
         AllowOverride None
27
-	Require all denied
30
+        Require all denied
28 31
     </Directory>
29 32
 
30 33
     <Directory /opt/roundcube/logs>
31 34
         AllowOverride None
32
-	Require all denied
35
+        Require all denied
33 36
     </Directory>
34
-
35
-    LogLevel		    warn
36
-    ErrorLog                /var/log/apache2/roundcube.info-error_log
37
-    CustomLog               /var/log/apache2/roundcube.info-access_log common
38 37
 </VirtualHost>

roles/webmail/templates/var_www_roundcube_config_config.inc.j2 → roles/webmail/templates/etc_roundcube_config.inc.j2 Zobrazit soubor

@@ -1,31 +1,26 @@
1 1
 <?php
2 2
 
3 3
 /*
4
- +-----------------------------------------------------------------------+
5
- | Local configuration for the Roundcube Webmail installation.           |
6
- |                                                                       |
7
- | This is a sample configuration file only containing the minimum       |
8
- | setup required for a functional installation. Copy more options       |
9
- | from defaults.inc.php to this file to override the defaults.          |
10
- |                                                                       |
11
- | This file is part of the Roundcube Webmail client                     |
12
- | Copyright (C) 2005-2013, The Roundcube Dev Team                       |
13
- |                                                                       |
14
- | Licensed under the GNU General Public License version 3 or            |
15
- | any later version with exceptions for skins & plugins.                |
16
- | See the README file for a full license statement.                     |
17
- +-----------------------------------------------------------------------+
4
++-----------------------------------------------------------------------+
5
+| Local configuration for the Roundcube Webmail installation.           |
6
+|                                                                       |
7
+| This is a sample configuration file only containing the minimum       |
8
+| setup required for a functional installation. Copy more options       |
9
+| from defaults.inc.php to this file to override the defaults.          |
10
+|                                                                       |
11
+| This file is part of the Roundcube Webmail client                     |
12
+| Copyright (C) 2005-2013, The Roundcube Dev Team                       |
13
+|                                                                       |
14
+| Licensed under the GNU General Public License version 3 or            |
15
+| any later version with exceptions for skins & plugins.                |
16
+| See the README file for a full license statement.                     |
17
++-----------------------------------------------------------------------+
18 18
 */
19 19
 
20 20
 $config = array();
21 21
 
22
-// Database connection string (DSN) for read+write operations
23
-// Format (compatible with PEAR MDB2): db_provider://user:password@host/database
24
-// Currently supported db_providers: mysql, pgsql, sqlite, mssql, sqlsrv, oracle
25
-// For examples see http://pear.php.net/manual/en/package.database.mdb2.intro-dsn.php
26
-// NOTE: for SQLite use absolute path (Linux): 'sqlite:////full/path/to/sqlite.db?mode=0646'
27
-//       or (Windows): 'sqlite:///C:/full/path/to/sqlite.db'
28
-$config['db_dsnw'] = 'sqlite:////data/roundcube/sqlite.db?mode=0664';
22
+/* Do not set db_dsnw here, use dpkg-reconfigure roundcube-core to configure database ! */
23
+include_once("/etc/roundcube/debian-db-roundcube.php");
29 24
 
30 25
 // The mail host chosen to perform the log-in.
31 26
 // Leave blank to show a textbox at login, give a list of hosts
@@ -37,7 +32,7 @@ $config['db_dsnw'] = 'sqlite:////data/roundcube/sqlite.db?mode=0664';
37 32
 // %d - domain (http hostname $_SERVER['HTTP_HOST'] without the first part)
38 33
 // %s - domain name after the '@' from e-mail address provided at login screen
39 34
 // For example %n = mail.domain.tld, %t = domain.tld
40
-$config['default_host'] = 'ssl://{{ webmail_domain }}:993';
35
+$config['default_host'] = array("ssl://{{ webmail_domain }}:993");
41 36
 
42 37
 // SMTP server host (for sending mails).
43 38
 // To use SSL/TLS connection, enter hostname with prefix ssl:// or tls://
@@ -65,24 +60,28 @@ $config['smtp_pass'] = '%p';
65 60
 
66 61
 // provide an URL where a user can get support for this Roundcube installation
67 62
 // PLEASE DO NOT LINK TO THE ROUNDCUBE.NET WEBSITE HERE!
68
-$config['support_url'] = '';
63
+$config['support_url'] = 'https://www.{{ domain }}';
69 64
 
70 65
 // Name your service. This is displayed on the login screen and in the window title
71
-$config['product_name'] = 'Roundcube Webmail';
66
+$config['product_name'] = '{{ domain }} Webmail';
72 67
 
73 68
 // this key is used to encrypt the users imap password which is stored
74 69
 // in the session record (and the client cookie if remember password is enabled).
75 70
 // please provide a string of exactly 24 chars.
76 71
 // YOUR KEY MUST BE DIFFERENT THAN THE SAMPLE VALUE FOR SECURITY REASONS
77
-$config['des_key'] = 'fwef42cna12wefew9fewfmac';
72
+$config['des_key'] = '{{ lookup('password', secret + '/' + 'roundcube_des_key', length=24) }}';
78 73
 
79 74
 // List of active plugins (in plugins/ directory)
75
+// Debian: install roundcube-plugins first to have any
80 76
 $config['plugins'] = array(
81
-    'archive',
82 77
     'zipdownload',
83
-    'managesieve',
84
-    'carddav',
78
+    'managesieve'
85 79
 );
86 80
 
87 81
 // skin name: folder from skins/
88 82
 $config['skin'] = 'larry';
83
+
84
+// Disable spellchecking
85
+// Debian: spellshecking needs additional packages to be installed, or calling external APIs
86
+//         see defaults.inc.php for additional informations
87
+$config['enable_spellcheck'] = false;

Loading…
Zrušit
Uložit