GithubHelp home page GithubHelp logo

yunohost-apps / rainloop_ynh Goto Github PK

View Code? Open in Web Editor NEW

This project forked from yunohostplugins-testing/rainloop_ynh

14.0 11.0 13.0 9.91 MB

Rainloop package for YunoHost

Home Page: https://rainloop.net

License: GNU General Public License v3.0

PHP 25.05% Shell 69.53% HTML 5.42%
rainloop webmail webmail-client yunohost official-ynh closember

rainloop_ynh's Introduction

Rainloop for YunoHost

Integration level Working status Maintenance status

Install Rainloop with YunoHost

Read this README is other languages.

This package allows you to install Rainloop quickly and simply on a YunoHost server.
If you don't have YunoHost, please consult the guide to learn how to install it.

Overview

Lightweight multi-account webmail

Features

  • Modern user interface.
  • Complete support of IMAP and SMTP protocols including SSL and STARTTLS.
  • Sieve scripts (Filters and vacation message).
  • Direct access to mail server is used (mails are not stored locally on web server).
  • Allows for adding multiple accounts to primary one, simultaneous access to different accounts in different browser tabs is supported. Additional identities.
  • Administrative panel for configuring main options.
  • Integration with Facebook, Google, Twitter and Dropbox.
  • Managing folders list.
  • Configurable multi-level caching system.
  • Extending functionality with plugins installed through admin panel.
  • Perfect rendering of complex HTML mails.
  • Drag'n'drop for mails and attachments.
  • Keyboard shortcuts support.
  • Autocompletion of e-mail addresses.

Shipped version: 1.17.0~ynh1

Demo: https://mail.rainloop.net/

Screenshots

Screenshot of Rainloop

Disclaimers / important information

Rainloop is unmaintained ⚠️

See RainLoop/rainloop-webmail#2162

Access to admin panel

To access admin panel, use URL of the following kind: http://product_installation_URL/app/?admin

For example: http://webmail.domain.com/app/?admin

Default login is admin, the password is the one you chose during installation.

🔴 Antifeatures

  • Bad security reputation: Has a bad security reputation, such as deprecated addons.
  • Upstream not maintained: This software is not maintained anymore. Expect it to break down over time, be exposed to unfixed security breaches, etc.
  • Replaced by another app: Was replaced by another app. Please refer to the README.

Documentation and resources

Developer info

Please send your pull request to the testing branch.

To try the testing branch, please proceed like that:

sudo yunohost app install https://github.com/YunoHost-Apps/rainloop_ynh/tree/testing --debug
or
sudo yunohost app upgrade rainloop -u https://github.com/YunoHost-Apps/rainloop_ynh/tree/testing --debug

More info regarding app packaging: https://yunohost.org/packaging_apps

rainloop_ynh's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rainloop_ynh's Issues

How to integrate this with sso

Would you please provide an example or code snippet on how to integrate rainloop with an external sso service (like cas). Thank you.

redirection after sso login and weird url

Hi,

I installed rainloop at the root of a subdomain. I might have done something wrong, but here is what i have :
i used the cli install, chose as domain :

mail.domain.tld

and as path :

/

(i should probably have left it blank ?)

Is this behavior my mistake, or a bug in cli install ? Could the app after sso be redirected to mail.domain.tld and let rainloop redirect to the correct path ?

Thanks again for all the good work done on this app!

Custom SMTP problems

Hey there, I have a question regarding Rainloop. I am trying to set an external SMTP server for sending mail via an external service outside of my local host (I use ZOHO with this email, but Google with another) but I am having troubles with authentication, since I need to use it.

When I check use authentication, it does not give me the option to provide the credentials for the login, so when I try to send an email it states that it fails the authentication. Is there a way I can force this information info the system? I am using it for my main domains email

Exclude cached files from backup

Hi,

I am currently using borg_ynh to backup my YunoHost on a 3rd party server, which is really nice.
However the more space I use, the more I pay. The issue is that rainloop backs up files that are useless, specially all the cached files.

Example:

