mikaela.github.io/pages/matrix.markdown

135 lines
7.9 KiB
Markdown
Raw Normal View History

---
layout: page
title: '[m]'
navigation: true
permalink: /matrix/
excerpt: "Matrix, a decentralised conversation store"
redirect_from:
- /matrix.html
---
Just like [IRC](/irc/), *Matrix* has became a part of my social life online. My
room can be found from [my discuss page](/discuss) alongside
some protocol comparison and my main accounts are in [index](/).
I also have a [txt with a list of all my accounts](/txt/matrix.txt) which [has SSH signature](/txt/matrix.txt.sig).
2022-08-19 12:16:53 +02:00
## Matrix-related posts
*Note that this section is manually updated and might be missing some
links.*
* Critique
* [Inconsistency issues of Element, Element and Element, also privacy concerns]({% post_url blog/2021-08-03-matrix-perfect-privacy-not %})
* [Without selfhosting a homeserver or even then, Matrix moderation tools rely on security through obscurity]({% post_url blog/2021-12-05-matrix-community-abuse-security-by-obscurity %})
2022-08-19 12:53:25 +02:00
* [A couple of words on protocols (on the Discuss page)](/discuss.html#a-couple-of-words-on-protocols)
2022-08-19 12:16:53 +02:00
## Questions and Answers
### Why so many accounts?
In my opinion it's preferable to have multiple accounts on different homeservers for ensuring decentralisation instead of having a single authority in power and being able to issue commands from multiple servers in case of federation meltdown which multiple rooms experienced during the period of room version 9 before homeserver software started to nag on unintentionally open registration refusing to start.
### Why do you use Matrix URI scheme instead of matrix.to?
I dislike matrix.to as a concept. It's a centralized service on decentralized protocol and in my opinion it shows lack of self-esteem on Matrix side considering neither XMPP or IRC require something like it, both of those trust being known or handled appropiately.
### What are ghost and puppets?
They are related to bringing Matrix to other protocols or vice versa.
* A ghost is a Matrix account on another protocol like IRC or XMPP (controlled from Matrix).
* A puppet is the opposite, a Matrix account controlled from another protocol such as IRC or XMPP (the controller/puppetmaster being the user there).
* A double-puppet is when you are using both protocols and have connected them to each other such as a message from Discord appears as your real Matrix account and message from Matrixx appears as your real Discord account instead of something virtual only existing due to the bridge.
2022-08-19 12:16:53 +02:00
### Which client do you recommend?
The one that fits your needs. Personally I mix-and-match:
* FluffyChat on mobile
* I am a Finnish translator and moderator. It does multiple accounts.
* hydrogen.element.io PWA mainly on mobile, sometimes on desktop
* It's the only Matrix client that is yet to log me out randomly, very stable, multiple account support and so far the only Matrix client running on Nokia 1 (TA-1047).
* develop.element.io / Element flatpak on desktop
* `/devtools` is essential (see my critiques), and they don't support Fedora.
* Nheko nightly flatpak on desktop
* I am a Finnish translator, it's actually the most Spec-complete client in my experience without long delays before something becomes supported and it's lightweight probably for being a native app instead of Electron.
2022-08-19 12:16:53 +02:00
### Which homeserver do you recommend?
I am hesistant to recommend any. Finnish users may be interested in the [Linux.fi wiki listing](https://www.linux.fi/wiki/Matrix), everyone else may be served by [joinmatrix.org listing](https://joinmatrix.org/servers/).
### Why don't you run your own?
As can be read between the lines from my critiques, I don't consider any homeserver to be in the state that it's either safe to run legally or lightweight enough or not require constant maintenance as opposed to IRC which I do selfhost.
The world situation in general discourages me from anything as heavy.
### Why cannot I see history in your Matrix rooms?
Matrix doesn't support self-destructing messages or message expiry in general, so
I don't feel comfortable with world-readable logs (which would easily end to
search engines forever).
If you need to see something in the backlog, I suggest
using IRC (IRC@Etro or PirateIRC especially) or XMPP which each store messages
only for 7 days (Ergo default) or some months (Prosody default) on a single server.
### I am told that I should Matrixify my IRC channel, what does that mean?
You are likely using IRCnet and I am sorry that you have to deal with this raider group. It means some mix of:
* setting a Matrix avatar to the room
* removing the `#` from the name of the Matrix room
* setting a main alias to the Matrix room that doesn't contain the IRC network's name
* bridging to Matrix in a way that Matrix user (that may not be you) has full power over the room, potentially also over the bridge bot
* be careful if you are told to answer a bot `yes` in a `/query`!
### Why should I use Matrix instead of IRC?
No reason, if IRC suits you better than Matrix. As I have said before, I find
maintaining IRC easier. IRC also tends to work better for me in poor network conditions
and with [IRCv3](https://ircv3.net/) specifications and implemented draft proposals,
it can be very pleasant modern experience without the issues that come from federation.
There is a usecase for every tool and while federation is important feature
in general I am yet to miss it in IRC.
I keep mentioning Ergo IRCd, which [scales](https://github.com/ergochat/ergo/blob/master/docs/MANUAL.md#scalability), has serverside history and integrated bouncer
feature so it's just a matter of adding it to your IRC client alongside your
SASL credentials and you will receive your offline messages whenever you
reconnect. Ergo also supports `RELAYMSG` making messages from other protocols
seem more native to read and many graphical IRC clients even provide integrated
image uploading support.
[Pirate Party of Finland](https://piraattipuolue.fi/en) considers Ergo-based [PirateIRC](https://pirateirc.net/)
and [its webchat](https://webchat.pirateirc.net/) a reasonable fallback should we have to leave other protocols
or they would be unusable otherwise.
### Why isn't Pirate Party of Finland using Matrix?
This goes a bit past my personal Q&A, but we are using it kind of as a "tech demo".
However it cannot currently mature past that as:
* we don't have people interested in Matrix (obviously excluding me).
* we don't have resources for hosting a Matrix homeserver, while we had IRC before we were founded.
* moderation tools are so bad it's only me dealing with them (see critiques near top of the page).
* [Matrix flagship clients, Element Web, Element Android and Element iOS don't support knocking](https://github.com/vector-im/element-meta/issues/43)
which has been supported by Matrix Specification since September 2021 or so meaning
users of those aren't able to request access to our rooms.
### So do you wish Matrix to fail?
No, I have been using countless of hours at writing these critiques and performing "quality assurance"/testing,
localizing clients to Finnish, providing support on their rooms for users of those clients, writing a Matrix
Spec Change proposal (that was merged), having coauthored another, writing or contributing documentation in two languages
and whatever else I have been doing since 2016.
Matrix has a place in my heart, just as IRC and XMPP and while none of the three are perfect, I wish for the issues
get resolved and the fighting between them to end and I am tired of the "stop having fun" or "you are worse person for still using deprecated IRC"
or "I wish IRC/XMPP just died already as it's so old" or whatever attitude I see amongst certain Matrix user/enthustiastic groups.
* * * * *
2022-08-19 12:20:30 +02:00
*The lucky Matrix number is `{{site.matrixLatestRoomVersion}}`, but do [consult the Spec for that](https://spec.matrix.org/latest/rooms/#complete-list-of-room-versions) and definitely ask `!servers upgrade {{site.matrixLatestRoomVersion}}` from [Version Checker](matrix:u/version:maunium.net) or [Fluff Generator](matrix:u/+:jae.fi) or [their siblings](https://github.com/maubot/rsvc).*