RetroShare is a Free and Open Source cross-platform, Friend-2-Friend and secure decentralised communication platform.
Go to file
Phenom 26397d7e4d Fix clang warning: unused variables 'LOWER_LIMIT', ...
/libretroshare/src/services/p3gxsreputation.cc:130: warning: unused
variable 'LOWER_LIMIT' [-Wunused-const-variable]
static const uint32_t LOWER_LIMIT                         = 0;        //
used to filter valid Opinion values from serialized data
/libretroshare/src/services/p3gxsreputation.cc:132: warning: unused
variable 'kMaximumPeerAge' [-Wunused-const-variable]
static const int      kMaximumPeerAge                     = 180;      //
half a year.
/libretroshare/src/services/p3gxsreputation.cc:135: warning: unused
variable 'ACTIVE_FRIENDS_ONLINE_DELAY' [-Wunused-const-variable]
static const int      ACTIVE_FRIENDS_ONLINE_DELAY         = 86400*7 ; //
1 week.
/libretroshare/src/services/p3gxsreputation.cc:138: warning: unused
variable 'REPUTATION_ASSESSMENT_THRESHOLD_X1' [-Wunused-const-variable]
static const float    REPUTATION_ASSESSMENT_THRESHOLD_X1  = 0.5f ;    //
reputation under which the peer gets killed. Warning there's a 1 shift
with what's shown in GUI. Be careful.
/libretroshare/src/services/p3gxsreputation.cc:139: warning: unused
variable 'PGP_AUTO_BAN_THRESHOLD_DEFAULT' [-Wunused-const-variable]
static const uint32_t PGP_AUTO_BAN_THRESHOLD_DEFAULT      = 2 ;       //
above this, auto ban any GXS id signed by this node
/libretroshare/src/gxstunnel/p3gxstunnel.cc:62: warning: unused variable
'INTERVAL_BETWEEN_DEBUG_DUMP' [-Wunused-const-variable]
static const uint32_t INTERVAL_BETWEEN_DEBUG_DUMP        = 10 ;
2017-07-16 21:37:22 +02:00
build_scripts fixed last update missing commits 2017-07-16 10:08:33 +02:00
data Add trailing semi-colon to MimeType in .desktop files 2016-04-16 20:44:14 +02:00
libbitdht/src Fix warning: this statement may fall through 2017-07-16 20:23:39 +02:00
libresapi/src Fix warning: unused parameter ‘type’ and ‘req’ 2017-07-16 20:49:27 +02:00
libretroshare/src Fix clang warning: unused variables 'LOWER_LIMIT', ... 2017-07-16 21:37:22 +02:00
msys2_build_libs Fixed MSYS2AUTOMAKE path in msys2_build_libs/Makefile 2016-08-12 14:14:09 +02:00
openpgpsdk/src Fix warning: this statement may fall through 2017-07-16 20:21:38 +02:00
plugins switched VOIP to new serialization 2017-05-02 22:05:54 +02:00
retroshare-android-notify-service/src Qml app is more aggressive in parsing links 2017-04-20 23:53:45 +02:00
retroshare-android-service/src Changed: Unified socket path across systems. 2017-06-04 22:10:41 +02:00
retroshare-gui/src Fix warning: comparison between signed and unsigned integer expressions 2017-07-16 21:10:45 +02:00
retroshare-nogui/src Fix warning: comparison between signed and unsigned integer expressions 2017-07-16 20:53:14 +02:00
retroshare-qml-app/src Qml App: better Android interaction on URL export 2017-07-04 16:44:15 +02:00
supportlibs/pegmarkdown Fix error reported by CppChecker: 2016-03-20 13:12:30 +01:00
tests Fix Lobby Topic not send on invite. 2017-05-08 15:38:36 +02:00
.gitignore Simplify QML to work better on both Desktop and Phone 2016-10-26 20:37:28 +02:00
.travis.yml Fix UnitTest Compilation and Travis Error. 2017-02-22 17:46:16 +01:00
android-prepare-toolchain.sh Retroshare android service now run and start at boot on android, the qml app is still disfunctional 2016-08-23 12:15:28 +02:00
appveyor.yml Fix Appveyor 2017-05-28 15:19:27 +02:00
build-all-mingw32make.bat Fix Windows 7 32b Compilation from scratch. 2015-10-17 12:15:35 +02:00
LICENSE.txt Update and rename license.txt to LICENSE.txt 2015-12-15 09:11:12 -08:00
MacOS_X_InstallGuide.md Fix Travis MacOS compilation since speex 1.2 split. 2017-01-04 21:13:45 +01:00
README-Android.asciidoc Update to Qt 5.8.0 2017-03-15 23:11:50 +01:00
README.md Fix Travis MacOS compilation since speex 1.2 split. 2017-01-04 21:13:45 +01:00
retroshare.pri Merge branch 'master' into qmlapp_pex_alpha 2017-05-31 12:11:15 +02:00
RetroShare.pro Avoid linking libretroshare in qml app and notify 2017-04-18 23:14:44 +02:00
Start_RetroShare-Gui_Debug.bat Fix Windows 7 32b Compilation from scratch. 2015-10-17 12:15:35 +02:00
TODO.circles.txt updated TODO 2016-03-20 22:23:32 -04:00
TODO.txt update todo 2016-02-24 21:51:34 +01:00
WindowsMSys2_InstallGuide.md Fix Travis MacOS compilation since speex 1.2 split. 2017-01-04 21:13:45 +01:00