drwxr-xr-x www-data www-data        0 Mon, 2019-02-04 14:48:19 apps/rainloop/backup/sources/app/data/_data_/_default_/cache/__/ma/il/mail_nicofrand_eu/78/0a                                                                                                                   
-rw-r--r-- www-data www-data      606 Mon, 2019-02-04 14:48:19 apps/rainloop/backup/sources/app/data/_data_/_default_/cache/__/ma/il/mail_nicofrand_eu/78/0a/780a49aac87df4ba2ce0c62f8b9098b0eef49e69                                                                          
drwxr-xr-x www-data www-data        0 Sun, 2019-02-03 18:58:53 apps/rainloop/backup/sources/app/data/_data_/_default_/cache/d3                                                                                                                                                 
drwxr-xr-x www-data www-data        0 Sun, 2019-02-03 18:58:53 apps/rainloop/backup/sources/app/data/_data_/_default_/cache/d3/29                                                                                                                                              
-rw-r--r-- www-data www-data     7021 Sun, 2019-02-03 18:58:53 apps/rainloop/backup/sources/app/data/_data_/_default_/cache/d3/29/d329b5ddff3e95f00c6bffb8416764518286d3d3                                                                                                     
drwxr-xr-x www-data www-data        0 Sun, 2019-02-03 17:30:07 apps/rainloop/backup/sources/app/data/_data_/_default_/cache/b9                                                                                                                                                 
drwxr-xr-x www-data www-data        0 Sun, 2019-02-03 17:30:07 apps/rainloop/backup/sources/app/data/_data_/_default_/cache/b9/ee                                                                                                                                              
-rw-r--r-- www-data www-data     1444 Sun, 2019-02-03 17:30:07 apps/rainloop/backup/sources/app/data/_data_/_default_/cache/b9/ee/b9ee69711933c261c80c600df8f6348182062b89                                                                                                     
drwxr-xr-x www-data www-data        0 Sun, 2019-02-03 17:30:08 apps/rainloop/backup/sources/app/data/_data_/_default_/cache/60                                                   

I also see some files like apps/rainloop/backup/sources/app/data/_data_/_default_/storage/files/ma/[email protected]/b8 but I am not sure whether those should be backed up or not.

So, would that be possible to exclude the cached files from the backup please?

Unable to set username different from mail adress

Sometimes mail accounts require a different username than the e-mail address for login, e.g. for us it is [email protected] for login, but the mail address is actually [email protected].

It would thus be great if an option for a differing username would be added for accounts. I tried custom mapping, but a) it does not seem to work and b) it is not practical if the user cannot set it themselves.

Otherwise a great tool, but as long as this is missing, we cannot use it here.

Keep the good work up!

smtp : port ssl://465 or tcp://587 ?

We had this discussion for z-push_ynh on jabber so as which port should we use to communicate with smtp ?

For z-push_ynh, I initially looked at rainloop and use port 465.
However, the guys packaging roundcube told me that the "official" smtp port are 25 (clear) and 587 (encrypted).

For z-push_ynh, 465 was only working with ssl and 587 was only working with tcp/startssl.

I was also able to configure nextcloud to use port 587.

Should we also use port 587 in rainloop ?

Php extension missing

Hi,
I had an issue while installing rainloop, I got an error message telling me that the dom php extension was missing. I don't know if php-xml is supposed to be installed by default with YunoHost (and I would have removed it for some reason), but it would be a good idea to add a dependency to this package or to check for it in the install process.
Best regards,
Taekiro

Manage users via Hooks

When an user is added:

  • Autoconfigure the sync address book (Baikal or Owncloud)
  • Add alternative emails

When an user is deleted:

  • Remove the user's folders

For synced address books, perhaps see: https://github.com/RainLoop/rainloop-webmail/blob/34a9b8cbc5f28c229721dac1fb9453cccce1b5e7/rainloop/v/0.0.0/app/libraries/RainLoop/Actions.php#L6508-L6538

Remove user's folder, perhaps with:

