../../../trunk/retroshare-gui/src/gui/gxsforums/GxsForumModel.cpp: 106:53: warning: unused parameter 'parent' [-Wunused-parameter] int RsGxsForumModel::columnCount(const QModelIndex &parent) const ^ ../../../trunk/retroshare-gui/src/gui/gxsforums/GxsForumModel.cpp:245:3: warning: add explicit braces to avoid dangling else [-Wdangling-else] else ^ ../../../trunk/retroshare-gui/src/gui/gxsforums/GxsForumModel.cpp: 248:12: warning: comparison of integers of different signs: 'int' and 'std::vector::size_type' (aka 'unsigned long') [-Wsign-compare] if(row >= mPosts[entry].mChildren.size()) ~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../../../trunk/retroshare-gui/src/gui/gxsforums/GxsForumModel.cpp: 299:67: warning: unused parameter 'orientation' [-Wunused-parameter] QVariant RsGxsForumModel::headerData(int section, Qt::Orientation orientation, int role) const ^ ../../../trunk/retroshare-gui/src/gui/gxsforums/GxsForumModel.cpp: 398:77: warning: unused parameter 'column' [-Wunused-parameter] QVariant RsGxsForumModel::textColorRole(const ForumModelPostEntry& fmpe,int column) const ^ ../../../trunk/retroshare-gui/src/gui/gxsforums/GxsForumModel.cpp: 419:74: warning: unused parameter 'column' [-Wunused-parameter] QVariant RsGxsForumModel::filterRole(const ForumModelPostEntry& fmpe,int column) const ^ ../../../trunk/retroshare-gui/src/gui/gxsforums/GxsForumModel.cpp: 498:75: warning: unused parameter 'column' [-Wunused-parameter] QVariant RsGxsForumModel::missingRole(const ForumModelPostEntry& fmpe,int column) const ^ ../../../trunk/retroshare-gui/src/gui/gxsforums/GxsForumModel.cpp: 540:74: warning: unused parameter 'column' [-Wunused-parameter] QVariant RsGxsForumModel::pinnedRole(const ForumModelPostEntry& fmpe,int column) const ^ ../../../trunk/retroshare-gui/src/gui/gxsforums/GxsForumModel.cpp: 548:78: warning: unused parameter 'column' [-Wunused-parameter] QVariant RsGxsForumModel::backgroundRole(const ForumModelPostEntry& fmpe,int column) const ^ ../../../trunk/retroshare-gui/src/gui/gxsforums/GxsForumModel.cpp: 806:111: warning: unused parameter 'useChildTS' [-Wunused-parameter] void RsGxsForumModel::convertMsgToPostEntry(const RsGxsForumGroup& mForumGroup,const RsMsgMetaData& msg, bool useChildTS, ForumModelPostEntry& fentry) ^ ../../../trunk/retroshare-gui/src/gui/gxsforums/GxsForumModel.cpp:828:7: warning: unused variable 'redacted' [-Wunused-variable] bool redacted = false; ^ ../../../trunk/retroshare-gui/src/gui/gxsforums/GxsForumModel.cpp:880:6: warning: unused variable 'pos' [-Wunused-variable] int pos = 0; ^ ../../../trunk/retroshare-gui/src/gui/gxsforums/GxsForumModel.cpp:879:6: warning: unused variable 'count' [-Wunused-variable] int count = msgs.size(); ^ ../../../trunk/retroshare-gui/src/gui/gxsforums/GxsForumModel.cpp:882:6: warning: unused variable 'step' [-Wunused-variable] int step = 0; ^ ../../../trunk/retroshare-gui/src/gui/gxsforums/GxsForumModel.cpp: 949:26: warning: comparison of integers of different signs: 'int32_t' (aka 'int') and 'std::vector::size_type' (aka 'unsigned long') [-Wsign- compare] for(int32_t i=0;i<v.size();++i) ~^~~~~~~~~ ../../../trunk/retroshare-gui/src/gui/gxsforums/GxsForumModel.cpp: 959:23: warning: comparison of integers of different signs: 'int32_t' (aka 'int') and 'std::vector::size_type' (aka 'unsigned long') [-Wsign- compare] for(int32_t j=0;j<it2- >second.size();++j) ~^~~~~~~~~~~~~~~~~~~ ../../../trunk/retroshare-gui/src/gui/gxsforums/GxsForumModel.cpp: 991:26: warning: comparison of integers of different signs: 'int32_t' (aka 'int') and 'std::vector::size_type' (aka 'unsigned long') [-Wsign- compare] for(int32_t i=1;i<it->second.size();++i) ~^~~~~~~~~~~~~~~~~~ ../../../trunk/retroshare-gui/src/gui/gxsforums/GxsForumModel.cpp: 1005:22: warning: comparison of integers of different signs: 'int' and 'std::vector::size_type' (aka 'unsigned long') [-Wsign-compare] for(int i=1;i<it->second.size();++i) ~^~~~~~~~~~~~~~~~~~ ../../../trunk/retroshare-gui/src/gui/gxsforums/ GxsForumThreadWidget.cpp:1038:13: warning: unused function 'cleanupItems' [-Wunused-function] static void cleanupItems (QList<QTreeWidgetItem *> &items) ^
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) | |
Windows, MSys2 (via appveyor) |
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
-
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 rapidjson-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 rapidjson
- Arch Linux
pacman -S base-devel libgnome-keyring libmicrohttpd libupnp libxslt \ libxss opencv qt4 speex speexdsp sqlcipher rapidjson
-
Checkout the source code
mkdir ~/retroshare cd ~/retroshare git clone https://github.com/RetroShare/RetroShare.git trunk
-
Compile
cd trunk qmake CONFIG+=debug make
-
Install
sudo make install
The executables produced will be:
/usr/bin/retroshare /usr/bin/retroshare-nogui
-
Uninstall:
sudo make uninstall
Compile only retroshare-nogui
If you want to run RetroShare on a server and don’t 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/retroshare/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