YunoHost / issues

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

Feature request: Documentation on configuring Metronome (XMPP server) #2323

Open cgKAF opened 5 months ago

cgKAF commented 5 months ago

Currently, Yunohost's website lists two pages describing Metronome as its built-in XMPP server, but they focus mostly on the client apps that can be used with it and give no information on how to modify or configure it to suit different use cases.

Although there are websites and repositories for both Metronome (here, here) and Prosody (here, here), from which Metronome was forked, these may not be very friendly to tech laypeople (Metronome's docs especially) and it doesn't help them understand how -- or whether -- Yunohost's flavour of Metronome is different from these "stock" versions.

The Yunohost forum has a category for XMPP questions, but they are mostly unanswered or unresolved. Having documentation that describes how Metronome's config files interact, what the modules are, how to edit them, etc., would help fill what I believe is a gap in what Yunohost provides.

OniriCorpe commented 5 months ago

the yunohost bookworm version (for now in alpha) removes the XMPP server, so i think it's not relevant anymore to document how to configure it in our docs :/

alexAubin commented 5 months ago

(NB: strickly speaking it does not "remove" it, it just doesn't install it by default anymore, but ultimately the plan is to turn metronome into an app i guess)

Letterus commented 4 months ago

Upstream Metronome has at least one serious XEP missing regarding OMEMO implementation: https://github.com/maranda/metronome/issues/549

Looking at the commit history current involvement of the developer seems to be rare: https://github.com/maranda/metronome/commits/master/

As a general idea of strategy it seems advisable to switch to Prosody: https://fosstodon.org/@Monal/111864669247370703

Yunohost's downstream Metronome implementation has some issues regarding resolving DNS setup correctly and setting up certificates:

To me it looks as a great idea to move the current setup and integration (LDAP integration especially) to the Prosody app and move support and certificate generation to that one and provide an advanced user experience that way: https://github.com/YunoHost-Apps/prosody_ynh

(While I like the Matrix protocol as well, I don't think one should make that default, because it's quite heavy on resources and may easily kill a home server with light hardware.)

Edit: Redacted due to request and clarification of the developer, see comments below.

Letterus commented 4 months ago

Pinging @yalh76, @alexAubin, @Gildas-GH, @ericgaspar who seem to be creating the Prosody app.

anubister commented 4 months ago

@cgKAF I added some points in the documentation https://github.com/YunoHost/doc/pull/2392 ; anyone can improve, feel free to add the missing points or at least list them ;)

If you need support specifically on Metronome and experimentation on Prosody, you can join yunohost-xmpp@muc.chapril.org

Letterus commented 4 months ago

@cgKAF I added some points in the documentation YunoHost/doc#2392 ; anyone can improve, feel free to add the missing points or at least list them ;)

If you need support specifically on Metronome and experimentation on Prosody, you can join yunohost-xmpp@muc.chapril.org

Great stuff, thanks!

alexAubin commented 4 months ago

Pinging @yalh76, @alexAubin, @Gildas-GH, @ericgaspar who seem to be creating the Prosody app.

Could you please stop pinging random people ... We already have notifications, we don't need an additional finger pointing :expressionless:

Letterus commented 4 months ago

Pinging @yalh76, @alexAubin, @Gildas-GH, @ericgaspar who seem to be creating the Prosody app.

Could you please stop pinging random people ... We already have notifications, we don't need an additional finger pointing 😑

Of course, sorry, did not know. Wanted to let people know who worked on that repo. It's not that all projects are communicating that well.

maranda commented 4 months ago

Good day, Firstly @Letterus I'd ask you kindly to refrain to make any public assumption on my activities, expecially if they're wrong or at the very least "to ask before". There's no strategical switch whatsoever.

Second on #549 all required features for OMEMO are supported all that at most was missing was the auto-subscribe feature on PEP account disco#info (corrected in https://github.com/maranda/metronome/commit/ede64f9b7064ce2a80926161588f694dc426dfd0), if Monal expects the #subscribe feature along #publish it's a mistaken implementation within Monal, because PEP services may and usually have a simplified subset of the protocol supporting only presence subscription and auto creation (and therefore create on publish).

maranda commented 4 months ago

Otherwise I fully agree on the fact that there should be no imposition on the XMPP server, and that both Metronome and Prosody should at the most be offered as apps.

Letterus commented 4 months ago

@maranda Thank you for your reply and clarification. I think I'm free to draw conclusions from publicly available data as I like to. But since you're actively taking part in this discussion and further development it's easy to prove me wrong and I'm quite happy about that. Keep up the good work!

I'm still wondering what path the yunohost project is going to take though. Metronome is integrated quite well, but its integration showed some serious drawbacks having missings bits and pieces as outlined above.

For us as users it would be beneficial if there were two well supported server solutions to choose from, but it would not if both were done only half well. So far, thank you for your commitment.

maranda commented 4 months ago

@maranda Thank you for your reply and clarification. I think I'm free to draw conclusions from publicly available data as I like to. But since you're actively taking part in this discussion and further development it's easy to prove me wrong and I'm quite happy about that. Keep up the good work!

I'm still wondering what path the yunohost project is going to take though. Metronome is integrated quite well, but its integration showed some serious drawbacks having missings bits and pieces as outlined above.

For us as users it would be beneficial if there were two well supported server solutions to choose from, but it were not if both were done only half well. So far, thank you for your commitment.

You're free as long as you don't publicly post such conclusions, expecially when they're blatantly incorrect and not backed anywhere from the cited references, which are ultimately my sites even. I inform you that at least in my country that befalls under "slander", and last I checked it's against law. So I again courteously invite you, and for the last time, to refrain to do so.

As for the "path of the project", the tight integration of Metronome in YuNoHost is a legacy that is good to go. Often the version of Metronome running on YuNo is old and not matching upstream, and I have to deal with complaints where I often have to answer "X was already fixed in X/version X" so I more than agree that an app is probably more desiderable and probably easier to upgrade and mantain. Also running a service, expecially for a niche protocol such as XMPP, shouldn't be imposed by a distro.