define('RAINLOOP_INCLUDE_AS_API', true);
include '/var/www/rainloop/index.php';
\RainLoop\Api::ClearUserData('[email protected]');

Or delete the folder

Pgpback don't work

The pgpback plugin don't work

When the keys are saved in the server and I tried to access in an other computer No data found. Keys not set.

Pgpback is not compatible with the last release of rainloop ?

PHP headers warnings

Hi there,
I noticed warnings in my php7.0-fpm logs (see below). Is this a normal thing ? I'm on Rapsbian Stretch, last Ynh version, and Rainloop is fully functionnal, as far as I can tell.

I'm available to help any maintainer sort this out :)

[pool rainloop] child 1796 said into stderr: "NOTICE: PHP message: PHP Warning: Cannot modify header information - headers already sent by (output started at /var/www/rainloop/app/rainloop/v/1.11.3/app/libraries/Imagine/Gd/Image.php:580) in /var/www/rainloop/app/rainloop/v/1.11.3/app/libraries/RainLoop/Actions.php on line 8690"

post_domain_add hook error

Hi,

I just added a new domain, and i saw only 2 lines of error, which I hope will make sense to you :

Attention : cp: impossible d'évaluer « ../conf/data/domains/domain.tld.ini »: Aucun fichier ou dossier de ce type
Erreur : Échec de l'exécution du script « /etc/yunohost/hooks.d/post_domain_add/50-rainloop »

if it does change anything, it was a subdomain to the main domain, and rainloop is also installed on another subdomain
i don't want to use this domain for rainloop anyway, but i thought you might want to be informed of the issue

remove fork

This version is a fork of a fork of afork ... As a result it looses visibility in github.

How to transform it in a version of its own?

Restore failed

+ sudo chown -R www-data: /var/www/rainloop
+ sudo cp -a ./nginx.conf /etc/nginx/conf.d/moul.re.d/rainloop.conf
+ sudo cp -a ./php-fpm.conf /etc/php5/fpm/pool.d/rainloop.conf
Attention : cp: impossible d'évaluer « ./php-fpm.conf »: Aucun fichier ou dossier de ce type
Erreur : Impossible de restaurer l'application « rainloop »
Exécution du script « /tmp/remove_rainloop »...

upgrade leads to 404

Hi there,

