Difference between revisions of "Matrix"

Jump to: navigation, search
(Development)
(update info about the "registration checkboxes")
 
(44 intermediate revisions by 13 users not shown)
Line 1: Line 1:
[https://www.matrix.org Matrix] is an open standard for interoperable, decentralised, real-time communications. KDE is officially using Matrix for collaboration for KDE, superseding more antiquated and closed source services.  Matrix is an open protocol and network for decentralized communication, backed by an open standard and open source reference implementations for servers, clients, client SDKs, bridges, bots and more.  It provides all the features you’d expect from a modern chat system: infinite scrollback, file transfer, typing notifications, read receipts, presence, search, push notifications, stickers, VoIP calling and conferencing, etc.  It even provides end-to-end encryption (based on Signal’s double ratchet algorithm) for when you want some privacy.
+
[https://www.matrix.org Matrix] is an open standard for interoperable, decentralised, real-time communications. KDE is officially using Matrix for collaboration within the community, superseding more antiquated and closed source services.  Matrix is an open protocol and network for decentralized communication, backed by an open standard and open source reference implementations for servers, clients, client SDKs, bridges, bots and more.  It provides all the features you would expect from a modern chat system: infinite scrollback, file transfer, typing notifications, read receipts, presence, search, push notifications, stickers, VoIP calling and conferencing, etc.  It even provides end-to-end encryption (based on Signal’s double ratchet algorithm) for when you want some privacy.
  
 
Furthermore, Matrix natively supports bridges to other protocols, such as IRC (the official KDE messaging channel). This means that you can use a Matrix client to join and use IRC channels like if they were Matrix rooms.  
 
Furthermore, Matrix natively supports bridges to other protocols, such as IRC (the official KDE messaging channel). This means that you can use a Matrix client to join and use IRC channels like if they were Matrix rooms.  
Line 9: Line 9:
  
 
==== On the web ====
 
==== On the web ====
 +
'''THIS IS THE RECOMMENDED WAY OF REGISTERING YOUR ACCOUNT.'''
 +
 +
Even if you plan on using a desktop or mobile client later, [https://webchat.kde.org/#/welcome register through the web chat] since it uses all the correct defaults to get a :kde.org account.
 +
 
# Visit [https://webchat.kde.org KDE's online webchat]
 
# Visit [https://webchat.kde.org KDE's online webchat]
 
# Locate the ''Create Account'' button. Press it. <br /> [[File:Riot upload 00.png|300px|center]]
 
# Locate the ''Create Account'' button. Press it. <br /> [[File:Riot upload 00.png|300px|center]]
# Choose a cool nickname and set your password. You can include an email if you ever need to recover your password, but this is optional. Click ''Register''. <br />[[File:Kde-register.png|300px|center]]
+
# Choose a cool nickname and set your password. You can include an email if you ever need to recover your password, but this is optional. Click ''Register''. <br />[[File:Kde-register.png|300px|center]]<br />Note: the dialog now includes a checkbox for agreement with the Privacy Policy and Terms and Conditions.
<br>
+
<br />
 +
 
 
That's it! You can start chatting with members of KDE's community.
 
That's it! You can start chatting with members of KDE's community.
  
 
==== Using the Riot desktop client ====
 
==== Using the Riot desktop client ====
  
Download the desktop client [https://riot.im/desktop.html from Riot's website]. APT repositories with Debian/Ubuntu packages are provided. Your mileage may vary for other distributions, but just bear in mind the latest stable version at the moment of writing is 1.0. That or higher is the version you should aim for.
+
Download the desktop client [https://riot.im/desktop.html from Riot's website]. APT repositories with Debian/Ubuntu packages are provided. Your mileage may vary for other distributions. The latest stable version number is listed on [https://github.com/vector-im/riot-web/releases/latest Riot's GitHub releases page] and is the version number you should aim for.
  
 
Registration is the same process as the steps above. Make sure you select Premium hosting and input https://kde.modular.im as the Server Name if you would like a Matrix account on KDE's Modular homeserver.
 
Registration is the same process as the steps above. Make sure you select Premium hosting and input https://kde.modular.im as the Server Name if you would like a Matrix account on KDE's Modular homeserver.
Line 24: Line 29:
  
 
==== Using the Riot client for mobile ====
 
==== Using the Riot client for mobile ====
 +
 +
''Currently Riot only supports having one account''
 +
 +
In Signin/Register select the ''Use custom server options (Advanced)'' option to set the following
 +
 +
* Home server: https://kde.modular.im
 +
* Identity server: https://vector.im
 +
 +
[[File:Screenshot Riot.im kde settings.png|300px|center]]
  
 
===== Android =====
 
===== Android =====
Line 29: Line 43:
  
 
===== iOS =====
 
===== iOS =====
 
 
There is also [https://itunes.apple.com/us/app/vector.im/id1083446067 a client for iOS available from Apple's App Store].
 
There is also [https://itunes.apple.com/us/app/vector.im/id1083446067 a client for iOS available from Apple's App Store].
  
Line 36: Line 49:
  
 
== Rooms ==
 
== Rooms ==
 
 
Check back often as we will be adding new rooms as we go.
 
Check back often as we will be adding new rooms as we go.
  
 
=== Welcome ===
 
=== Welcome ===
 
+
New to KDE? [https://webchat.kde.org/#/room/#kde-welcome:kde.org Start here and find out what this is all about].
New to KDE? [https://matrix.to/#/!ERFBNVZvcdoxKyMBSE:matrix.org?via=matrix.org&via=kde.org Start here and find out what this is all about].
 
  
 
=== General KDE channel ===
 
=== General KDE channel ===
 +
Share your experience with [https://webchat.kde.org/#/room/#kde:kde.org the KDE community].
  
Share your experience with [https://matrix.to/#/!PGuwyGAFhXYPtXuCKu:matrix.org?via=matrix.org the KDE community].
+
=== Plasma ===
 +
* Plasma Desktop: [https://webchat.kde.org/#/room/#plasma:kde.org Find out more about KDE's desktop environment here].
 +
* Plasma Mobile: [https://webchat.kde.org/#/room/#plasmamobile:kde.org Plasma Mobile developers, users and other interested people]
 +
** Kirigami: [https://webchat.kde.org/#/room/#kirigami:kde.org #kirigami:kde.org] – For developers that want to use our mobile-friendly toolkit in their applications and for (potential) contributors to Kirigami itself.
  
=== Development ===
+
=== Distribution-centered KDE rooms ===
 +
* [https://webchat.kde.org/#/room/#fedora-kde:kde.org Fedora KDE user and developer room]
 +
* [https://webchat.kde.org/#/room/#kde-neon:kde.org KDE neon user support channel]
 +
* [https://webchat.kde.org/#/room/#opensuse-kde:kde.org openSUSE KDE user and developer room]
  
[https://matrix.to/#/!jDLOUpjYLfQYvmOufZ:matrix.org?via=matrix.org KDE developers discuss technical stuff here].
+
=== For (potential) contributors ===
 +
* Development: [https://webchat.kde.org/#/room/#kde-devel:kde.org KDE developers discuss technical stuff here].
 +
* VDG: [https://webchat.kde.org/#/room/#kde-vdg:kde.org Visual designers and Graphic artists discuss the look and feel of KDE software here].
 +
* Promo: [https://webchat.kde.org/#/room/#kde-promo:kde.org The people from the work group that does promotion and communication with the outside world hang out  here].
 +
* KDE Multimedia: [https://webchat.kde.org/#/room/#kde-multimedia:kde.org KDE Multimedia developers]
  
=== VDG ===
+
=== Applications ===
 +
Here is a list of individual applications that have their own Matrix rooms:
  
Visual designers and Graphic artists discuss the look and feel of KDE software here.
+
* Kdenlive: [https://webchat.kde.org/#/room/#kdenlive:kde.org The room where we discuss KDE's professional video editor].
 +
* KDE Partition Manager: [https://webchat.kde.org/#/room/#partitionmanager:kde.org KDE Partition Manager and KPMcore].
  
=== Promo ===
+
==== Local communities ====
 +
* [https://webchat.kde.org/#/room/#kde_ru:kde.org KDE Russia]
  
The people from the work group that does promotion and communication with the outside world hang out [https://matrix.to/#/!OoKhjuWNfhqSUbncIz:matrix.org?via=matrix.org&via=kde.org&via=tchncs.de here].
+
== How to Add Your Existing IRC Channel as Room ==
  
=== Plasma ===
+
{{Note|1=This only needs to be done '''once''' by an IRC operator. After that all users may use the more convenient local room name to join.}}
 
 
Find out more about KDE's desktop environment here.
 
 
 
===  Plasma Mobile ===
 
 
 
Creators of Plasma for mobile devices hang out here.
 
  
=== Support ===
+
* /join  #_freenode_#YOUR_CHANNEL:kde.org
 +
* On the IRC side you need to OP your matrix user, so either use a temporary nick on Matrix, or add multiple nicks to your IRC identity and use a different one on Matrix and IRC, or have a fellow OP give you OP privileges
 +
* Setup a local alias for kde.org via the matrix room settings
 +
* Leave room again
 +
* Join via local alias e.g. /join #YOUR_CHANNEL
 +
* Everyone can now join your room via the #YOUR_CHANNEL locally and #YOUR_CHANNEL:kde.org in the Matrix
  
If you have a question, come and ask here.
+
Where you can setup the alias depends on the client you use. For webchat.kde.org it'll look a bit like this:
 
 
=== Applications ===
 
  
Here is a list of individual applications that have their own Matrix rooms:
+
[[File:Riot-room-alias-1.png|300px|center]]
 +
[[File:Riot-room-alias-2.png|300px|center]]
  
==== Kdenlive ====
+
You may additionally want to mark the room as published in the directory (so one can search for it) and set the KDE flair +kde:kde.org (so a fancy KDE flair will get shown; currently not set up). Both settings on webchat.kde.org are immediately after the room settings where you created the local room alias.
  
The official matrix room is at: [https://matrix.to/#/#kdenlive:matrix.org #kdenlive:matrix.org]
+
[[File:Riot-room-flairs.png|300px|center]]
  
 
== Why should I use the Matrix IRC bridge? ==
 
== Why should I use the Matrix IRC bridge? ==
  
Your IRC nickname will be available 24h and other people will be able to ping or contact you even if you are away from your computer. This can also be achieved by using an IRC bouncer, but Matrix has several advantages:
+
Your IRC nickname will be available 24/7 and other people will be able to ping or contact you even if you are away from your computer. This can also be achieved by using an IRC bouncer, but Matrix has several advantages:
  
 
* Matrix provides unlimited chat history, an IRC bouncer doesn't.
 
* Matrix provides unlimited chat history, an IRC bouncer doesn't.
Line 103: Line 126:
  
 
<pre>
 
<pre>
#freenode_<irc_channel_name>:matrix.org
+
#_freenode_#<irc_channel_name>:kde.org
 
</pre>
 
</pre>
  
Line 109: Line 132:
  
 
<pre>
 
<pre>
/join #freenode_#kde-devel:matrix.org
+
/join #_freenode_#kde-devel:kde.org
 
</pre>
 
</pre>
  
 
== How do I change my IRC nickname? ==
 
== How do I change my IRC nickname? ==
  
By default, the IRC bridge will use your matrix display name to generate an IRC nickname (ending with <tt>[m]</tt>). If you don't like the default nickname, you can change it by sending the following command to the <code>@appservice-irc:matrix.org</code> bot (you will need first to start a private conversation with the bot):
+
By default, the IRC bridge will use your matrix display name to generate an IRC nickname (ending with <tt>-M</tt>). If you don't like the default nickname, you can change it by sending the following command to the <code>@freenode-irc:kde.org</code> bot (you will need first to start a private conversation with the bot):
  
 
<pre>
 
<pre>
 
!nick <your_favorite_irc_nickname>
 
!nick <your_favorite_irc_nickname>
 +
</pre>
 +
 +
== How do I join an IRC channel that requires registered nicknames? ==
 +
Start by opening a direct chat with NickServ. For freenode, that's <code>@_freenode_NickServ:kde.org</code>. Then send it a message of format:
 +
<pre>identify [<nickname>] <password></pre>
 +
— where nickname is optional assuming you are identifying for your current nickname.
 +
 +
To make the bridge store your credentials and log in automatically, in direct chat with the <code>@freenode-irc:kde.org</code> you can use the <tt>!storepass <string></tt> command to save a string that is sent in PASS command when your IRC-presence connects.
 +
 +
With freenode you can use:
 +
<pre>
 +
!storepass nickname:password
 
</pre>
 
</pre>
  
 
== How do I change my away status? ==  
 
== How do I change my away status? ==  
  
The <code>@appservice-irc:matrix.org</code> bot accepts raw IRC commands. To set the away status use:
+
The <code>@freenode-irc:kde.org</code> bot accepts raw IRC commands. To set the away status use:
  
 
<pre>
 
<pre>
Line 142: Line 177:
 
== Other questions? ==  
 
== Other questions? ==  
  
Check out the FAQ maintained upstream: https://github.com/matrix-org/matrix-appservice-irc/wiki/End-user-FAQ
+
[https://github.com/matrix-org/matrix-appservice-irc/wiki/End-user-FAQ Check out the FAQ maintained upstream].

Latest revision as of 11:13, 9 July 2019

Matrix is an open standard for interoperable, decentralised, real-time communications. KDE is officially using Matrix for collaboration within the community, superseding more antiquated and closed source services. Matrix is an open protocol and network for decentralized communication, backed by an open standard and open source reference implementations for servers, clients, client SDKs, bridges, bots and more. It provides all the features you would expect from a modern chat system: infinite scrollback, file transfer, typing notifications, read receipts, presence, search, push notifications, stickers, VoIP calling and conferencing, etc. It even provides end-to-end encryption (based on Signal’s double ratchet algorithm) for when you want some privacy.

Furthermore, Matrix natively supports bridges to other protocols, such as IRC (the official KDE messaging channel). This means that you can use a Matrix client to join and use IRC channels like if they were Matrix rooms.

Clients

You can chat using your web browser and visiting KDE's webchat or you can use a desktop or mobile client. Here is a list of clients for your desktop or mobile devices.

Registering and Logging in

On the web

THIS IS THE RECOMMENDED WAY OF REGISTERING YOUR ACCOUNT.

Even if you plan on using a desktop or mobile client later, register through the web chat since it uses all the correct defaults to get a :kde.org account.

  1. Visit KDE's online webchat
  2. Locate the Create Account button. Press it.
    Riot upload 00.png
  3. Choose a cool nickname and set your password. You can include an email if you ever need to recover your password, but this is optional. Click Register.
    Kde-register.png

    Note: the dialog now includes a checkbox for agreement with the Privacy Policy and Terms and Conditions.


That's it! You can start chatting with members of KDE's community.

Using the Riot desktop client

Download the desktop client from Riot's website. APT repositories with Debian/Ubuntu packages are provided. Your mileage may vary for other distributions. The latest stable version number is listed on Riot's GitHub releases page and is the version number you should aim for.

Registration is the same process as the steps above. Make sure you select Premium hosting and input https://kde.modular.im as the Server Name if you would like a Matrix account on KDE's Modular homeserver.

Web registration 01.png

Using the Riot client for mobile

Currently Riot only supports having one account

In Signin/Register select the Use custom server options (Advanced) option to set the following

Screenshot Riot.im kde settings.png
Android

The Riot client is available from Google Play and F-Droid.

iOS

There is also a client for iOS available from Apple's App Store.

Plasma Mobile

Coming soon! ;-)

Rooms

Check back often as we will be adding new rooms as we go.

Welcome

New to KDE? Start here and find out what this is all about.

General KDE channel

Share your experience with the KDE community.

Plasma

Distribution-centered KDE rooms

For (potential) contributors

Applications

Here is a list of individual applications that have their own Matrix rooms:

Local communities

How to Add Your Existing IRC Channel as Room

Note-box-icon.png
Note
This only needs to be done once by an IRC operator. After that all users may use the more convenient local room name to join.


  • /join #_freenode_#YOUR_CHANNEL:kde.org
  • On the IRC side you need to OP your matrix user, so either use a temporary nick on Matrix, or add multiple nicks to your IRC identity and use a different one on Matrix and IRC, or have a fellow OP give you OP privileges
  • Setup a local alias for kde.org via the matrix room settings
  • Leave room again
  • Join via local alias e.g. /join #YOUR_CHANNEL
  • Everyone can now join your room via the #YOUR_CHANNEL locally and #YOUR_CHANNEL:kde.org in the Matrix

Where you can setup the alias depends on the client you use. For webchat.kde.org it'll look a bit like this:

Riot-room-alias-1.png
Riot-room-alias-2.png

You may additionally want to mark the room as published in the directory (so one can search for it) and set the KDE flair +kde:kde.org (so a fancy KDE flair will get shown; currently not set up). Both settings on webchat.kde.org are immediately after the room settings where you created the local room alias.

Riot-room-flairs.png

Why should I use the Matrix IRC bridge?

Your IRC nickname will be available 24/7 and other people will be able to ping or contact you even if you are away from your computer. This can also be achieved by using an IRC bouncer, but Matrix has several advantages:

  • Matrix provides unlimited chat history, an IRC bouncer doesn't.
  • The Matrix IRC bridge is much easier to setup than an IRC bouncer.
  • The Matrix reference client (Riot) can be used from smartphones.

How does it compare with IrcsomeBot?

IrcsomeBot is a Telegram bot that can bridge a Telegram group with an IRC channel. However there are the following shortcomings:

  • A KDE sysadmin needs to setup the bridge between each room/channel. Matrix instead supports out of the box any freenode channel (and also other IRC networks).
  • IrcsomeBot is the only nickname that joins the IRC channel and forwards the messages sent from Telegram on behalf of their senders. Matrix instead performs a native bridging between the two protocols and creates a real IRC user that joins the IRC channel. Other people will be able to keep the usual IRC workflow with your bridged nickname (/whois, /query, etc.). In fact, they won't even know that you are using the Matrix bridge instead of a classic IRC client.

How do I join an IRC channel?

You can search or browse IRC channels from Riot. Just type the name of the channel you want to join and you are done.

KDE Riot.png

If your favorite matrix client doesn't have a similar feature, you can join any freenode channel by joining the following Matrix room:

#_freenode_#<irc_channel_name>:kde.org

For example, if you want to join the #kde-devel IRC channel, just type:

/join #_freenode_#kde-devel:kde.org

How do I change my IRC nickname?

By default, the IRC bridge will use your matrix display name to generate an IRC nickname (ending with -M). If you don't like the default nickname, you can change it by sending the following command to the @freenode-irc:kde.org bot (you will need first to start a private conversation with the bot):

!nick <your_favorite_irc_nickname>

How do I join an IRC channel that requires registered nicknames?

Start by opening a direct chat with NickServ. For freenode, that's @_freenode_NickServ:kde.org. Then send it a message of format:

identify [<nickname>] <password>

— where nickname is optional assuming you are identifying for your current nickname.

To make the bridge store your credentials and log in automatically, in direct chat with the @freenode-irc:kde.org you can use the !storepass <string> command to save a string that is sent in PASS command when your IRC-presence connects.

With freenode you can use:

!storepass nickname:password

How do I change my away status?

The @freenode-irc:kde.org bot accepts raw IRC commands. To set the away status use:

!cmd AWAY <away_message>

for example:

!cmd AWAY Sleeping

To remove the away status just use:

!cmd AWAY

Other questions?

Check out the FAQ maintained upstream.


This page was last edited on 9 July 2019, at 11:13. Content is available under Creative Commons License SA 4.0 unless otherwise noted.