Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in / Register
  • jami-project jami-project
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 153
    • Issues 153
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Deployments
    • Deployments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • Insights
    • Issue
    • Repository
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • savoirfairelinuxsavoirfairelinux
  • jami-projectjami-project
  • Wiki
  • Home

Home · Changes

Page history
Update Home authored Jun 15, 2019 by Sébastien Blin's avatar Sébastien Blin
Hide whitespace changes
Inline Side-by-side
Home.md
View page @ 18c5b21b
......@@ -34,164 +34,41 @@ list](https://lists.gnu.org/mailman/listinfo/ring)
------------------------------------------------------------------------
## End user notes
How to install
--------------
This wiki contains technical documentation and resources for anyone who wants to understand how Jami works or if you want to develop something with the platform. If you are a end-user, please refer to our [website](https://jami.net) or the [FAQ](https://git.jami.net/savoirfairelinux/ring-project/wikis/tutorials/Frequently-Asked-Questions).
*We provide Jami for RPM based (RedHat/Fedora) and DEB based
(Debian/Ubuntu) distributions, Microsoft 7/8.1/10, Mac OS/X 10.8+, and
Android (4.4+).*
Also, if you prefer to build your binaries from source, please refer to the [build instructions](https://git.jami.net/savoirfairelinux/ring-project/wikis/technical/Build-instructions) page.
''External contributions may provide support for others type of
platforms, please take a look to our
[contributions](https://jami.net/contribute/) page.
Also, you can see features by client via [this page](https://git.jami.net/savoirfairelinux/ring-project/wikis/features/All-features-by-client)
Obtain your copy of Jami with following methods:
### Package managers
We maintain packaged versions for the supported and LTS versions of
mentioned GNU/Linux distributions.
you can install them manually by following these instruction:
- Debian 9
<!-- -->
```bash
su -
apt-get install dirmngr
sh -c "echo 'deb https://dl.ring.cx/ring-nightly/debian_9/ ring main' > /etc/apt/sources.list.d/ring-nightly-main.list"
apt-key adv --keyserver pgp.mit.edu --recv-keys A295D773307D25A33AE72F2F64CD5FA175348F84
apt-get update && sudo apt-get install ring
```
- Fedora
The supported Fedora versions are: 25 and 26\
you can adapt this script to your version by replacing the
**{VERSION}** with your distribution version number
```bash
sudo dnf config-manager --add-repo https://dl.ring.cx/ring-nightly/fedora_{VERSION}/ring-nightly.repo
sudo dnf install ring
```
- Ubuntu
The supported Ubuntu versions are: 16.04, 17.04, and 17.10.\
you can adapt this script to your version by replacing the
**{VERSION}** with your distribution version number
```bash
sudo sh -c "echo 'deb https://dl.ring.cx/ring-nightly/ubuntu_{VERSION}/ ring main' > /etc/apt/sources.list.d/ring-nightly-main.list"
sudo apt-key adv --keyserver pgp.mit.edu --recv-keys A295D773307D25A33AE72F2F64CD5FA175348F84
sudo add-apt-repository universe
sudo apt-get update && sudo apt-get install ring
```
- Packages
You can also download the .deb and .rpm packages directly from
<https://dl.ring.cx/ring-manual/>.
The ring-daemon packages contain the applicative core of Jami, the
ring-gnome are containing the gnome client, and the ring\_ packages are
containing the two.
### Direct download
Browse our official website [Download Jami](https://jami.net/download/)
dedicated to end-user applications.
### Build from sources
We maintain [github](https://github.com/savoirfairelinux/ring-project),
[gerrit](https://gerrit-ring.savoirfairelinux.com/#/admin/projects/ring-project)
and [gitlab](https://git.ring.cx) mirrors
to download the project's sources.
Then you can follow [Build Instructions](technical/Build-instructions) with
platform specific explanations.
General Documents
-----------------
- The [FAQ](https://ring.cx/en/documentation/faq) and
[About](https://ring.cx/en/about/technical) sections on the end-user
applications website
<!-- -->
- Contribute to the [Jami distributed
network](tutorials/Jami-distributed-network).
Technical Documents
-------------------
### Nameserver
We provide a name registration system based upon an Ethereum Blockchain,
but anyone can implement theirs using the following informations:
- Description of the [REST API for name query](technical/Name-Server-Protocol)
### Security / Privacy
Jami provides perfect forward secrecy for calls and in call text
messages with different Eliptic Curve Diffie-Hellman key negociation at
every call. For out of call messaging single RSA-4096 is used. The
cryptography library used is GNUTLS
More informations:
- [Technical overview](technical/Technical-overview) of concepts and
protocols inside Jami
### Connectivity
Jami relies on a [distributed
network](tutorials/Jami-distributed-network), that brings multiple
advantages when compared to federated networks:
------------------------------------------------------------------------
- No point of failure,
- More resilient to censorship,
- Do not depend on anything other than its users,
- Trust amongst nodes is not necessary.
## Technical documentation
![Network-topo](/uploads/9b725e440c2705a2a3c4d0a3df092066/Network-topo.png)
The technical documentation is mainly available [here](https://git.jami.net/savoirfairelinux/ring-project/wikis/technical/0.-Introduction) and [here](https://git.jami.net/savoirfairelinux/ring-project/wikis/pages)
This network forms a Distributed Hash Table (DHT)
But this is the main parts:
The core problem of distributed communication systems is peer
connectivity, Jami achieves it through two elements:
+ [OpenDHT](https://opendht.net), a DHT library to provide the basis of our distributed network
+ [Nameserver](https://git.jami.net/savoirfairelinux/ring-nameservice), (optional) is our registration system based upon an Ethereum Blockchain, but anyone can implement theirs using the following informations:
- Description of the [REST API for name query](technical/Name-Server-Protocol)
+ The daemon in charge of the accounts management, SIP features, crypto, video, etc
+ The clients for all platform to interact with the daemon.
- Encrypted announcements on DHT,
- Use of standard protocols for NAT hole punching.
------------------------------------------------------------------------
### Miscellaneous documents
## Resources for contributors
- Auto-generated (Doxygen) [Daemon code
documentation](https://docs.jami.net/doxygen/daemon/)
- Auto-generated (Doxygen) [LRC API
documentation](https://docs.jami.net/doxygen/lrc/)
- Testing (LCOV) [Daemon coverage](https://docs.jami.net/coverage)
- [Important RFCs](technical/Important-RFCs) used by Jami
- [Jami configuration path](technical/Ring-configuration-path)
- A list of public STUN servers is maintained
[here](http://www.voip-info.org/wiki/view/STUN)
- [File transfer](tutorials/file-transfer)
Development Processes and Contributing
--------------------------------------
### Development Processes and Contributing
- The [Release Process](technical/release-process)
- [Reporting Bugs and Enhancements](tutorials/Bug-report-guide)
- [Working with Gerrit](tutorials/Working-with-gerrit), our Git
repositories manager and code-review tool for all submitted patches
- *Coding Rules and Guidelines*:
- [Daemon](guidelines/Libring-coding-rules)
- [LRC](guidelines/Libringclient-Coding-Rules)
- [UI / UX Development](guidelines/UI-and-UX-development)
\ No newline at end of file
repositories manager and code-review tool for all submitted patches
\ No newline at end of file
Clone repository
  • 2.6 Displayed status
  • Choosing CRF value for encoder
  • Deprecated documents
  • Group chat feature (design draft)
  • Home
  • chatview i18n (design draft)
  • features
    • All features by client
  • guidelines
    • Banned Contact
    • Coding rules
    • Identifiers
    • Libringclient Coding Rules
    • Qt and QML coding guidelines
    • Qt and QML testing tools
    • UI and UX development
  • others
    • gsoc
View All Pages