RetroShare

RetroShare is a decentralized, private and secure commmunication and sharing platform. RetroShare provides filesharing, chat, messages, forums and channels.

Build Status

Platform Build Status
GNU/Linux, MacOS, (via travis-ci) Build Status
Windows, MSys2 (via appveyor) Build status

Compilation on Windows

Follow this file : WindowsMSys2_InstallGuide.md

Compilation on MacOSX

Follow this file : MacOS_X_InstallGuide

Compilation for Android

Follow this file : README-Android

Compilation on Linux

  1. Install package dependencies:

    • Debian/Ubuntu
    sudo apt-get install libglib2.0-dev libupnp-dev qt4-dev-tools \
        libqt4-dev libssl-dev libxss-dev libgnome-keyring-dev libbz2-dev \
        libqt4-opengl-dev libqtmultimediakit1 qtmobility-dev libsqlcipher-dev \
        libspeex-dev libspeexdsp-dev libxslt1-dev libcurl4-openssl-dev \
        libopencv-dev tcl8.5 libmicrohttpd-dev
    
    • openSUSE
    sudo zypper install gcc-c++ libqt4-devel libgnome-keyring-devel \
        glib2-devel speex-devel libssh-devel protobuf-devel libcurl-devel \
        libxml2-devel libxslt-devel sqlcipher-devel libmicrohttpd-devel \
        opencv-devel speexdsp-devel libupnp-devel libavcodec-devel
    
    • Arch Linux
    pacman -S base-devel libgnome-keyring libmicrohttpd libupnp libxslt \
        libxss opencv qt4 speex speexdsp sqlcipher
    
  2. Checkout the source code

    mkdir ~/retroshare
    cd ~/retroshare 
    git clone https://github.com/RetroShare/RetroShare.git trunk
    
  3. Compile

    cd trunk
    qmake CONFIG+=debug
    make
    
  4. Install

    sudo make install
    

    The executables produced will be:

      /usr/bin/RetroShare06
      /usr/bin/RetroShare06-nogui
    
  5. Uninstall:

    sudo make uninstall
    

Compile only retroshare-nogui

If you want to run RetroShare on a server and dont need the gui and plugins, you can run the following commands to only compile/install the nogui version:

qmake
make retroshare-nogui
sudo make retroshare-nogui-install_subtargets

For packagers

Packagers can use PREFIX and LIB_DIR to customize the installation paths:

qmake PREFIX=/usr LIB_DIR=/usr/lib64 "CONFIG-=debug" "CONFIG+=release"
make
make INSTALL_ROOT=${PKGDIR} install

If libsqlcipher is not available as a package

You need to place sqlcipher so that the hierarchy is:

  retroshare
      |
      +--- trunk
      |
      +--- lib
            |
            +---- sqlcipher
mkdir lib
cd lib
git clone git://github.com/sqlcipher/sqlcipher.git
cd sqlcipher
./configure --enable-tempstore=yes CFLAGS="-DSQLITE_HAS_CODEC" LDFLAGS="-lcrypto"
make
cd ..

Using retroshare-nogui & webUI

The webUI needs to be enabled as a parameter option in retroshare-nogui:

./retroshare-nogui --webinterface 9090 --docroot /usr/share/RetroShare06/webui/

The webUI is only accessible on localhost:9090. It is advised to keep it that way so that your RS cannot be controlled using an untrusted connection.

To access your web UI from a distance, just open a SSH tunnel on it:

distant_machine:~/ >  ssh rs_host -L 9090:localhost:9090 -N

"rs_host" is the machine running retroshare-nogui. Then on the distant machine, access your webUI on

  http://localhost:9090

That also works with a retroshare GUI of course.

Compile and run tests

  qmake CONFIG+=tests
  make
  tests/unittests/unittests