turblety 8 hours ago | next |

I really hope this fixed a bunch of encryption and key issues.

We ran Element for our dev team for 6 months and had to give up because frequently a person would just not be able to decrypt a message, warnings would appear but there was no way to solve this. So literally people where missing messages and just having to ask people to post the message again (because there was no way to request the keys be sent). It was a complete disaster and only got worse over the 6 months.

The notifications icon was a mess too. You would frequently see the "unread messages" indicator for a message that was in a thread sub conversation somewhere, even though all the messages had been read. So again people were missing messages.

Despite numerous people begging for threads to be disabled while Element fixed the bug, they refused to put that option in.

In the end, we had to give up and just move to Slack. I really want Element/Matrix to work. I feel like we need it to work, but the lack of support and understanding from the development team would make be warn people to not use this in a professional/day job environment.

That being said, I'll defo be trying it out again personally with the hope they've listened to the community and fix these important bugs.

Arathorn 6 hours ago | root | parent | next |

We have done a huge amount of work on fixing E2EE issues - when running latest matrix-rust-sdk clients (e.g. Element X) and matrix-js-sdk using matrix-rust-sdk-crypto (e.g. Element Web/Desktop), "unable to decrypt" bugs should be unheard of.

So, the point of this blog post is to try to spell out that we've fixed this.

Meanwhile if you see ANY unable to decrypt errors, PLEASE submit debug logs on both the sender & receiver, and we will jump on it aggressively.

In terms of threads: yes, the stuck unread notification bug(s) were a disaster, but also fixed last year. Behind the scenes, 2023 was an absolutely awful year for Matrix & Element along many axes, c.f: https://matrix.org/blog/2023/12/25/the-matrix-holiday-update.... Sorry that you got caught in the disruption.

kalaksi 7 hours ago | root | parent | prev | next |

I have had similar experiences, but not on professional context. Random E2EE key issues (not often) that maybe sometimes resolve themselves or with some additional action like bringing all clients online. Matrix is still the best choice for me, though, and I expect it to improve like it has over the years.

Last time I tried the threads-feature (with Element) maybe a year ago, it was still in beta.

Anyhow, if you're ok with Slack, then you probably could have just not use E2EE at all and avoid issues related to that?

lousken 6 hours ago | root | parent | prev |

i havent seen any encryption issues since about q3 2023, notifications are still a thing tho, they are reliable but setting them up the way you want is still a pain

my experience is based on regular old element clients and my own server and will be moving to x and sliding sync probably at the end of the year

qbonnard 8 hours ago | prev | next |

> Finally, cryptographic warnings are being eliminated. Historically, as end-to-end encryption was rolled out throughout Matrix, not all apps verified the identity of their users, triggering confusing and unactionable warnings to users. We are now shifting towards only letting devices whose ownership has been verified by their owner participate in conversations, killing those warnings - as well as other underlying protocol changes to eliminate warnings.

As the operator of a small instance for family and friends, that's an important topic. The very frequent use case is : "I lost/replaced my phone and didn't save my passphrase". Does that mean that the account would be lost ?

Arathorn 6 hours ago | root | parent | next |

First of all, we're shifting to generating a recovery key (like FileVault or similar) rather than forcing users to pick a recovery passphrase which they promptly get confused with their account password and/or lose.

Secondly, we're making it much less likely to actually need to ever enter a recovery key - with QR login meaning you just scan a QR code to launch your account, complete with all e2ee state (assuming you're already logged in somewhere; same as WA or Discord etc).

In the end, though, if you lose all your devices, you have no choice but have some kind of recovery key to get back in. We could use your account password, but (particularly in an OIDC world) it's then challenging to avoid exposing the account password to your server admin (thus breaking E2EE).

So instead, we're hoping that users will either save their recovery key, or worst case, if they do, they can reset it... but that will inevitably mean they won't be able to access their old messages from backup any more.

jcelerier 7 hours ago | root | parent | prev |

as always, the result of more security without taking into account real-life human behaviour, only leads to less security overall as people will just use services that don't have this behaviour and always allow getting back your account

virtualritz 7 hours ago | prev | next |

We have lift-off but we're not making it past the lower atmosphere ...

Was the Android version flow-tested by anyone at all at element.io?

When I tried registering a new account, it did not accept my handle. I guessed this because the handle text was red.

But why it didn't like it I can't see because the little box with the error message is outside to the right of the screen (I guess there is a box because I see a little arrow on the right and I understand that this just a web view of something not originally designed for mobile/portrait).

