Follow

I finally figured out how to add my matrix rooms to the matrix.org server's room dir for greater discoverability. It's not a great workflow, but here's how to do that safely, if you are on a different homeserver:

1. You'll need a matrix.org account, a throwaway one will do it.
2. Join the room you want to add with that account
3. Set the m.room.canonical_alias permission to custom level 10
4. grant your matrix.org user that custom level
1/2

· · Web · 5 · 4 · 2

5. Toggle the switch "Publish this room to the public in matrix.org's room directory?" in the room settings. (you need the permission mentioned above for that)
6. You can reset your matrix.org's power level back to 0
7. You can also leave the room again but note: there need's to be at least one matrix.org user in the room, otherwise the room dir entry will disappear again.

This also works for every other matrix server with a public room dir of course.
I.e. I also added it to the shivering-isles.com server's room directory.

@sheogorath also has an article about matrix room directories in general and how to add other's server room dirs to your client: shivering-isles.com/Using-the-

Why the custom powerlevel stuff?

Granting a user on another homeserver permissions in your room effectively also grants the same permissions to admins of that homeserver.

It's usually documented that you need moderator rights in a room to add that room to your homeservers directory, but synapse only requires the one specific canonicalalias permission, so via the custom PL requirement you can only grant this, and only temporarily.

This protects your even rouge server admins on other servers from interfering with your rooms moderation policy.

In light of the recent thing going on, this seems like a good thing to keep in mind.

@Bubu uhm if that is so complicated, would not make sense for to document that somewhere?

@Bubu some Matrix wiki oder so? I guess there has to be sth.

@rugk For it not to completely get lost in mastodon history, I've very quickly thrown in on here:
git.bubu1.eu/-/snippets/4

This isn't a particularly great place for this, but it's all I have right now. Feel free to reference it or make a proper documentation item out of it for "somewhere".

@Bubu are matrix developers her eon Mastodn to know where tp put this? Ma
ybe they can help… @khaos

@Bubu @khaos @rugk I don't know where the "right" place to put it is, but you can throw the information in a GitHub issue and let someone else try to figure it out. IIRC, you don't *need* the m.room.canonical_alias permission, but we also don't (yet) have a proper reliable way of determining whether you're allowed to publish to publish to the room directory.

@hubert Synapse checks that permission: github.com/matrix-org/synapse/

You can of course just give PL 50 that'll work, but if your threat model involves remote server admins (and I'd argue it always should; hello freenode 👋), that's actually quite dangerous.

Where can I see the mentioned Permission? In Element I only see something like Change Room Name.

@Lioh Right, Element's UI calls this:

> Change main address for the room

I have given the user Mod right for that and afterwards removed the permission again. Thanks for the hint, thoug.

Sign in to participate in the conversation
chaos.social

chaos.social – a Fediverse instance for & by the Chaos community