Thoughts on XMPP/Jabber?

I want to stop using WhatsApp because I fuckin hate it. Does anyone use XMPP regularly? It allows encryption so I was considering it.

The consideration is whether I will have to self host it or I can use some publicly hosted instances (like how there are open Matrix instances). Also whether it has support for desktop clients that run natively on Loonix without electron.

Please share your thoughts if you have experience. Feel free to suggest other alternatives too. I won’t mind that.

@karoshi
link
143M

I use it for daily communication with my friends and family and think it’s one of the best choices for IM.

There are a lot of public servers, but - as with every non-centralised protocol - choosing the right one might be tricky. This list provides a good starting point imho: https://list.jabber.at/ Also you might want to check, that your choosen server is fully compliant with the current xmpp standards, which can be done at https://compliance.conversations.im/

Last but not least, if you want to have a look at self-hosting, there is this fairly new project called snikket (https://snikket.org/) which aims to make xmpp hosting easier (and also the whole xmpp usage a bit more consistent for “normal” users by rebranding the protocol and it’s apps under a single name), but uses a standard xmpp server in the background.

As for the clients, I use dino (https://dino.im) and gajim (https://gajim.org) on my Linux desktop and Conversations on Android.

@Coder
link
83M

disroot also offers xmpp service.

@ksynwa
creator
link
23M

Do you self host?

poVoq
link
43M

I self-host a Prosody server, which is the project Snikket builds on. You have some specific questions?

@ksynwa
creator
link
13M

Yeah a couple if you don’t mind.

  1. Is it resource intensive for a small number of users? Mainly want to use it with my family members. I have a bottom tier VPS so I am wondering if I need to get a better.
  2. Is it tricky getting it to comply 100% with the standards expected by compliance.conversations.im ?
  3. How much effort does it take to maintain it?
poVoq
link
33M

Have a look at this article which compares some resource use. For small instances Prosody uses even less resources then ejabberd, but ejabberd scales better for larger servers.

poVoq
link
3
edit-2
3M
  1. not at all, a small xmpp server is barely noticeable on server resources. Prosody alone should use less then 50mb RAM in your proposed usage scenario.
  2. Yes, somewhat tricky but 100% compliance is not needed and Snikket really helps with getting it running well. Edit: my server has something like 95% compliance and works fine. There are a few things in the last 5% that are more tricky or undesirable (like open in-band registration).
  3. Depends. There is a official debian/ubuntu repository for Prosody, so basic functionality would just update with everything else on your system. Snikket provides official Docker images, so that is also fairly easy to maintain.
@phthalo
link
23M

I’m also running prosody and can confirm everything you said. Prosody is surprisingly lean and snappy. I remember being concerned about getting prosody to be compliant (after coming from ejabberd, which has everything built-in), but it was very straightforward. I don’t know if that last 5% compliance is worth it for a self-hosted server. I think an invitations-based system works best for in-band registration, but as far as I know that won’t satisfy the requirement of being “open.”

@Helix@feddit.de
link
23M

Is it resource intensive for a small number of users?

No. Prosody is very resource friendly, especially for a small group of users. You can easily run it on a first generation Raspberry Pi.

Is it tricky getting it to comply 100% with the standards expected by compliance.conversations.im?

I think you just have to enable some modules in the config. I’m sure there’s a guide on how to do it somewhere.

How much effort does it take to maintain it?

Less than Matrix-Synapse. You set it up once with all the modules you liked through the package manager of your OS and then you just auto update and forget it. Of course you should do regular backups of the data it stores, but apart from that you should be fine.

I use it regularly. There are some problem with key exchange in group chats. Sometimes users have to write messages to each other via direct message then everything usually works: so if users in group chats do not know each others, that can cause problems:

Concerning clients: Android: conversations Windows/Linux: Gajim Debian and other Linux distros: Dino

Concerning apple I do not know.

There is the promising snikket.org project who have a “product” approach, i.e. they are developing clients with the same look and feel for every client. But unfortunately, they are not there yet. But as far as I know they have funding.

XMPP is easier to selfhost than matrix. And it can run on a Raspi. You can install a xmpp server with e.g. yunohost, to make thinks simpler.

@mekhos
link
63M

I don’t know much about XMPP but when I briefly looked at it there seemed to only be a focus on mobile platform and not much offering on desktop. Can I ask if you have considered Matrix?

@greensand
link
63M

XMPP is an open protocol, meaning that it can be integrated in any app you build around it, which also means that it can only be as good as the app turns out to be. The great strength of XMPP lies in its flexibility, so naturally there is a whole bunch of apps to choose from, also for desktop, like Adium or Pidgin

@MattJ
link
13M

Adium or Pidgin

These are not generally good recommendations for XMPP desktop clients these days. Both have have experienced slow/inactive development in recent years, and don’t support modern XMPP features such as end-to-end encryption and multi-device synchronization. Pidgin is showing interest in catching up again, but I’ve no idea about plans for Adium’s future.

Good clients to recommend these days: Gajim or Dino (both Linux / Windows) or Beagle (MacOS). There are also web clients such as Movim.

@ksynwa
creator
link
53M

I am not opposed to matrix. But the support for encryption in non-electron client seems like it’s not there yet. It seems harder and more resource intensive to self host than xmpp. Plus it has been getting very friendly with corporations lately so it makes me unsure about it’s future. And it has way more features than I want.

If XMPP doesn’t fit the bill for me I am down to use a publicly hosted matrix instance.

@TechieDamien
link
43M

For an e2ee capable matrix client that doesn’t use electron, look at nheko. I have recently switched, and it is fantastic. You will need element temporarily to bootstrap keys, but after that, nheko will be able to do everything for you!

@ksynwa
creator
link
23M

I wasn’t able to retrieve the keys the last time around. Will try it again.

Dessalines
admin
link
23M

Ya try nheko again, key exchange should be working.

@flux
link
23M

The key with Nheko probably is: the latest release is from April. AFAIK they are planning a new release after e2e is “finished”, but I guess final 10% is the toughest one…

In other words, one might need to use the nightly builds to get better experience.

@ksynwa
creator
link
23M

I manually exported and imported the keys and it worked fine after that. So I don’t have to use element anymore.

Dessalines
admin
link
23M

Nice. I think I did do that once a while back too, so maybe key exchange isn’t working properly.

@je_vv
link
3
edit-2
23d

deleted by creator

poVoq
link
1
edit-2
3M

That is a bit ironic, because XMPP has for the most of its 20 years existence been only on desktop, and one of the reasons Matrix was started was to offer better mobile support.

But I agree in so far as that in the last few years the focus has been on mobile support, and these days XMPP is definitely top notch on Android (and soonish also on iOS), while most desktop clients have not been maintained very well. But the upcoming 1.4 release of Gajim looks very promising with its basically Discord like new UI and for Windows UWXP is also very nice.

poVoq
link
43M

We have a XMPP community here by the way: https://lemmy.ml/c/xmpp

@phthalo
link
43M

I would say give it a go. There are good clients for desktop and mobile, and even Siskin on iOS is usable enough that I have onboarded friends and family with it. There are tons of servers to choose from if you don’t want to self host (which is orders of magnitude simpler and less resource intensive than Matrix). XMPP also has some other neat aspects to it, like pubsub and pep, which things like Movim build upon to make a truly decentralized and nomadic social networking platform. I also like that I can use it for sms and sip through jmp.chat :)

Also, since you mentioned encryption, OMEMO encryption on XMPP is way easier to use than Matrix IMHO. The only time it can be tricky is in group chats with a mismatch of clients. But for everyday chatting with family and friends, I never have to think about it and never have to worry about explaining to someone how to sync their keys between clients etc. The main clients people use nowadays handle it really well.

@marmulak
link
23M

XMPP is the best solution I’ve found overall, and I’ve tried everything.

@Helix@feddit.de
link
23M

Why not Matrix?

@ksynwa
creator
link
23M

Have answered this else in this comment section.

@Helix@feddit.de
link
23M

ah right, the comments didn’t seem to sync with my instance properly.

A place to discuss privacy and freedom in the digital world.

Privacy has become a very important issue in modern society, with companies and governments constantly abusing their power, more and more people are waking up to the importance of digital privacy.

In this community everyone is welcome to post links and discuss topics related to privacy.

Some Rules

  • Posting a link to a website containing tracking isn’t great, if contents of the website are behind a paywall maybe copy them into the post
  • Don’t promote proprietary software
  • Try to keep things on topic
  • If you have a question, please try searching for previous discussions, maybe it has already been answered
  • Reposts are fine, but should have at least a couple of weeks in between so that the post can reach a new audience
  • Be nice :)

Related communities

much thanks to @gary_host_laptop for the logo design :)

  • 0 users online
  • 29 users / day
  • 89 users / week
  • 194 users / month
  • 587 users / 6 months
  • 3.9K subscribers
  • 2.04K Posts
  • 9.59K Comments
  • Modlog