RetroShare is a Free and Open Source cross-platform, Friend-2-Friend and secure decentralised communication platform.
Go to file
csoler e0863194a3 Squeleton code for the global routing matrix. Most functions are left unimplemented, but
the basic structure is here. Functions have been added to serialise both SHA1 and floats.
The router is not yet enabled since protocol is likely to change again.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6886 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2013-11-02 14:35:33 +00:00
build_scripts updated packaging script to follow new versioning system 2013-10-27 22:13:18 +00:00
libbitdht/src Code maintenance for Qt 5: 2013-10-21 21:42:15 +00:00
libretroshare/src Squeleton code for the global routing matrix. Most functions are left unimplemented, but 2013-11-02 14:35:33 +00:00
openpgpsdk/src added check over recursive compression depth. Fixes CVE-2013-4402 2013-10-29 20:56:40 +00:00
plugins Updated german and french language from Transifex 2013-10-24 07:42:13 +00:00
retroshare-gui/src Added freeze option in NetworkView (Modified patch from K. Eisentraut) 2013-10-27 23:07:47 +00:00
retroshare-nogui/src Fixed compile of the libraries with MinGW 4.8 on Windows. 2013-10-07 23:11:10 +00:00
rsctrl/src Added Transfer State to RPC messages 2013-04-22 22:40:30 +00:00
supportlibs/pegmarkdown Fixed compile of the libraries with MinGW 4.8 on Windows. 2013-10-07 23:11:10 +00:00
build-all-mingw32make.bat Added pegmarkdown compile to build script 2012-12-21 09:59:48 +00:00
README.txt added info about libssh-0.6.0rc1 2013-08-28 03:31:50 +00:00
RetroShare.pro Added pegmarkdown to the main project file. 2012-12-16 21:22:14 +00:00

To compile:

	- install the package dependencies. On 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      \
			   libspeex-dev libspeexdsp-dev libxslt1-dev libprotobuf-dev protobuf-compiler cmake         \
			   libcurl4-openssl-dev

	- create project directory (e.g. ~/retroshare) and check out the source code
		# mkdir ~/retroshare
		# cd ~/retroshare && svn co svn://svn.code.sf.net/p/retroshare/code/trunk trunk

	- create a new directory named lib
		# mkdir lib

	- get source code for libssh-0.5.4, unzip it, and create build directory (if needed) 

		# cd lib
		# wget https://red.libssh.org/attachments/download/41/libssh-0.5.4.tar.gz
		# tar zxvf libssh-0.5.4.tar.gz
		# cd libssh-0.5.4
		# mkdir build
		# cd build
		# cmake -DWITH_STATIC_LIB=ON ..
		# make
		# cd ../../..

		NB: There is a new libssh-0.6.0rc1 which fixes some bugs from v0.5.4, 
		The procedure is the same as above, except for the following line. 
		# cmake -DWITH_STATIC_LIB=ON -DWITH_GSSAPI=OFF ..

	- get source code for sqlcipher, and build it (only needed for GXS) 

		# cd lib
		# git clone git://github.com/sqlcipher/sqlcipher.git
		# cd sqlcipher
		# ./configure --enable-tempstore=yes CFLAGS="-DSQLITE_HAS_CODEC" \
		  LDFLAGS="-lcrypto"
		# make
		# cd ..

	- go to your svn base directory
		# cd trunk

	- go to libbitdht and compile it
		# cd libbitdht/src && qmake && make clean && make -j 4 

	- go to openpgpsdk and compile it
		# cd ../../openpgpsdk/src && qmake && make clean && make -j 4

	- go to supportlibs and compile it
		# cd ../../supportlibs/pegmarkdown && qmake && make clean && make -j 4

	- go to libretroshare and compile it
		# cd ../../libretroshare/src && qmake && make clean && make -j 4

	- go to rsctrl and compile it
		# cd ../../rsctrl/src && make &&

	- go to retroshare-nogui, and compile it
		# cd ../../retroshare-nogui/src && qmake && make clean && make -j 4

	- go to retroshare gui and compile it
		# cd ../../retroshare-gui/src && qmake && make clean && make -j 4

	- to use the SSH RS server (nogui):

		# ssh-keygen -t rsa -f rs_ssh_host_rsa_key					# this makes a RSA
		# ./retroshare-nogui -G										# generates a login+passwd hash for the RSA key used.
		# ./retroshare-nogui -S 7022 -U[SSLid] -P [Passwd hash]

	- to connect from a remote place to the server by SSH:

		# ssh -T -p 7022 [user]@[host]

		and use the command line interface to control your RS instance.

List of non backward compatible changes for V0.6:
================================================

- in rscertificate.cc, enable V_06_USE_CHECKSUM
- in p3charservice, remove all usage of _deprecated items
- turn file transfer into a service. Will break item IDs, but cleanup and
  simplify lots of code.