Hi there,

I heard about RetroShare recently (on Slashdot) and really like the goal of the program; it's something I've been wanting for a long time now. I'm a software developer so I figured I could help contribute to the project. I started by getting a build up and running on my mac, which was non-trivial as it looks like the Mac build hasn't been maintained (or maybe it's just targetting older OS X version?). Anyway, I have instructions and patches to get a build going on OS X 10.6, if you want to put them up on the wiki or something. The steps I used boiled down to running the following commands in a directory that also contains the retroshare-mac-build.patch file, which I posted at https://staktrace.com/pub/retroshare-mac-build.patch (you can also see the changes at https://github.com/staktrace/retroshare/commit/51f554f909086f4baca7be215d5edacab744dea4)

sudo port selfupdate
sudo port install qt4-mac
sudo port install wget

wget ftp://ftp.gnupg.org/gcrypt/libgpg-error/libgpg-error-1.10.tar.bz2
tar xjf libgpg-error-1.10.tar.bz2
rm libgpg-error-1.10.tar.bz2
pushd libgpg-error-1.10
./configure --prefix=$PWD/build --enable-static=yes --enable-shared=no
make
make install
popd

wget ftp://ftp.gnupg.org/gcrypt/gpgme/gpgme-1.3.1.tar.bz2
tar xjf gpgme-1.3.1.tar.bz2
rm gpgme-1.3.1.tar.bz2
pushd gpgme-1.3.1
./configure --prefix=$PWD/build --enable-static=yes --enable-shared=no --with-gpg-error-prefix=$PWD/../libgpg-error-1.10/build
make
make install
popd

wget http://miniupnp.free.fr/files/download.php?file=miniupnpc-1.3.tar.gz
tar xzf miniupnpc-1.3.tar.gz
rm miniupnpc-1.3.tar.gz
pushd miniupnpc-1.3
make upnpc-static
popd

git clone https://github.com/kigeia/retroshare
pushd retroshare
git apply ../retroshare-mac-build.patch
popd

pushd retroshare/libbitdht/src
qmake
make
popd

pushd retroshare/libretroshare/src
qmake
make
popd

pushd retroshare/retroshare-gui/src
qmake
make
popd

At the end there is a RetroShare.App in the retroshare/retroshare-gui/ folder which seems to work as expected.

Now that I've gotten it building and working, I'd like to start working on adding features. One that I would like to see is taking advantage of the RetroShare platform to enable F2F games. A while back I wrote a P2P collaborative crossword solver app in Java; porting that to work as a RetroShare plugin would probably be a good start for me. I looked briefly at the existing plugins in the source tree but haven't yet had time to peruse the rsplugin.h API in detail; if you have any tips or pointers before I dive in, please do let me know. I'll probably start work on it in a couple of days and progress might be a little slow because I'm also fairly busy with other things right now.

Cheers,
kats