Basically, if this was my ma or any of my non-techie friends, they would close the app now without ever registering.

After I login with my existing account and verify the device via my Linux client it asks me to enter a "recovery key or security phrase".

I enter my security phrase, I get a spinner, the spinner disappears, the 'Continue' button is grayed out. Nothing happens.

These are both flows that (a) a new user would see or (b) an existing user would see, immediately when using the app for the first time.

How is it possible they're broken like this?

Arathorn 6 hours ago | root | parent |

The registration flow on matrix.org was a last minute sprint to get something that works there, given we haven't finished the OIDC migration for matrix.org migration. It landed 4 days ago here: https://github.com/element-hq/element-x-android/pull/3467 and while we tried to QA it on a range of devices & OSes I'm not surprised we missed some. The good news is that it can be easily improved serverside given it's "just" a helper webapp which is doing the registration flow.

Sorry you got bitten by this. I'd be very interested if you can compare it with the flow if you specify beta.matrix.org as the homeserver.

Klonoar 7 hours ago | prev | next |

Is there like, any UI/UX plan for the main chat view in Element X? I feel like I've been using it for a year now and every time I see an update available I find myself hoping it's fixed the glaring spacing/padding issues in that particular view.

There's a lot of talk of Element competing with mainstream chat applications, but I don't see how it does that with what feels like an incomplete UI. I also just don't quite get how you ship a chat application in 2024 with issues like this, considering chat UI itself is somewhat of a solved problem. It's like one of those things that just has no reason to be badly laid out.

(Is this just SwiftUI being less than ideal for some types of views...?)

To be clear, I like and use Matrix daily. It's definitely still got rough edges but I appreciate the work they're doing and I think it'll eventually "get there", so I don't want to just be a (total) detractor.

Arathorn 6 hours ago | root | parent | next |

I'm honestly not sure what you're talking about here - the roomlist is pure SwiftUI, and looks almost identical to iMessage or WhatsApp to me. What is the "glaring spacing/padding issues" you're talking about? Similarly on the timeline views...

Can you link to a bug on github.com/element-hq/element-x-ios/issues please?

telgareith 7 hours ago | root | parent | prev |

I'm probably biased by the fact that the first time I got Synapse running it was the release where it'd endlessly try and fail to join a room with more than 10 people.

But, every time I've looked at Matrix Chat it's been a disaster. That it tries, at all, to authenticate every personal(?home?) server as soon as you join #matrix is... Bad, from a lot of perspectives.

Privacy? Just put up your own DNS and find out what new servers are joining.

Security? Easy slowloris type attacks at several layers- DNS, http, etc.

Performance- eagerly enumerating all federated servers before joining a channel places a hard cap on channel and overall network size. And it provides a terrible experience.

The more I look, the less I like what I see. As a potential user, a software dev, and an admin it leaves me with two impressions: sloppy at best, braindead at worst.

schainks 8 hours ago | prev | next |

So this is like slack and signal mashed together?

komali2 7 hours ago | root | parent | prev |

Matrix as a protocol, and synapse / element, the most common backend and client for the protocol (I believe), have existed for quite some time. Our co-op has been using synapse for about a year and a half now and I'm sure the majority of our members use Element as the client. Our managed hosting comes with an Element web deployment as well.

We used it as a drop in replacement for slack including automations etc. The bonus was we got, I can't remember the technical term but mirrors or duplicators for Instagram etc set up, so people can use the element app to message people on Instagram, Whatsapp, etc, if they'd like. I like it because I can message people without Instagram first trying to suck me in with Algo bs.

scirob 8 hours ago | prev | next |

I really hope they can reduce the amount of time it takes to start a "room" / add a person to contacts. Its really a deal breaker only those with strong federation desires will wait for element to load.

Matrix is mostly a victim of the government forks taking up their time in different directions instead of having just one app like signal.

Arathorn 5 hours ago | root | parent | next |

We did improve things massively (like, 5x) with Faster Remote Room Joins: https://github.com/matrix-org/matrix-spec-proposals/pull/390... and https://element-hq.github.io/synapse/latest/development/syna....

We did all the super-hard groundwork to make non-atomic joins possible - but then ran out of time & $ to go further (plus none of the Element paying customers are complaining about it). There's another order of magnitude speedup to be had there, though.

