matrix.org (communication)
-
First of all, thanks to everyone who has been working on the matrix app. I'm very happy to be able to run it on cloudron!
I have two questions/points that I would like to discuss and hope this is the right place:-
Setting up the root-domain for federation use.
When installing matrix synapse it is necessary (at least for me) to set the root domain (example.com) as a redirect URL for matrix.example.com to make federation work. As far as I know only port 8448 is needed on the root-domain to make federation work. Using my workaround I am not able to use another app with the root domain (e.g. a website or any other service). Is there any way to avoid this? -
Making a user an administrator.
Referring to the documentation (https://github.com/matrix-org/synapse/wiki) one command needs to be executed to make a user an admin - it manipulates the data in the postgresdb:
UPDATE users SET admin = 1 WHERE name = '@foo:bar.com'
What is the recommended way to perform this on Cloudron?
Thanks a lot in advance.
Stay healthy everyone! -
-
@stantropics What can an admin do? Does he get some special controls in Riot? I couldn't figure out how to test it, so I left that part out.
-
@msbt The RIOT First Time Documentation notes that you need to tweak the Matrix Synapse home server. I found that the install uses the domain you give it but assumes 'matrix' is the subdomain. My subdomain was different and I had to tweak both the Matrix Synapse config and the RIOT config and then I restarted both, Then it worked. Check out the little drop-down tab "Documentation" and the First Time Setup, and follow the links there. I hope the issue is this simple.
First Time Setup
This app is only the frontend for Matrix. If you haven't done so already you should install the Matrix Synapse home server in a subdomain like matrix.yourdomain.com.This app is pre-configured to use the matrix installation at matrix.yourdomain.com. If you installed Synapse at another location, use the Web Terminal to edit /app/data/config.json to set the home server.
-
I just announced this - https://forum.cloudron.io/topic/2336/matrix-riot . Can you guys give it a quick read and tell what to improve there?
-
@girish Do you want the comments here? All I can say is that this section:
Riot is pre-configured to use matrix subdomain as the homeserver location.
ought to be more evident. Like at the start of a paragraph. It's the sort of essential info that real coders like yourself just know but tinkerers like me don't.
Another line that could use some clarifying is:
SSH into the server and add the record like this
My own impression from using Cloudron is that there is no need to ssh into the server and that using the built-in Terminal is the place to get things done if needed. I followed it literally, but I also think someone could read it and think "they must mean through the Console of the app...but which one, the Matrix server or the RIOT app?" and proceed to get confused because they can't navigate to
/home/yellowtent/boxdata/well-known/
.
Finally, in Step 3, after the line:If you installed synapse at matrix.example.com, the client should be already able to connect
maybe you could add something like "check Step 1" as a reminder because someone will prob skip it and then get here wondering what's going on.
Finally, thank you again.
-
@scooke Thanks for the feedback, will fix up the docs.
The SSH is a bit rough agreed We will add a UI for .well-known records in the coming releases. For now, we wanted the apps out, so we can get some testing in parallel.
-
@msbt do you also have to set a redirect record for example.com to make it work? Or is it just me?
-
@stantropics You don't need to setup redirects. Is the website
example.com
an app on Cloudron (or is it external to Cloudron) ? If it's the former, you just have to setup that .well-known record. -
@stantropics I had a surfer app at example.com and curl'ing the well-known url gave me a 404. After a bit of reconfiguring it worked, not sure if that's your setup as well, but maybe try reconfiguring the example.com app and see if that solves your issue (if that's what you're asking)
-
@msbt @girish I am not using the root-domain (example.com) at all currently. But matrix seems to not work if I don't set it up as a redirect for matrix.example.com.
-
Can you post your setup here with example domain names of where you installed what - https://forum.cloudron.io/topic/2336/matrix-riot ? I can help out there.
I will lock this thread, since 2 open posts for the same topic is confusing!
-
@stantropics In the terminal you should be able run the psql command to update a user to admin.
To get the password type:
echo $CLOUDRON_POSTGRESQL_PASSWORDpsql --host=$CLOUDRON_POSTGRESQL_HOST port=$CLOUDRON_POSTGRESQL_PORT $CLOUDRON_POSTGRESQL_DATABASE $CLOUDRON_POSTGRESQL_USERNAME
[right-click-Copy and ctrl-v paste in the password]
UPDATE users SET admin = 1 WHERE name = '@foo:bar.com';
BUT: I am getting: psql: FATAL: password authentication failed for user ...
Can anyone see what I am doing wrong? @girish ?
-
@jimscarver In the Terminal, there is a Postgres button on the top. Just clicking it will paste the command to connect to postgres. Just paste enter after that.
(That aside, I think the mistake in your cli is possibly that the database name is not set)