I just upgraded from v14 to v15 on my ynh3.7, and this happens : the tile in the user interface redirects to ndd/rainloop and ends up in 404 (2021/02/19 17:31:43 [error] 3728#3728: *58087 open() "/usr/share/nginx/html/rainloop" failed (2: No such file or directory), client: IPADRESS, server: DOMAIN, request: "GET /rainloop HTTP/2.0", host: "DOMAIN", referrer: "DOMAIN/yunohost/sso/" ).

However, if I request DOMAIN/rainloop/app manually, I can use the app normally (no sso login though).

Is this a bug from my side ?

yunohost app initdb est déprécié

à l'installation, moulinette dit

Attention : « yunohost app initdb » est déprécié et sera bientôt supprimé

Yunohost 2.4.2
Moulinette 2.4.0.1

8<-----EN
On fresh install, moulinette says :

warning: yunohost app initdb is deprecated and will be deleted.

Installation Fails during 'Configuring Rainloop' stage

Good day,
I am not very good at being able to extract log files (working on it) but I wanted to send this right away because there are others who are confirming this bug.

During installation process, in the 'configuring rainloop' stage, it gets stuck and does not proceed to successful installation.

Another user in the group confirmed this. I will try to reply to this with my error logs if I can figure out how to get them out of the server...

Warnings during installation

Some warnings appear during installation :

Installation terminée
La configuration de SSOwat a été générée
Primary key fingerprint: [I DON'T KNOW IF IT PRIVATE]
gpg: There is no indication that the signature belongs to the owner.
gpg: WARNING: This key is not certified with a trusted signature!
gpg: Good signature from "RainLoop " [unknown]
gpg: using RSA key [I DON'T KNOW IF IT PRIVATE]
gpg: Signature made Mon 25 Sep 2017 19:17:11 BST
gpg: migration succeeded
gpg: porting secret keys from '/root/.gnupg/secring.gpg' to gpg-agent
gpg: starting migration from earlier GnuPG versions
Packagers /!\ : 'app checkurl' is deprecated ! Please use the helper 'ynh_webpath_register' instead !
'yunohost app checkurl' is deprecated and will be removed in the future

Synchronization of contacts with nextcloud ?

Hello,
I have a problem, I have installed on my yunohost rainloop as well as nextcloud. Each with its own domain name.
When I try in Rainloop to synchronize the contacts (carddav) I always get an error message.
Is there no way to get this sync directly to my server?
If anyone has successfully synchronized contacts please share ..

Backup / Restore

Hi,

Would it be possible to add scripts for saving/restoring with YunoHost?

Thank you :).

PS: Thank you for this nice job!

Problème identité d'envoi de mail - serveur avec plusieurs noms de domaine

J'utilise rarement rainloop, et en voulant envoyer un mail aujourd'hui, ça n'a pas marché : "envoi impossible". J'ai plusieurs domaines sur mon serveur, et celui de mon adresse mail n'est pas le domaine par défaut, et du coup pas celui du smtp.
Du coup comme mail d'envoi il mettait : [email protected]. J'ai dû ajouter une identité avec [email protected], et la mettre par défaut, et les envois avec cette identité marche.
Est-ce qu'il serait possible que ça se configure automatiquement à l'installation de rainloop, et à la création des users ? Que le mail d'envoi soit directement le bon.

Installation fails

On a fresh yunohost install on debian 9, through the web admin, I click on install Rainloop and it fails.

  • yunohost 3.3.2 (stable)
  • yunohost-admin 3.3.1 (stable)
  • moulinette 3.3.1 (stable)
  • ssowat 3.3.1 (stable)

Installation error log is bellow.

2018-12-06 10:28:08,678: WARNING - 'yunohost app checkurl' is deprecated and will be removed in the future
2018-12-06 10:28:08,680: WARNING - Packagers /!\ : 'app checkurl' is deprecated ! Please use the helper 'ynh_webpath_register' instead !
2018-12-06 10:28:11,787: WARNING - gpg: starting migration from earlier GnuPG versions
2018-12-06 10:28:11,788: WARNING - gpg: porting secret keys from '/root/.gnupg/secring.gpg' to gpg-agent
2018-12-06 10:28:11,788: WARNING - gpg: migration succeeded
2018-12-06 10:28:11,788: WARNING - gpg: Signature made Mon 25 Sep 2017 08:17:11 PM CEST
2018-12-06 10:28:11,789: WARNING - gpg:                using RSA key ED7C49D987DA4591
2018-12-06 10:28:11,789: WARNING - gpg: Good signature from "RainLoop <[email protected]>" [unknown]
2018-12-06 10:28:11,789: WARNING - gpg: WARNING: This key is not certified with a trusted signature!
2018-12-06 10:28:11,790: WARNING - gpg:          There is no indication that the signature belongs to the owner.
2018-12-06 10:28:11,790: WARNING - Primary key fingerprint: 3B79 7ECE 694F 3B7B 70F3  11A4 ED7C 49D9 87DA 4591
2018-12-06 10:28:12,893: WARNING - !!
2018-12-06 10:28:12,893: WARNING -   rainloop install's script has encountered an error. Installation was cancelled.
2018-12-06 10:28:12,893: WARNING - !!
2018-12-06 10:28:12,893: WARNING - 

PHP cURL is not installed

Hi.

I got a server on Debian 8 "Jessie" through Gandi IaaS. I installed YunoHost and then tried to install Rainloop (no other app was installed), but it failed.
I used yunohost app install rainloop --verbose. I found that:

<p>[302] The following PHP extensions are not available in your PHP configuration!</p><ul><li>cURL</li></ul>+ EXIT_PROPERLY
+ exit_code=46
+ '[' 46 -eq 0 ']'
+ trap '' EXIT
+ set +eu
+ echo -e '\e[91m \e[1m'
 
+ echo -e '!!\n  rainloop install'\''s script has encountered an error. Installation was cancelled.\n!!'
+ type -t CLEAN_SETUP

I installed the PHP extension for cURL with package php5-curl. For Debian Stretch and more, php-curl would be the good one.
Then I tried again to install Rainloop and it works. Where should be done the installation (scripts/install, manifest.json, somewhere else) ?

Regards.

It seems to be also the problem of: #32

Manage domains via Hooks

When a domain is added in YunoHost, create the config
When a domain is removed, remove the config and alternate emails for users who used it

Add logrotate for all logs

Hi,

I sometimes need to add some logs to debug a failing connection etc. and therefore edit the line 163 of /var/www/rainloop/app/data/_data_/_default_/configs/application.ini.
Those logs can be quite heavy and take a lot of place on a disk.

The files are stored in /var/www/rainloop/app/data/_data_/_default_/logs with a name like log-2020-10-20.txt.

Could we add the following rule to the logrotate please?

/var/www/rainloop/app/data/_data_/_default_/logs/*.txt {
        # Rotate if the logfile exceeds 100Mo
    size 100M
        # Keep 12 old log maximum
    rotate 12
        # Compress the logs with gzip
    compress
        # Compress the log at the next cycle. So keep always 2 non compressed logs
    delaycompress
        # Copy and truncate the log to allow to continue write on it. Instead of move the log.
    copytruncate
        # Do not do an error if the log is missing
    missingok
        # Not rotate if the log is empty
    notifempty
        # Keep old logs in the same dir
    noolddir

}

If you wish I can make a merge request for that.

Logout not clearing SSO

When logging out of rainloop im being correctly redirected to the login page.
But the problem here is, that when I enter the url in the browser again, I get logged in by the ynh sso automatically.

Why doesn't the logout button in rainlopp delete sso cookies?

Error on installation, but installs after other apps were installed

On a fresh install of YH on an Odroid C1 I got an error when installing Rainloop:

<p>[302] The following PHP extensions are not available in your PHP configuration!</p>
<ul><li>cURL</li></ul>+ EXIT_PROPERLY
+ exit_code=46
+ '[' 46 -eq 0 ']'
+ trap '' EXIT
+ set +eu
+ echo -e '\e[91m \e[1m'
+ echo -e '!!\n  rainloop install'\''s script has encountered an error. Installation was cancelled.\n!!'

I installed some other apps (Kanboard, Nextcloud and OpenSondage IIRC) and tried again to file this issue report when installation surprisingly succeeded. Thus, I assume one of the other apps installed the cURL PHP extension…?

Rainloop SMTP settings no longer work

I upgraded to Yunohost 3.0.
Previous SMTP default settings was to use SSL on port 465.
Yunohost 3.0 no longer allows that, you need STARTTLS and port 587.

Therefore, current Rainloop's version does not allow sending emails!

EDIT: Well, default.ini is on SSL/465, domain.tld.ini is on TLS/587. I don't know which one is used for what.
So maybe it's what it should be, but I do have a problem sending out emails, and only on Rainloop, I can send emails using Nextcloud/Mail and K9.

Config everything with PHP instead of sed

Replace
https://github.com/YunoHostPlugins-Testing/rainloop_ynh/blob/master/scripts/install#L73-L78

With PHP only config. Perhaps with: https://github.com/RainLoop/rainloop-webmail/blob/34a9b8cbc5f28c229721dac1fb9453cccce1b5e7/rainloop/v/0.0.0/app/libraries/RainLoop/Actions.php#L3485-L3529

Something like?

<?php

$_ENV['RAINLOOP_INCLUDE_AS_API'] = true;
include '<path-to-rainloop-folder>/index.php';

$sParamName = 'MYSQLUSER';
$sConfigSector = 'contacts';
$sConfigName = 'pdo_user';

$oConfig = \RainLoop\Api::Config();
echo \RainLoop\Api::Actions()->setConfigFromParams($oConfig, $sParamName, $sConfigSector, $sConfigName) ? 'Done' : 'Error';

?>

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.