YunoHost / issues

General issue tracker for the YunoHost project
72 stars 8 forks source link

Be able to deploy /e/ environement #1954

Open zamentur opened 2 years ago

zamentur commented 2 years ago

/e/ is a smartphone OS that offers to selfhost cloud features binded to the smartphone.

Here you can find how to deploy this self-hosting environment. It seems it's essentially, nextcloud (rainloop)+ onlyoffice + postfix.

The goal of this ticket is firstly to evaluate difficulties to transform a YunoHost into a compatible /e/ environment.

Overview of /e/ selfhosting solution

DNS records

Regarding the DNS records, it seems /e/ use a distnct domain for the hostname of the server mail. It's a known issues in yunohost, indeed mxtoolbox warn that the reverse DNS should be a sub domain (FQDN). In /e/ the mail server domain is called mail.domain.tld. However, it could conflicts with default domains used by OVH or others... In more mail.domain.tld offers a web management of postfix thanks to https://postfixadmin.sourceforge.io/.

/e/ use also other domains in order to help mail preconfiguration:

autoconfig.domain.tld
autodiscover.domain.tld

It seems it needs also a domains for spam management , it use "SPAM filter mgmt UI" (using rspamd)

spam.domain.tld

Finally, a welcome domain is used to allow new users to create an account thanks to a invitation link mechanism:

welcome.domain.tld

Link are in this format: https://welcome.$DOMAIN/?authmail=$ENCODED_EMAIL&authsecret=$AUTH_SECRET but i don't think it's really important to be compatible cause the account is created before to bind the smartphone with...

RECORD HOST VALUE Priority
A mail.yourdomain.com -
A yourdomain.com -
MX yourdomain.com mail.yourdomain.com 10
PTR(For reverse DNS) mail.yourdomain.com -
CNAME autoconfig.yourdomain.com mail.yourdomain.com -
CNAME autodiscover.yourdomain.com mail.yourdomain.com -
CNAME spam.yourdomain.com mail.yourdomain.com -
CNAME welcome.yourdomain.com mail.yourdomain.com -

HTTP2 disable

/e/ indicates they disable http2 cause nextcloud have poor performances with it. https://github.com/nextcloud/documentation/issues/9578

Family/company used case vs public instances

They use a tags `selfhost-privacy to distinguish this 2 uses cases

Port

It seems only 25 port is required, but i am not totally sure: https://gitlab.e.foundation/e/infra/ecloud-selfhosting/-/blob/master/templates Maybe sieve or pop3 should be activated on firewall.

Nextcloud apps

Here is a list of all nextcloud apps activated : calendar, notes, user_backend_sql_raw, rainloop, quota_warning, contacts, news, email-recovery, ecloud_drop_account, ecloud-theme-helper, ecloud-launcher, firstrunwizard, tasks, drop_account

Some of thoses nextcloud apps seems not relevant (cause things are managed in an other way in yunohost):user_backend_sql_raw, ecloud_drop_account, email-recovery, ecloud-theme-helper

I don't know if ecloud-launcher could be needed.

This params are configured in nextcloud:

occ config:app:set rainloop rainloop-autologin --value 1
occ config:system:set integrity.check.disabled --value='true' --type=boolean

What should we do to get a ynh compatible with /e/

I think those actions should be enough to get an ynh instances compatible with /e/:

And it seems to be enough...

Gredin67 commented 2 years ago

Little update on the case. I have re-setup my personal yunohost nextcloud on my /e/OS fairphone. Here is what I get synced without tuning :

Here are the Android user folders that do NOT get synced:

Finally, a special Nextcloud file contains the list of Android apps installed on the fairphone: