As a further foray in to open source software, and taking a more personal ownership to sharing data, I’ve had a look in to Diaspora*. Rather than dabbling round the edges, I’ve installed my own pod.
If you are unfamiliar with Diaspora*, what it is and what it stands for, check out Join Diaspora*.
So installing it is far from easy. It is still considered to be in “Alpha”, and so instructions are changing on a regular basis. Also, as it can integrate with other products such as Facebook and Twitter, instructions on how to do that has to keep pace with those products and their APIs.
Simplest and best advice for installation is follow the instructions on the GitHub wiki for Diaspora*, and it will get you a long way. There are plenty of sites telling you the instructions are wrong and provide alternatives, but this appears to be no longer required. The next thing is to take a good look at everything in the config directory, even if you don’t think you need to configure it. I had a silent failure (Diaspora* has a habit of just stopping when things go wrong and not always providing log file comments) due to a non-existent directory being required as a log file repository.
The biggest gap in instructions for me was how to configure Apache2 to do all the things you need it to. It largely came down to working out which modules need to be loaded to fix which not-so-helpful error messages.
I’ve managed to get Twitter to allow me to twet from Diaspora*, but I’m yet to have any luck with Facebook. It seems to revolve around a lack of callback URL, something which the Facebook interface is yet to let me do. This is one of the issues where if I let my side try to contact Facebook and it doesn’t work, Diaspora* aborts ungracefully, leaving me to have to clean up the still running processes. Failure to clean up the ruby processes causes great confusion on the next restart. I’m currently running the server on a detached screen which is a little bit manual, but it seems to work.