From f4e4a4b2defc97901b9e0bd29d536c883f0edbc0 Mon Sep 17 00:00:00 2001 From: Bob Mottram Date: Wed, 10 May 2017 20:12:27 +0100 Subject: [PATCH] Documentation for riot web --- doc/EN/app_riot.org | 37 +++++++++ doc/EN/apps.org | 4 + img/riotweb.jpg | Bin 0 -> 64715 bytes website/EN/apps.html | 188 +++++++++++++++++++++++-------------------- 4 files changed, 141 insertions(+), 88 deletions(-) create mode 100644 doc/EN/app_riot.org create mode 100644 img/riotweb.jpg diff --git a/doc/EN/app_riot.org b/doc/EN/app_riot.org new file mode 100644 index 00000000..c0a3ea5a --- /dev/null +++ b/doc/EN/app_riot.org @@ -0,0 +1,37 @@ +#+TITLE: +#+AUTHOR: Bob Mottram +#+EMAIL: bob@freedombone.net +#+KEYWORDS: freedombone, riot +#+DESCRIPTION: How to use Riot Web +#+OPTIONS: ^:nil toc:nil +#+HTML_HEAD: + +#+BEGIN_CENTER +[[file:images/logo.png]] +#+END_CENTER + +#+BEGIN_EXPORT html +
+

Riot Web

+
+#+END_EXPORT + +#+BEGIN_CENTER +[[file:images/riotweb.jpg]] +#+END_CENTER + +Riot Web is a browser based user interface for the [[./app_matrix.html][Matrix]] federated communications system. It allows you to do encrypted one-to-one or group chat, and has some fancy WebRTC features for voice and video conversations. The WebRTC stuff won't work in a Tor browser though. This type of system is fine for general public communications and collaboration on open source projects or gaming groups. For things which require real privacy though stick to XMPP with OMEMO. + +* Installation +Log into your system with: + +#+begin_src bash +ssh myusername@mydomain -p 2222 +#+end_src + +Using cursor keys, space bar and Enter key select *Administrator controls* and type in your password. + +Select *Add/Remove Apps* then *riot* and also make sure that *matrix* is selected or was previously installed. You will then be asked for a domain name and if you are using FreeDNS also the code for the domain which can be found under *Dynamic DNS* on the FreeDNS site (the random string from "/quick cron example/" which appears after /update.php?/ and before />>/). For more details on obtaining a domain and making it accessible via dynamic DNS see the [[./faq.html][FAQ]]. Typically the domain name you use will be a subdomain, such as /riot.mydomainname.net/. It will need to be a domain which you have bought somewhere and own and not one of the FreeDNS subdomains, otherwise you won't be able to get a SSL/TLS certificate for it. + +* Initial setup +Go to the *Administrator control panel* and select *Passwords* then *matrix*. This will give you the password to initially log in using the Riot Web user interface. Log in, and that's it. Happy chatting. diff --git a/doc/EN/apps.org b/doc/EN/apps.org index b5073737..57b898b7 100644 --- a/doc/EN/apps.org +++ b/doc/EN/apps.org @@ -107,6 +107,10 @@ An alternative federated social networking system compatible with GNU Social. It Calendar system compatible with CalDAV and CardDAV. Synch your calendar events easily and securely across all your devices. [[./app_radicale.html][How to use it]] +* Riot Web +A browser based user interface for the Matrix federated communications system, including WebRTC audio and video chat. + +[[./app_riot.html][How to use it]] * SearX A metasearch engine for customised and private web searches. diff --git a/img/riotweb.jpg b/img/riotweb.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9d52f9ec5b00026b91704e8ac6fe37445917fbe0 GIT binary patch literal 64715 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 - + @@ -264,9 +264,9 @@ The base install of the system just contains an email server and Mutt client, bu -
-

DLNA

-
+
+

DLNA

+

Enables you to use the system as a music server which any DLNA compatible devices can connect to within your home network.

@@ -276,9 +276,9 @@ Enables you to use the system as a music server which any DLNA compatible device

-
-

Dokuwiki

-
+
+

Dokuwiki

+

A databaseless wiki system.

@@ -288,9 +288,9 @@ A databaseless wiki system.

-
-

Emacs

-
+
+

Emacs

+

If you use the Mutt client to read your email then this will set it up to use emacs for composing new mail.

@@ -300,9 +300,9 @@ If you use the Mutt client to read your email then this will set it up to use em

-
-

Etherpad

-
+
+

Etherpad

+

Collaborate on creating documents in real time. Maybe you're planning a holiday with other family members or creating documentation for a Free Software project along with other volunteers. Etherpad is hard to beat for simplicity and speed. Only users of the system will be able to access it.

@@ -312,9 +312,9 @@ Collaborate on creating documents in real time. Maybe you're planning a holiday

-
-

Friendica

-
+
+

Friendica

+

Federated social network system.

@@ -324,9 +324,9 @@ Federated social network system.

-
-

Ghost

-
+
+

Ghost

+

Modern looking blogging system.

@@ -336,9 +336,9 @@ Modern looking blogging system.

-
-

GNU Social

-
+
+

GNU Social

+

Federated social network. You can "remote follow" other users within the GNU Social federation.

@@ -348,9 +348,9 @@ Federated social network. You can "remote follow" other users within the

-
-

Gogs

-
+
+

Gogs

+

Lightweight git project hosting system. You can mirror projects from Github, or if Github turns evil then just host your own projects while retaining the familiar fork-and-pull workflow. If you can use Github then you can also use Gogs.