Between this and https://github.com/matrix-org/matrix-spec-proposals/blob/mat... we should be able to fix things unrecognisably, but just haven't got there yet.

> Matrix is mostly a victim of the government forks taking up their time in different directions instead of having just one app like signal.

It's a double-edged sword. On one hand, it generates $ to work on Matrix. On the other hand, it means that if none of the $-payers care about faster remote room joins, they get deprioritised :|

scirob 5 hours ago | root | parent | prev |

omg I want this to work so much. But the first message i send on element x crashes the app. (counter party did not have all devices verified)

yu3zhou4 8 hours ago | prev | next |

A kind suggestion - add links to Apple / Google Store so apps are easier to find and download

qbonnard 8 hours ago | root | parent | prev |

It's also on FDroid :)

SushiHippie 6 hours ago | root | parent |

But the version on F-Droid hasn't been updated since 3 months, and won't work with this new Synapse API endpoint (I just realized this, because it didn't work, after I switched from the proxy to the Synapse API).

kuon 7 hours ago | prev | next |

We tried matrix and element a little while back and it had too many sharp corners. Now we use jabber. It also have some problems but we were able to workaround them.

When we did our tests, messages would get dropped, arrive out of order, be impossible to decrypt, joining a room was slow (sometimes days), mobile notifications would be swallowed by the desktop client left running, webhook were hard...

I don't want to speculate too much as it is just a feeling, but it felt that the protocol itself had unfixable flaws.

kalaksi 7 hours ago | root | parent | next |

Personally, I don't think it's anything unfixable. At least slow joins with large rooms got improvements last year or something. E2EE is nowadays on by default, and I haven't had any decryption issues recently, but E2EE is not mandatory. Notifications have had some changes too, but I can't comment much on that or your other issues.

exabyte 7 hours ago | prev | next |

Does anyone know if this will let you search your messages? This is one of the lacking features I've noticed on the Android version of Element is that you can neither bookmark messages nor search throughout the (encrypted?) chat, making it difficult to find messages you want to refer back to.

You can search on the Desktop app, but not sure why you can't on mobile...

Arathorn 6 hours ago | root | parent |

just not implemented on mobile yet - sorry. it will be much easier to add for Element X though given the e2ee text indexer (Seshat) is already written in rust and does the right thing though.

pndy 7 hours ago | prev | next |

Anyone else was welcomed with this message on the main screen of element x?

> Upgrade available. Your server supports a new, faster protocol. Log out and log back in to upgrade now. Doing this now will help you avoid a forced logout when the old protocol is removed later.

Meanwhile the desktop client upon launching flashes old analytics and UI "tips" notifications that I closed already.

adityaathalyo 8 hours ago | prev | next |

"We have lifted-off Element X, Call and Server Suite are ready." "We had a lift-off for/of Element X, Call and Server Suite are ready."

Proper language.

Bairfhionn 8 hours ago | root | parent |

Or like the actual title of the blog entry?

> We have lift-off! Element X, Call and Server Suite are ready!

Just some url/tag parsing/generation gone wrong.

pid-1 7 hours ago | prev | next |

Why would any enterprise use e2e encryption?

In most juridictions and industries you must be able to audit internal and b2b communication.

Arathorn 5 hours ago | root | parent | next |

so that when someone pwns your chat server, they don't walk off with all your communication history.

If you want audit, you then add it on separately, in a separate locked-down deployment, compartmentalised from the rest of your infra and the chat server, so that an attacker would need to pwn an audit client connected to that instead.

solarkraft 6 hours ago | prev | next |

When made aware of (near show stopper!!!) issues like those mentioned in this thread the typical reaction from an Element dev is “it works fine for me, make a PR or something”, which forgets that most require concerted efforts to solve, which I’d argue is only realistic with management buy-in. This buy-in seems to be happening (you’re trying to popularize a product, aren’t you??), but so slowly that I don’t see Matrix feasibly replacing proprietary services in this decade. Maybe in the next - for all their faults, they are persistent. And maybe even already big enough to stick around, with all the public sector buy-in.

I definitely want an open chat standard to succeed and I suppose the best candidate (among astonishingly few!) is Matrix. There’s just still a loooooong road until I can get my friends/acquaintances on it.

Arathorn 5 hours ago | root | parent |

> the typical reaction from an Element dev is “it works fine for me, make a PR or something”,

This is false. We check issues which people file and try to reproduce them, and we certainly don't ask randoms to contribute PRs to fix stuff - we'd much much rather fix them ourselves.

Meanwhile, you can see the issue stats at github.com/element-hq/element-x-ios/issues and github.com/element-hq/element-x-android/issues - it's not like we're ignoring or failing to close issues.

preya2k 7 hours ago | prev | next |

I think many of these features are fantastic and Matrix 2.0 is a great set of features. However I think Element X is still missing quite a number of features for (my personal) daily use (e.g. spaces, threads and roomlist). Also it's not available for Intel-based Macs, which makes it unusable for many of my team members :(

thewanderer1983 7 hours ago | prev | next |

Not to rain on their parade, but as someone who used element X, gave up because of the bugs. Is currently using XMPP with conversation.im and dino.im. The later seems much more stable, offer OMEMO encryption that worked better. If you want more social media elements there is also movin.eu.

Arathorn 5 hours ago | root | parent |

I for one am shocked and stunned that early Element X builds had bugs. Now that we've finally launched it for general availability, hopefully the situation is better :)

deskamess 7 hours ago | prev | next |

Is ESS an OpenID compatible server, or does it integrate with OpenID backend? Looking for an OpenID provider for a small-medium friends & family group, so was hoping this fits the bill. There is a dearth of information on this aspect of the product line.

Arathorn 5 hours ago | root | parent | next |

hm, i wrote an answer on this but it seems to have vanished.

ESS uses Matrix Authentication Service (https://github.com/element-hq/matrix-authentication-service/) which is a very lightweight Matrix-aware rust OIDC IdP intended for embedding into Matrix homeservers to make them OIDC-capable. It provides the same featureset as pre-OIDC Matrix auth, and then lets you delegate to an upstream IdP (keycloak, authentik, forgerock etc) for a full featureset (2FA, MFA, etc).

SushiHippie 6 hours ago | root | parent | prev |

I don't know about ESS, but for selfhosting I can recommend Zitadel or Authentik, I've used both and currently I'm using Zitadel.

ffo 6 hours ago | root | parent |

Out of curiosity what made you pick Zitadel over Authentik?

Disclaimer: I am the CEO of Zitadel ;-)

SushiHippie 6 hours ago | root | parent |

Regarding my use case, I'm basically the only user (I have multiple accounts, but I'm still the only person using this), I just needed a way to have one login for all my self-hosted services e.g. Nextcloud, Gitea, …

