Search
1000 results for “matr”
-
#Matrix is that chat protocol that provides so many secure ways of verifying devices and sessions, and yet not a single one works with its most popular #Python library (matrix-nio).
Implementing your own encryption routine using a recovery key seems to be the way to go.
And, of course, copying recovery keys around configuration files or environment variables defeats the whole purpose of secure verification. -
-
Posting this in case it helps someone else:
To move your #Matrix account from one instance to another without losing your current chat history do as follows:
0.5) Create a backup phrase
1) Use the Element desktop client with your existing account to in Settings - Encryption - Export your keys.
2) Create your new user account and use the Element desktop app to import the keys you just exported.
3) With your old account, invite the new account to all rooms you're in (including 1on1 chats). Make sure the room setting is correct for "Newly joined users can see history".
4) With your new account, accept all invites.
5) With your old account, set the new account to the same admin level as the old has, then leave all rooms.Done.
-
Posting this in case it helps someone else:
To move your #Matrix account from one instance to another without losing your current chat history do as follows:
0.5) Create a backup phrase
1) Use the Element desktop client with your existing account to in Settings - Encryption - Export your keys.
2) Create your new user account and use the Element desktop app to import the keys you just exported.
3) With your old account, invite the new account to all rooms you're in (including 1on1 chats). Make sure the room setting is correct for "Newly joined users can see history".
4) With your new account, accept all invites.
5) With your old account, set the new account to the same admin level as the old has, then leave all rooms.Done.
-
Posting this in case it helps someone else:
To move your #Matrix account from one instance to another without losing your current chat history do as follows:
0.5) Create a backup phrase
1) Use the Element desktop client with your existing account to in Settings - Encryption - Export your keys.
2) Create your new user account and use the Element desktop app to import the keys you just exported.
3) With your old account, invite the new account to all rooms you're in (including 1on1 chats). Make sure the room setting is correct for "Newly joined users can see history".
4) With your new account, accept all invites.
5) With your old account, set the new account to the same admin level as the old has, then leave all rooms.Done.
-
Posting this in case it helps someone else:
To move your #Matrix account from one instance to another without losing your current chat history do as follows:
0.5) Create a backup phrase
1) Use the Element desktop client with your existing account to in Settings - Encryption - Export your keys.
2) Create your new user account and use the Element desktop app to import the keys you just exported.
3) With your old account, invite the new account to all rooms you're in (including 1on1 chats). Make sure the room setting is correct for "Newly joined users can see history".
4) With your new account, accept all invites.
5) With your old account, set the new account to the same admin level as the old has, then leave all rooms.Done.
-
Posting this in case it helps someone else:
To move your #Matrix account from one instance to another without losing your current chat history do as follows:
0.5) Create a backup phrase
1) Use the Element desktop client with your existing account to in Settings - Encryption - Export your keys.
2) Create your new user account and use the Element desktop app to import the keys you just exported.
3) With your old account, invite the new account to all rooms you're in (including 1on1 chats). Make sure the room setting is correct for "Newly joined users can see history".
4) With your new account, accept all invites.
5) With your old account, set the new account to the same admin level as the old has, then leave all rooms.Done.
-
📰 "Plastics and Composite Materials"
https://arxiv.org/abs/2605.13506 #Physics.Acc-Ph #Mechanical #Matrix -
How to Install and Run #Matrix Synapse #Chat Server on #Debian #VPS This article provides a guide detailing how to install and run Matrix Synapse chat server on Debian VPS. What is Matrix Synapse? Matrix Synapse is ... Continued 👉 #opensource #selfhosting #python #selfhosted #letsencrypt
-
How to Install and Run #Matrix Synapse #Chat Server on #Debian #VPS This article provides a guide detailing how to install and run Matrix Synapse chat server on Debian VPS. What is Matrix Synapse? Matrix Synapse is ... Continued 👉 #opensource #selfhosting #python #selfhosted #letsencrypt
-
-
-
-
-
-
CW: As an administrator of several Matrix servers, every now and then I have to decommission one. You can't just power the server down, throw it away and be done with it, so let me show you how it's done.
As an administrator of several Matrix servers, every now and then I have to decommission one.
You can't just power the server down, throw it away and be done with it (really, you can't!). You'll have to remove all users first, and give those removals some time to propagate over the Matrix universe. After that, you can power the server down and junk it.
A handful of users can be removed manually with, for example, Synapse-Admin. But today I have a server with several thousands of users... I've had problems with Carpal Tunnel Syndrome before, so there's no way I'm going to spend several hours moving my mouse the same directions over and over again for hours.
Prepare
I use the Matrix API and curl (thanks for that, @daniel:// stenberg://) to do this the easy way. Well, some of you may scratch your heads when I call this the easy way... 😏
All the commands I show here, are run on the Matrix server itself. You can run them anywhere, but then you'll have to replace "localhost" for the URL of your server, of course.
First of all, you'll need an access token for an account with admin rights. If you happen to have a session open, you can simply copy it from there. If you don't, here's how to get one.curl -s -X POST http://localhost:8008/_matrix/client/r0/login \
-H "Content-Type: application/json" \
-d '{ \
"type": "m.login.password", \
"user": "@administrator:EXAMPLE.COM" , \
"password": "SECRET ADMIN PASSWORD" \
}' | \
jq '.access_token'
This will give you a string like "syt_YWRtaW5pc3RyYXRvcg_dQCZlHWPsGluyHLYyhnH_2aI2ln", provided you used the right username, password and URL. I'll use "xxxx" for better visibility.
Check the number of users
Let's verify our access by checking how many users we're talking about.curl -s -X GET http://localhost:8008/_synapse/admin/v2/users?limit=1000000&deactivated=true \
-H "Authorization: Bearer xxxx" | \
jq '.users[] | .name' | \
wc -l
The limit of 1 million is sort of necessary: you can't say "every user", but if you don't provide a limit, you'll only get the first 100.
Now that you know how many users there are in your database, let's remove them all.
Remove all users
You may be thinking, "if I remove all users, I also remove my admin account, which could complicate things". Good thinking, I ran into that exact problem, because I did my previous user removals with Synapse-Admin (you know, selecting a handful users, clicking "remove", waiting... rince and repeat) and that wouldn't remove my admin account.
But when you use the API directly, you abandon the guard rails and you can actually hurt yourself. I was lucky enough to find that there was still one other admin account after I had removed mine, so I hijacked that one to finished the job. If yours is (was!) the only active admin account, you have a problem...
With this code we list all users MINUS OUR ADMIN ACCOUNT and pass them to the next command, that actually deletes them:curl -s -X GET http://localhost:8008/_synapse/admin/v2/limit=1000000 \
-H "Authorization: Bearer xxxx" | \
jq '.users[] | .name' | \
sed '/@administrator:EXAMPLE.COM/d' | \
xargs -I % \
curl -s -X POST -H "Authorization: Bearer xxxx" \
-H "Content-Type: application/json" \
-d '{ "erase": true }' \
http://localhost:8008/_synapse/admin/v1/deactivate/% | \
tee removal.log | \
wc -l
This will take a looong time, and that's why I have the command write its output to "removal.log", so you can check what's happening.
Every successful removal prints this result:{"id_server_unbind_result":"success"}
So once no new entries like that are being added to the log file, you're done and should be left with only your admin account(s).
Give it a few days for the rest of the Matrix universe to pick these removals up, say a week, and then you can junk your server.
#Matrix #curl #API -
CW: As an administrator of several Matrix servers, every now and then I have to decommission one. You can't just power the server down, throw it away and be done with it, so let me show you how it's done.
As an administrator of several Matrix servers, every now and then I have to decommission one.
You can't just power the server down, throw it away and be done with it (really, you can't!). You'll have to remove all users first, and give those removals some time to propagate over the Matrix universe. After that, you can power the server down and junk it.
A handful of users can be removed manually with, for example, Synapse-Admin. But today I have a server with several thousands of users... I've had problems with Carpal Tunnel Syndrome before, so there's no way I'm going to spend several hours moving my mouse the same directions over and over again for hours.
Prepare
I use the Matrix API and curl (thanks for that, @daniel:// stenberg://) to do this the easy way. Well, some of you may scratch your heads when I call this the easy way... 😏
All the commands I show here, are run on the Matrix server itself. You can run them anywhere, but then you'll have to replace "localhost" for the URL of your server, of course.
First of all, you'll need an access token for an account with admin rights. If you happen to have a session open, you can simply copy it from there. If you don't, here's how to get one.curl -s -X POST http://localhost:8008/_matrix/client/r0/login \
-H "Content-Type: application/json" \
-d '{ \
"type": "m.login.password", \
"user": "@administrator:EXAMPLE.COM" , \
"password": "SECRET ADMIN PASSWORD" \
}' | \
jq '.access_token'
This will give you a string like "syt_YWRtaW5pc3RyYXRvcg_dQCZlHWPsGluyHLYyhnH_2aI2ln", provided you used the right username, password and URL. I'll use "xxxx" for better visibility.
Check the number of users
Let's verify our access by checking how many users we're talking about.curl -s -X GET http://localhost:8008/_synapse/admin/v2/users?limit=1000000&deactivated=true \
-H "Authorization: Bearer xxxx" | \
jq '.users[] | .name' | \
wc -l
The limit of 1 million is sort of necessary: you can't say "every user", but if you don't provide a limit, you'll only get the first 100.
Now that you know how many users there are in your database, let's remove them all.
Remove all users
You may be thinking, "if I remove all users, I also remove my admin account, which could complicate things". Good thinking, I ran into that exact problem, because I did my previous user removals with Synapse-Admin (you know, selecting a handful users, clicking "remove", waiting... rince and repeat) and that wouldn't remove my admin account.
But when you use the API directly, you abandon the guard rails and you can actually hurt yourself. I was lucky enough to find that there was still one other admin account after I had removed mine, so I hijacked that one to finished the job. If yours is (was!) the only active admin account, you have a problem...
With this code we list all users MINUS OUR ADMIN ACCOUNT and pass them to the next command, that actually deletes them:curl -s -X GET http://localhost:8008/_synapse/admin/v2/limit=1000000 \
-H "Authorization: Bearer xxxx" | \
jq '.users[] | .name' | \
sed '/@administrator:EXAMPLE.COM/d' | \
xargs -I % \
curl -s -X POST -H "Authorization: Bearer xxxx" \
-H "Content-Type: application/json" \
-d '{ "erase": true }' \
http://localhost:8008/_synapse/admin/v1/deactivate/% | \
tee removal.log | \
wc -l
This will take a looong time, and that's why I have the command write its output to "removal.log", so you can check what's happening.
Every successful removal prints this result:{"id_server_unbind_result":"success"}
So once no new entries like that are being added to the log file, you're done and should be left with only your admin account(s).
Give it a few days for the rest of the Matrix universe to pick these removals up, say a week, and then you can junk your server.
#Matrix #curl #API -
CW: As an administrator of several Matrix servers, every now and then I have to decommission one. You can't just power the server down, throw it away and be done with it, so let me show you how it's done.
As an administrator of several Matrix servers, every now and then I have to decommission one.
You can't just power the server down, throw it away and be done with it (really, you can't!). You'll have to remove all users first, and give those removals some time to propagate over the Matrix universe. After that, you can power the server down and junk it.
A handful of users can be removed manually with, for example, Synapse-Admin. But today I have a server with several thousands of users... I've had problems with Carpal Tunnel Syndrome before, so there's no way I'm going to spend several hours moving my mouse the same directions over and over again for hours.
Prepare
I use the Matrix API and curl (thanks for that, @daniel:// stenberg://) to do this the easy way. Well, some of you may scratch your heads when I call this the easy way... 😏
All the commands I show here, are run on the Matrix server itself. You can run them anywhere, but then you'll have to replace "localhost" for the URL of your server, of course.
First of all, you'll need an access token for an account with admin rights. If you happen to have a session open, you can simply copy it from there. If you don't, here's how to get one.curl -s -X POST http://localhost:8008/_matrix/client/r0/login \
-H "Content-Type: application/json" \
-d '{ \
"type": "m.login.password", \
"user": "@administrator:EXAMPLE.COM" , \
"password": "SECRET ADMIN PASSWORD" \
}' | \
jq '.access_token'
This will give you a string like "syt_YWRtaW5pc3RyYXRvcg_dQCZlHWPsGluyHLYyhnH_2aI2ln", provided you used the right username, password and URL. I'll use "xxxx" for better visibility.
Check the number of users
Let's verify our access by checking how many users we're talking about.curl -s -X GET http://localhost:8008/_synapse/admin/v2/users?limit=1000000&deactivated=true \
-H "Authorization: Bearer xxxx" | \
jq '.users[] | .name' | \
wc -l
The limit of 1 million is sort of necessary: you can't say "every user", but if you don't provide a limit, you'll only get the first 100.
Now that you know how many users there are in your database, let's remove them all.
Remove all users
You may be thinking, "if I remove all users, I also remove my admin account, which could complicate things". Good thinking, I ran into that exact problem, because I did my previous user removals with Synapse-Admin (you know, selecting a handful users, clicking "remove", waiting... rince and repeat) and that wouldn't remove my admin account.
But when you use the API directly, you abandon the guard rails and you can actually hurt yourself. I was lucky enough to find that there was still one other admin account after I had removed mine, so I hijacked that one to finished the job. If yours is (was!) the only active admin account, you have a problem...
With this code we list all users MINUS OUR ADMIN ACCOUNT and pass them to the next command, that actually deletes them:curl -s -X GET http://localhost:8008/_synapse/admin/v2/limit=1000000 \
-H "Authorization: Bearer xxxx" | \
jq '.users[] | .name' | \
sed '/@administrator:EXAMPLE.COM/d' | \
xargs -I % \
curl -s -X POST -H "Authorization: Bearer xxxx" \
-H "Content-Type: application/json" \
-d '{ "erase": true }' \
http://localhost:8008/_synapse/admin/v1/deactivate/% | \
tee removal.log | \
wc -l
This will take a looong time, and that's why I have the command write its output to "removal.log", so you can check what's happening.
Every successful removal prints this result:{"id_server_unbind_result":"success"}
So once no new entries like that are being added to the log file, you're done and should be left with only your admin account(s).
Give it a few days for the rest of the Matrix universe to pick these removals up, say a week, and then you can junk your server.
#Matrix #curl #API -
CW: As an administrator of several Matrix servers, every now and then I have to decommission one. You can't just power the server down, throw it away and be done with it, so let me show you how it's done.
As an administrator of several Matrix servers, every now and then I have to decommission one.
You can't just power the server down, throw it away and be done with it (really, you can't!). You'll have to remove all users first, and give those removals some time to propagate over the Matrix universe. After that, you can power the server down and junk it.
A handful of users can be removed manually with, for example, Synapse-Admin. But today I have a server with several thousands of users... I've had problems with Carpal Tunnel Syndrome before, so there's no way I'm going to spend several hours moving my mouse the same directions over and over again for hours.
Prepare
I use the Matrix API and curl (thanks for that, @daniel:// stenberg://) to do this the easy way. Well, some of you may scratch your heads when I call this the easy way... 😏
All the commands I show here, are run on the Matrix server itself. You can run them anywhere, but then you'll have to replace "localhost" for the URL of your server, of course.
First of all, you'll need an access token for an account with admin rights. If you happen to have a session open, you can simply copy it from there. If you don't, here's how to get one.curl -s -X POST http://localhost:8008/_matrix/client/r0/login \
-H "Content-Type: application/json" \
-d '{ \
"type": "m.login.password", \
"user": "@administrator:EXAMPLE.COM" , \
"password": "SECRET ADMIN PASSWORD" \
}' \
| jq '.access_token'
This will give you a string like "syt_YWRtaW5pc3RyYXRvcg_dQCZlHWPsGluyHLYyhnH_2aI2ln", provided you used the right username, password and URL. I'll use "xxxx" for better visibility.
Check the number of users
Let's verify our access by checking how many users we're talking about.curl -s -X GET http://localhost:8008/_synapse/admin/v2/users?limit=1000000&deactivated=true \
-H "Authorization: Bearer xxxx" \
| jq '.users[] | .name' \
| wc -l
The limit of 1 million is sort of necessary: you can't say "every user", but if you don't provide a limit, you'll only get the first 100.
Now that you know how many users there are in your database, let's remove them all.
Remove all users
You may be thinking, "if I remove all users, I also remove my admin account, which could complicate things". Good thinking, but no: Matrix won't remove your admin account. This means you'll have to manually leave all rooms you've joined with that account. The same goes for all other admin accounts. THIS IS IMPORTANT!
We'll now remove all users, by first listing them all and passing the output of that command to the next, which does the actual removing.curl -s -X GET http://localhost:8008/_synapse/admin/v2/limit=1000000 \
-H "Authorization: Bearer xxxx" \
| jq '.users[] | .name' \
| xargs -I % \
curl -s -X POST -H "Authorization: Bearer xxxx" \
-H "Content-Type: application/json" \
-d '{ "erase": true }' \
http://localhost:8008/_synapse/admin/v1/deactivate/% \
| tee removal.log \
| wc -l
This will take a looong time, and that's why I have the command write its output to "removal.log", so you can check what's happening.
Every successful removal prints this result:{"id_server_unbind_result":"success"}
So once no new entries like that are being added to the log file, you're done and should be left with only your admin account(s).
Give it a few days for the rest of the Matrix universe to pick these removals up, say a week, and then you can junk your server.
#Matrix #curl #API -
We noticed you really love the pride 🌈 edition #Matrix stickers - indeed our sticker storage was all out after we helped distribute them at 39C3, FOSDEM, FOSSASIA, IndiaFOSS, COSCUP, and most if not all Matrix Stammtisch meetups happening all over Germany!
So we made sure to top up just in time for Matrix Community Summit 2026, starting next week in Berlin!
PS: we are also excited for you to discover the new design we helped create together with @matrix ! 👀
-
@element My team has been working on this for ages, and we finally got it done!.
Now, you can be invited to an encrypted room and read the history, if the room settings allow it.
Other encrypted messengers can't do this.
If you're interested in the security implications, there are details in the spec proposal: https://github.com/matrix-org/matrix-spec-proposals/pull/4268
-
Matrix Stammtisch Freiburg
🗓️ Start: 21 May, 2026 19:00
⏳ End: 21 May, 2026 23:00
📍 Location: Blauer Fuchs, Metzgerau 4, 79098 Freiburg, GermanyWir treffen uns zum plaudern ueber #matrix und aktuelle Entwicklungen, wie unsere Aktionen im Rahmen des Digitalen Unabhaengigkeitstag https://di.day und verfeinern unser “Wechselrezept” fuer den #diday um von #whatsapp oder #signal zu #matrix zu wechseln. 😉
https://blog.freiburg.social/event/matrix-stammtisch-freiburg-4/
-
Matrix Stammtisch Freiburg
🗓️ Start: 21 May, 2026 19:00
⏳ End: 21 May, 2026 23:00
📍 Location: Blauer Fuchs, Metzgerau 4, 79098 Freiburg, GermanyWir treffen uns zum plaudern ueber #matrix und aktuelle Entwicklungen, wie unsere Aktionen im Rahmen des Digitalen Unabhaengigkeitstag https://di.day und verfeinern unser “Wechselrezept” fuer den #diday um von #whatsapp oder #signal zu #matrix zu wechseln. 😉
https://blog.freiburg.social/event/matrix-stammtisch-freiburg-4/
-
Matrix Stammtisch Freiburg
🗓️ Start: 21 May, 2026 19:00
⏳ End: 21 May, 2026 23:00
📍 Location: Blauer Fuchs, Metzgerau 4, 79098 Freiburg, GermanyWir treffen uns zum plaudern ueber #matrix und aktuelle Entwicklungen, wie unsere Aktionen im Rahmen des Digitalen Unabhaengigkeitstag https://di.day und verfeinern unser “Wechselrezept” fuer den #diday um von #whatsapp oder #signal zu #matrix zu wechseln. 😉
https://blog.freiburg.social/event/matrix-stammtisch-freiburg-4/
-
📰 "Nanostructure of PEGDA-PEG hydrogel membranes and how it controls their permeability"
https://arxiv.org/abs/2605.11719 #Physics.Chem-Ph #Cond-Mat.Soft #Dynamics #Matrix -
Matrix Audio MS-1c : un streamer audio un petit peu plus accessible dans la série High-End "M"
https://www.on-mag.fr/index.php/topaudio/actualites-news/28548-matrix-audio-ms-1c-un-streamer-un-petit-peu-plus-accessible-dans-la-serie-high-end-m
#hifi #audiophile #homecinema -
Am Montag, den 18.05. findet der nächste #matrix Stammtisch beim #cccffm statt.
Schwerpunktthema diesmal: Bridges. Außerdem allgemeine Unterstützung rund um Matrix.
https://ccc-ffm.de/2026/05/mo-18-05-ab-19-uhr-matrix-stammtisch-bridges/
-
Going to post a bunch of photography and writing on my Patreon this week!
As always - free, but pay if you want to & support me.
Love you to sign up either way. -
Self sustainable AI needing a renewable energy source. Wasn't there a movie about that?
#matrix predicted it. -
¿El amor es como una flor que se va deteriorando o es posible hablar del amor eterno e incondicional?
¿Vivimos en #matrix donde el dualismo define nuestra existencia como un sueño de una realidad?
Du Hast
#rammstein
https://www.youtube.com/watch?v=W3q8Od5qJio