@@ -360,9 +360,9 @@ Lightweight git project hosting system. You can mirror projects from Github, or

-
-

HTMLy

-
+
+

HTMLy

+

Databaseless blogging system. Quite simple and with a markdown-like format.

@@ -372,9 +372,9 @@ Databaseless blogging system. Quite simple and with a markdown-like format.

-
-

Hubzilla

-
+
+

Hubzilla

+

Web publishing platform with social network like features and good privacy controls so that it's possible to specify who can see which content. Includes photo albums, calendar, wiki and file storage.

@@ -384,9 +384,9 @@ Web publishing platform with social network like features and good privacy contr

-
-

IRC Server (ngirc)

-
+
+

IRC Server (ngirc)

+

Run your own IRC chat channel which can be secured with a password and accessible via an onion address. A bouncer is included so that you can receive messages sent while you were offline. Works with Hexchat and other popular clients.

@@ -396,18 +396,18 @@ Run your own IRC chat channel which can be secured with a password and accessibl

-
-

Jitsi Meet

-
+
+

Jitsi Meet

+

Experimental WebRTC video conferencing system, similar to Google Hangouts. This may not be fully functional, but is hoped to be in the near future.

-
-

Lychee

-
+
+

Lychee

+

Make your photo albums available on the web.

@@ -417,9 +417,9 @@ Make your photo albums available on the web.

-
-

Mailpile

-
+
+

Mailpile

+

Modern email client which supports GPG encryption.

@@ -429,9 +429,9 @@ Modern email client which supports GPG encryption.

-
-

Matrix

-
+
+

Matrix

+

Multi-user chat with some security and moderation controls.

@@ -441,9 +441,9 @@ Multi-user chat with some security and moderation controls.

-
-

Mediagoblin

-
+
+

Mediagoblin

+

Publicly host video and audio files so that you don't need to use YouTube/Vimeo/etc.

@@ -453,9 +453,9 @@ Publicly host video and audio files so that you don't need to use YouTube/Vimeo/

-
-

Mumble

-
+
+

Mumble

+

The popular VoIP and text chat system. Say goodbye to old-fashioned telephony conferences with silly dial codes. Also works well on mobile.

@@ -465,9 +465,9 @@ The popular VoIP and text chat system. Say goodbye to old-fashioned telephony co

-
-

NextCloud

-
+
+

NextCloud

+

Store files on your server and sync them with laptops or mobile devices. Includes many plugins including videoconferencing and collaborative document editing.

@@ -477,9 +477,9 @@ Store files on your server and sync them with laptops or mobile devices. Include

-
-

PI-Hole

-
+
+

PI-Hole

+

The black hole for web adverts. Block adverts at the domain name level within your local network. It can significantly reduce bandwidth, speed up page load times and protect your systems from being tracked by spyware.

@@ -489,9 +489,9 @@ The black hole for web adverts. Block adverts at the domain name level within yo

-
-

PostActiv

-
+
+

PostActiv

+

An alternative federated social networking system compatible with GNU Social. It includes some optimisations and fixes currently not available within the main GNU Social project.

@@ -501,9 +501,9 @@ An alternative federated social networking system compatible with GNU Social. It

-
-

Radicale

-
+
+

Radicale

+

Calendar system compatible with CalDAV and CardDAV. Synch your calendar events easily and securely across all your devices.

@@ -513,9 +513,21 @@ Calendar system compatible with CalDAV and CardDAV. Synch your calendar events e

-
-

SearX

-
+
+

Riot Web

+
+

+A browser based user interface for the Matrix federated communications system, including WebRTC audio and video chat. +

+ +

+How to use it +

+
+
+
+

SearX

+

A metasearch engine for customised and private web searches.

@@ -525,9 +537,9 @@ A metasearch engine for customised and private web searches.

-
-

tt-rss

-
+
+

tt-rss

+

Private RSS reader. Pulls in RSS/Atom feeds via Tor and is only accessible via an onion address. Have "the right to read" without the Surveillance State knowing what you're reading. Also available with a user interface suitable for viewing on mobile devices via a browser such as OrFox.

@@ -537,9 +549,9 @@ Private RSS reader. Pulls in RSS/Atom feeds via Tor and is only accessible via a

-
-

Syncthing

-
+
+

Syncthing

+

Possibly the best way to synchronise files across all of your devices. Once it has been set up it "just works" with no user intervention needed.

@@ -549,9 +561,9 @@ Possibly the best way to synchronise files across all of your devices. Once it h

-
-

Tahoe-LAFS

-
+
+

Tahoe-LAFS

+

Robust and encrypted storage of files on one or more server.

@@ -561,9 +573,9 @@ Robust and encrypted storage of files on one or more server.

-
-

Tox

-
+
+

Tox

+

Client and bootstrap node for the Tox chat/VoIP system.

@@ -573,9 +585,9 @@ Client and bootstrap node for the Tox chat/VoIP system.

-
-

Turtl

-
+
+

Turtl

+

A system for privately creating and sharing notes and images, similar to Evernote but without the spying.

@@ -585,18 +597,18 @@ A system for privately creating and sharing notes and images, similar to Evernot

-
-

Vim

-
+
+

Vim

+

If you use the Mutt client to read your email then this will set it up to use vim for composing new mail.

-
-

XMPP

-
+
+

XMPP

+

Chat server which can be used together with client such as Gajim or Conversations to provide end-to-end content security and also onion routed metadata security. Includes advanced features such as client state notification to save battery power on your mobile devices, support for seamless roaming between networks and message carbons so that you can receive the same messages while being simultaneously logged in to your account on more than one device.