The story is, at first I used Zitadel, after trying out multiple other things like Keycloak or Ory, and then switched to Authentik, because I didn't really like the UI of Zitadel (too "enterprisy" for me, I like it more minimal, and for my setup it felt like I needed to configure too many things.).

But with Authentik I needed to configure like 3 three separate things to create a new "Application", I still don't understand why all these things are required, and if this is really needed to configure all these flows & stages, providers, outposts, ... (don't rememeber all the names, or how they were related to each other). I always just clicked through the UIs and left everything on default settings, which got really annoying after a while.

So I switched back to Zitadel, which has a pretty good UX for just creating a new application. Though it is still very confusing, all these settings which are specific for organizations or user specific, project specific etc., it's very often that I'm screaming "Where are the normal settings?".

I really would prefer to have something, where I don't need to worry about "Organizations" or "Projects", I understand that these are very useful if you use Zitadel "normally" (i.e. in an organization with multiple real people), but for my use-case it just adds too many layers which I don't need. I only need to create new users, and applications, that's it.

ffo 6 hours ago | root | parent |

Thank you so much for the feedback, this really helps, even if you are a "solo" user!

I see what you mean with "enterprisy", that has some truth to it ;-)

We have some ideas to improve this and to reduce the learning curve for that. I guess from many people we could "hide" the whole multi-tenancy part and just given them a single organzitation to start with.

jwrallie 7 hours ago | prev | next |

It seems some localizations are not available yet in the new app (for example Japanese language), and my old messages would not decode (but I solved it using the backup key).

Otherwise looks great, it seems the app loads much faster.

MaxikCZ 8 hours ago | prev | next |

So how exactly do I get ESS running on my TrueNAS? Cant seem to find straight answer on their page.

SushiHippie 8 hours ago | root | parent | next |

Seems like ESS ist their managed solution, which uses Synapse but with an admin UI.

Thats at least how I understand it, because to "get" ESS you need to fill out a contact form.

https://try.element.io/get-started

MaxikCZ 8 hours ago | root | parent |

Ah, so I can get this free opensource decentralized solution if I pay a company to host it for me on their centralized server, got it.

