User Tools

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
services:roundcube [2025/02/19 06:47] willyservices:roundcube [2025/03/06 13:15] (current) willy
Line 9: Line 9:
 Since i don't want to oberate the external server with containers, i will show you how to install Roundcube on bare metal. It's relatively easy anyway. Since i don't want to oberate the external server with containers, i will show you how to install Roundcube on bare metal. It's relatively easy anyway.
  
-You need PHP and NGINX installed. PHP requires some extensions like PDO and zip, so: +You need PHP and NGINX installed. PHP requires some extensions like PDO and zip, also Roundcube requires aspell to be installed for syntax checking, which is controlled by L10N variable in /etc/portage/make.conf:
 <code bash> <code bash>
 echo app-eselect/eselect-php fpm >> /etc/portage/package.use/php echo app-eselect/eselect-php fpm >> /etc/portage/package.use/php
 echo dev-lang/php fpm sqlite zip spell intl pdo curl exif gd xmlreader writer >> /etc/portage/package.use/php echo dev-lang/php fpm sqlite zip spell intl pdo curl exif gd xmlreader writer >> /etc/portage/package.use/php
-emerge -vp php+echo 'L10N="it de fr en"' >> /etc/portage/make.conf 
 +emerge -vp php aspell
 # The following is optional, if you haven't yet created a web user: # The following is optional, if you haven't yet created a web user:
 # useradd --shell /sbin/nologin web # useradd --shell /sbin/nologin web
Line 35: Line 35:
 Since i want to share PHP between Rouncube and other public services, due to the limited resources of the external server, i will not create a dedicated user, which would require also to run multiple PHP copies. Since i want to share PHP between Rouncube and other public services, due to the limited resources of the external server, i will not create a dedicated user, which would require also to run multiple PHP copies.
  
-The webmail will be installed under **/home/web/roundcube**:+The webmail will be installed under **/home/web/roundcube**. Run the following commands ar user root:
 <code bash> <code bash>
-mkdir -p /home/web/roundcube +mkdir /home/web/roundcube 
-cd /home/web/roundcube+mkdir /var/log/roundcube 
 +chown web:web /var/log/roundcube
 </code> </code>
  
Line 46: Line 47:
 <code bash> <code bash>
 cd /home/web/roundcube cd /home/web/roundcube
-mkdir db logs temp +mkdir db temp 
-chown web:web db logs temp+chown web:web db temp 
 +wget https://github.com/roundcube/roundcubemail/releases/download/X.Y.X/roundcubemail-X.Y.Z-complete.tar.gz 
 +tar xvf roundcubemail-X.Y.Z-complete.tar.gz 
 +ln -s roundcubemail-X.Y.Z-complete.tar.gz roundcubemail
 </code> </code>
  
Line 62: Line 66:
                 index index.php;                 index index.php;
  
-                root /home/web/roundcube/roundcubemail-1.6.10;+                root /home/web/roundcube/roundcubemail;
  
                 access_log /var/log/nginx/webmail.mydomain.com_access_log main;                 access_log /var/log/nginx/webmail.mydomain.com_access_log main;
Line 70: Line 74:
 #        location ~ /(config/|temp/|logs/|installer) { #        location ~ /(config/|temp/|logs/|installer) {
 #                deny all; #                deny all;
-#                alias /home/web/roundcube/roundcubemail-1.6.10;+#                alias /home/web/roundcube/roundcubemail;
 #        } #        }
  
Line 108: Line 112:
 $config['smtp_auth_type'] = "PLAIN"; $config['smtp_auth_type'] = "PLAIN";
 $config['support_url'] = ''; $config['support_url'] = '';
-$config['log_dir'] = '/home/web/roundcube/logs/';+$config['log_dir'] = '/var/log/roundcube';
 $config['temp_dir'] = '/home/web/roundcube//temp/'; $config['temp_dir'] = '/home/web/roundcube//temp/';
 $config['des_key'] = '<<autogenerated secret key>>'; $config['des_key'] = '<<autogenerated secret key>>';
Line 117: Line 121:
 $config['mime_param_folding'] = 0; $config['mime_param_folding'] = 0;
 </file> </file>
- 
  
 At this point the installation is complete. At this point the installation is complete.
 +
 +
 +===== CardDav Plugin =====
 +
 +To enable integration with your CardDav addressbook, 
 +
 +Download latest tarball from [[https://github.com/mstilkerich/rcmcarddav/releases|here]] and decompress it into rouncube //plugins// folder, then enable it by adding **carddav** to the //$config['plugins']// defined above.
 +
 +**Note:** it is critical that you LOGOUT from Roundcube before enabling the plugin, and LOGIN again after. This is because this will create the needed table. If you don't, you will get an internal error.
  
  

This website uses technical cookies only. No information is shared with anybody or used in any way but provide the website in your browser.

More information