Yesterday an Open Source alternative to Facebook was launched by four New Yorkers called Diaspora. Today I decided to have a play and see if I could get this installed on one of my servers. The following post details the steps I took to get it up and running.

Before we start I’d like to thank Hemanth who produced a guide to getting Diaspora installed on Debian/Ubuntu

After logging into your server or opening your terminal app we need the following:

yum install libxslt libxslt-devel libxml2 libxml2-devel

We then install Ruby 1.8.7. This has to be done manually as currently CentOS doesn’t have an RPM for 1.8.7.

tar -zxvf ruby-1.8.7.tar.gz
cd ruby-1.8.7
./configure –with-openssl-dir=/usr/lib64/openssl
sudo make install

With Ruby installed we can now install Gems

tar -zxvf rubygems-1.3.6.tgz
cd rubygems-1.3.6
sudo ruby setup.rb

Next we install the MongoDB. To install MongoDB you may need to add a yum repo this is assumed in the following lines.

touch /etc/yum.repos.d/10gen.repo
vi /etc/yum.repos.d/10gen.repo

Add following into it:

name=10gen Repository    baseurl=

Now we can install it with yum

yum install mongo-stable mongo-stable-server

Install ImageMagick

sudo yum install ImageMagick

Install Git

yum install git

We now install the RubyGem Bundler that seems to handle the running of Diaspora

gem install bundler

CD into the directory you wish to install Diaspora into

cd /var/www/html

We can now clone the Diaspora Git

git clone

CD into the Diaspora root directory

cd /diaspora

We now run bundle to install all the Diaspora dependancies

bundle install

We can now start our database

service mongod start

And finally start our Diaspora application

bundle exec thin start

Or to deomize it so we don’t have to leave our shell session running

bundle exec thin start -d

Point your browser at your domain and you should be greeted with a login screen


To sign in to the application go to the following url and create yourself a user


If you don’t want Diaspora running on port 3000 you can specify which port to run on at startup, I’m having issues changing my port to a useful one as Apache is running on 80

bundle exec thin start –port=80