Why does Yunohost depend on an XMPP server?

First I would like to thank the Yunohost devs and application packagers for the great work! I have been a very happy user of Yunohost for several years and I don’t hesitate to recommend yunohost to my friends when they want to try self hosting.

I have a small technical question about the special status of built-in app for the Metronome XMPP server and I did not find the answer in the doc (I expected to find the answer either in “overview” or in “XMPP”). What are the advantages of having the XMPP server as a built-in app instead of a regular app? I can at least see the following drawbacks for users not interested in hosting Metronome:

  • it takes ressources,
  • it widens the attack surface,
  • it forbids to install another XMPP server (at least apt install prosody removes the metronome and yunohost packages).
2 Likes

Yes indeed … I think it’s mostly historical and possibly meant to encourage the adoption of XMPP (though personally I’m not the biggest fan but anyway)

In fact, same thing could be said about both PHP and Mysql which are only required if you install apps that require them. Again, that’s pretty much historical.

Personally I would be in favor of making it all optional and “only install it when it’s only effectively needed”. On the other hand, it’s a significant work to change this as there are many places (like app scripts, but not only) assuming PHP and Mysql (or Metronome) are installed. Metronome would probably be the easiest to turn into an optional thing, but yea… :confused:

But if you’re motivated about this, could make a nice contribution to the project…

3 Likes

You can stop service permanently. I tried the Fail2ban rules for the Metronome, but unfortunately it did not worked.

1 Like

Thank you for the answer!

it’s a significant work to change this […] if you’re motivated about this, could make a nice contribution to the project

I can try but don’t expect to see this very soon because I don’t have a lot of free time and I don’t know the codebase. I have opened the issue 1574 on Github to track this.

1 Like

Thanks, good to know that stopping Metronome does not break anything.

What should be the command line ?

I did :

sudo systemctl stop metronome
sudo systemctl disable metronome

Is that enough ?

Yes

1 Like