I mean i wouldnt have a problem paying one-time fee of around $100 if that would mean I can get that soft running locally for my groups, but I guess I am not the target potential customer group.

3np 7 hours ago | root | parent | next |

If you want to self-host the actual free open-source software, you can totally do that. You just shouldn't go looking at the product page of the enterprise offering for it (:

It looks like ESS is mostly managed deployment of otherwise opensourced software like Synapse, Element Web, Element Call, and friends. And I guess they have some backoffice with a glossy web UI for account/user management.

https://github.com/spantaleev/matrix-docker-ansible-deploy is a good starting point!

preya2k 7 hours ago | root | parent | prev |

You can also host it yourself, but what ESS offers is a combination of multiple discrete services. You’re gonna have to host Synapse itself, the Matrix Authentication Service (for native OIDC), Element Call (which requires LiveKit) and Element Web.

lpcvoid 8 hours ago | prev | next |

I can't find anything on the page - does this mean Sliding Sync is now part of Synapse proper, without the proxy being needed?

I can't test right now myself, maybe somebody else knows.

preya2k 8 hours ago | root | parent |

Yes, it's included (and enabled by default) since v1.114.0, which came out 3 weeks ago. It's a modified version of Sliding Sync (called Simplified Sliding Sync), but it works just the same. So you can deprecate/shut down existing sliding sync proxies.

saagarjha 8 hours ago | prev | next |

I’m curious why this is a separate app and not an update to the old app?

SushiHippie 8 hours ago | root | parent | next |

They wanted to reduce the duplicate work of maintaining multiple clients for each Platform, and created a rust library which can be used on all platforms.

And for the UI they use Jetpack Compose for the Android App and SwiftUI (I think that's how its called, correct me if I'm wrong) for iOS.

This way only the UI is "duplicate" but the core logic is maintained in the rust library.

EDIT: Okay just found my comment from 300 days ago: https://news.ycombinator.com/item?id=38402710

Aissen 8 hours ago | prev | next |

How does one browse rooms on a server using Element X for Android?

Arathorn 5 hours ago | root | parent |

browsing rooms is deliberately not implemented in Element X yet; it's intended more as an imessage/whatsapp style messenger - plus exposing the matrix.org room directory make appstore review & age-rating etc much more complicated.

Aissen 4 hours ago | root | parent |

FOSDEM is upon us, and finding the right room to follow the chat is going to be much harder with Element X. Ditto for LPC which just ended. It's OK, Element for Android is still here, but I hope you'll have a solution for small servers with a controlled number of room — but that would still need browsing on mobile.

ecmascript 7 hours ago | prev | next |

I use Element X every day. On the phone it's very buggy and doesn't get push notification for the latest messages sometimes.

Arathorn 5 hours ago | root | parent |

what OS, build, and can you please link me to GH issues so i can chase them? We're not aware of any push problems.

jansan 7 hours ago | prev | next |

Everybody seems to know what Element and Matrix are, but I cannot find a concise explanation on the website what they are. Element seems to be some kind of "communications platform", whatever that may be. Can someone please give a brief explanation for us not so cool kids?

preya2k 6 hours ago | root | parent | next |

Matrix: Protocol (like SMTP/IMAP)

Element: The most popular client (like Thunderbird)

Element X: Rewrite of Element based on Rust and native UI components

Synapse: Most popular Matrix server (like Dovecot)

Element Call: Video/Audio conferencing (like Jitsi)

Element Server Suite (ESS): Paid SaaS solution that wraps all of the mentioned components into a simple turnkey solution.

walteweiss 6 hours ago | root | parent | prev |

Element is a client, matrix is a protocol, synapse is a mainline backend server. There are other clients (front-ends) and servers available on top of the matrix protocol. Hope that helps.

komali2 7 hours ago | prev | next |

If element x doesn't have threading on Android yet, and I checked last week, it's not ready compared to the default element app.

My co-op uses matrix as our primary communication method, replacing slack because it was too expensive, and we're very happy with it, but I was always surprised that element x was even on the app store considering how primitive it was compares to Element (the first app).

zgk7iqea 8 hours ago | prev |

The images embedded in the blog post look horribly compressed

aziaziazi 8 hours ago | root | parent | next |

Looks crisp on my iPhone SE 2020, and scrolling does not make it lag - something that happens frequently on HUGE images encounter. Didn’t look at the media queries but I’m happy the default/broken state is the one easily accessible.