Skip to content

SnappyMail

SnappyMail

License: AGPLv3

This guide is tested with SnappyMail 2.38.2 on Uberspace 8.0.75. We can't guarantee it to work with newer versions.

SnappyMail is a simple, modern, lightweight, and fast web-based open source email client. It is a fork of the email client RainLoop, but with massive changes to be compatible with (mobile) browsers of 2020 and newer.


Note

For this guide you should be familiar with the basic concepts of:

Prerequisites

We're using PHP in the stable version 8.3.

[isabell@moondust ~]$ uberspace tool version set php 8.3
OK: Set version of php to 8.3

Note

If you want to use PHP 8.4+, you must implement the necessary changes yourself, as they are not yet part of a new release.

Installation

Enter your DocumentRoot directory, download the latest version, unpack the archive and then delete it.

[isabell@moondust ~]$ cd /var/www/virtual/$USER/html/
[isabell@moondust html]$ wget https://snappymail.eu/repository/latest.tar.gz
[isabell@moondust html]$ tar -xzf latest.tar.gz
[isabell@moondust html]$ rm latest.tar.gz

For security reasons, it is a good idea to move the data directory from the DocumentRoot to a directory that cannot be accessed by the web server. The home directory is suitable for this purpose. Move the directory data and rename it snappymail-data at the same time, so that you know later it is a part of SnappyMail.

[isabell@moondust ~]$ cd /var/www/virtual/$USER/html/
[isabell@moondust html]$ mv data ~/snappymail-data

Configuration

Configure SnappyMail

You must tell SnappyMail about the moved data directory. To do this, enter the new path in the file /var/www/virtual/$USER/html/_include.php as the value of the constant APP_DATA_FOLDER_PATH. To achieve this, add the following line:

define('APP_DATA_FOLDER_PATH', '/home/isabell/snappymail-data/');

Afterwards, you have to rename the file _include.php to include.php.

[isabell@moondust ~]$ cd /var/www/virtual/$USER/html/
[isabell@moondust html]$ mv _include.php include.php

Accessing the admin panel

Open the admin panel, which can now be found here:

https://isabell.uber.space/?admin

When you access this page for the first time, the file ~/snappymail-data/_data_/_default_/admin_password.txt is created with the initial password for the user admin. Use this to log in and then change your password in the "Security" menu item. The file with the password will now be deleted automatically.

Configure your domains

You may now want to configure your own domains for email access. You can do this in the admin panel in the menu item "Domains".

Be aware that an entry for moondust.uberspace.de (in addition to the correct entries for Gmail and Hotmail) has already been created there automatically. However, this one is incorrect so you should delete it. You can find the correct settings for IMAP and SMTP here: Accessing your mail

Tuning

You can protect your admin account from unauthorized access by using two-factor authentication in addition to a strong password. You can activate this in the admin panel by clicking on the "Generate" button in the "Security" menu item. Please note that you must also enter your current password in order to be able to save it. Now scan the QR code with an app for two-factor authentication. If you don't have one yet, take a look at 2FAS or Ente Auth.

Accessing your email

You can now check your email at https://isabell.uber.space/.

Updates

Note

Check the update feed regularly.

The official documentation has a dedicated section ("Upgrade") on how to update to a new version.