Diaspora
The privacy aware, personally controlled, do-it-all, open source social network.
DISCLAIMER: THIS IS PRE-ALPHA SOFTWARE AND SHOULD BE TREATED ACCORDINGLY. These instructions are designed for machines running Ubuntu or Mac OS X.
Preparing your system
In order to run Diaspora, you will need to download the following dependencies (specific instructions follow):
- Ruby - The Ruby programming language. (We're using 1.8. It comes preinstalled on Mac OS X.)
- MongoDB - A snappy noSQL database.
- OpenSSL - An encryption implementation. (It comes preinstalled on Mac OS X and later versions of Ubuntu.)
- ImageMagick - An Image processing library used to resize uploaded photos.
- Git - The fast version controll system.
After you have Ruby installed on your system, you will need to get Rubygems, then install Bundler:
We suggest using a package management system to download these dependencies. Trust us, it's going to make your life a lot easier. If you're using Mac OS X, you can use homebrew; and if you're using Ubuntu, just use Synaptic (it comes pre-installed). The below instructions assume you have these installed.
Ruby
To install Ruby 1.8.7 on Ubuntu, run the following command:
sudo apt-get install ruby-full
If you're on Mac OS X, you already have Ruby on your system. Yay!
MongoDB
To install MongoDB on Ubuntu, run the following commands:
If you're running a 32-bit system, run wget http://fastdl.mongodb.org/linux/mongodb-linux-i686-1.6.2.tgz
. If you're running a 64-bit system, run wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-1.6.2.tgz
.
# extract
tar xzf mongodb-linux-i686-1.4.0.tgz
# create the required data directory
sudo mkdir -p /data/db
sudo chmod -Rv 777 /data/
To install MongoDB on Mac OS X, run the following:
brew install mongo
OpenSSL
If you're running either Ubuntu or Mac OS X you already have OpenSSL installed!
ImageMagick
To install ImageMagick on Ubuntu, run the following:
sudo apt-get install imagemagick libmagick9-dev
To install ImageMagick on Mac OS X, run the following:
brew install imagemagick
Git
To install Git on Ubuntu, run the following:
sudo apt-get install git-core
To install Git on Mac OS X, run the following:
brew install git
Rubygems
On Ubuntu, run the following:
wget http://production.cf.rubygems.org/rubygems/rubygems-1.3.7.tgz
tar -xf rubygems-1.3.7.tgz
cd rubygems-1.3.7
sudo ruby setup.rb
sudo ln -s /usr/bin/gem1.8 /usr/bin/gem
On Mac OS X, RubyGems comes preinstalled; however, you might need to update it for use with the latest Bundler. To update RubyGems, run gem update --system
.
Bundler
After RubyGems is updated, simply run gem install bundler
to get Bundler.
Getting Diaspora
To download Diaspora, you will want to clone it from the official github repository here. If you have never used github before, their help desk has a pretty awesome guide on getting setup.
Running Diaspora
Install required gems
In order to start the app server for the first time, bundler needs to grab Diaspora's gem depencencies. To allow this, run bundle install
from Diaspora's root directory.
It is important to run a bundle install every so often, in the event of a new gem dependency. We will make sure to make an announcement in the event of a gem change.
Start Mongo
After installing the above, run sudo mongod
from where mongo is installed to start mongo.
Diaspora will not run unless mongo is running. Mongo will not run by default, and will need to be started every time you wish to use or run the test suite for Diaspora.
Run the app server
Once mongo is running and bundler has finished, run bundle exec thin start
from the root Diaspora directory. This will start the app server in development mode.
Testing
Diaspora's test suite uses rspec, a behavior driven testing framework. In order to run the tests, run bundle exec rspec spec
.
Getting Help
There are multiple outlets of ongoing discussion on the development of Diaspora.
More general info and updates about the project can be found on our blog, twitter. Also, be sure to join the official mailing list.
License
Copyright 2010 Diaspora Inc.
Diaspora is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
Diaspora is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License along with Diaspora. If not, see http://www.gnu.org/licenses/.