Privacy enhanced BitTorrent client with P2P content discovery
Python R Other
Latest commit 5ca5e06 Jan 19, 2017 @devos50 devos50 committed on GitHub Merge pull request #2739 from devos50/various_fixes_tribler7
Various fixes for Tribler 7

README.rst

Tribler

Build status on Jenkins Pull request statistics Issue statistics openhub

Towards making Bittorrent anonymous and impossible to shut down.

Developers usually hang out in the official IRC channel #tribler @ FreeNode (click here for direct a webchat window)

We use our own dedicated Tor-like network for anonymous torrent downloading. We implemented and enhanced the Tor protocol specifications plus merged them with Bittorrent streaming. More info: https://github.com/Tribler/tribler/wiki Tribler includes our own Tor-like onion routing network with hidden services based seeding and end-to-end encryption, detailed specs: https://github.com/Tribler/tribler/wiki/Anonymous-Downloading-and-Streaming-specifications

The aim of Tribler is giving anonymous access to online (streaming) videos. We are trying to make privacy, strong cryptography and authentication the Internet norm.

Tribler currently offers a Youtube-style service. For instance, Bittorrent-compatible streaming, fast search, thumbnail previews and comments. For the past 9 years we have been building a very robust Peer-to-Peer system. Today Tribler is robust: "the only way to take Tribler down is to take The Internet down" (but a single software bug could end everything).

We make use of submodules, so remember using the --recursive argument when cloning this repo.

Obtaining the latest release

Just click here and download the latest package for your OS.

Obtaining support

If you found a bug or have a feature request, please make sure you read our contributing page and then open an issue. We will have a look at it ASAP.

Contributing

Contributions are very welcome! If you are interested in contributing code or otherwise, please have a look at our contributing page. Have a look at the issue tracker if you are looking for inspiration :).

Setting up your development environment

We support development on Linux, OS X and Windows. We have written documentation that guides you through installing the required packages when setting up a Tribler development environment. See our Linux development guide for the guide on setting up a development environment on Linux distributions. See our Windows development guide for setting everything up on Windows. See our OS X development guide for the guide to setup the development environment on OS X. For German translations, see here.

Running Tribler from the repository

First clone the repository:

git clone --recursive git@github.com:Tribler/tribler.git

or, if you haven't added your ssh key to your github account:

git clone --recursive https://github.com/Tribler/tribler.git

Second, install the dependencies.

Done! Now you can run tribler by executing the tribler.sh script on the root of the repository:

./tribler.sh

On Windows, you can use the following command to run Tribler:

python Tribler\Main\tribler.py

Packaging Tribler

We have written guides on how to package Tribler for distribution on various systems. Please take a look here.

Submodule notes

  • As updated submodules are in detached head state, remember to check out a branch before committing changes on them.
  • If you forgot to check out a branch before doing a commit, you should get a warning telling you about it. To get the commit to a branch just check out the branch and do a git cherry-pick of the commit.
  • Take care of not accidentally committing a submodule revision change with git commit -a.
  • Do not commit a submodule update without running all the tests first and making sure the new code is not breaking Tribler.