in post

My Private Social

gnuGNU Social is a fairly mature federated Twitter-style network based on (and merged with) Status.Net - the free open source network devised by Evan Prodromou. Prodromou and his company E14N has gone on to create yet another network called, but remains involved with GNU Social too.

[See update at the end of this post!]

My interest in GNU Social has now become a little more concrete after establishing my personal "instance" or (what Diaspora would call a "node"). I wasn't successful in doing so on my virtual webspace at Hostgator, though it may be possible with a little effort. Instead, I found a German web hosting company called Uberspace and hosted it there. The Uberspace site is German-only, but I was able to manage with Google Translate. The hosting package does not use CPanel or any similar control panel, so one needs to consult their (very thorough) documentation then rely on the console and FileZilla. Uberspace has a very reasonable hosting offer, make a very good impression, and these days many think that it's not a bad idea to move away from American servers. Another thing I liked about Uberspace was the possibility to start with a free one-month trial, because I wasn't entirely certain that I'd manage with GNU Social.

With a little help from README files and the very supportive community, I managed to get a single-user GNU Social instance up and running fairly quickly under its own domain name I purchase the latter at $3.50 from the Indian company NetLynx.

Before gravitating to a single-user instance, I was using GNU Social at I need to explain that on GNU Social you can connect to users on any GNU Social instance, no matter which server you use. There remains only the question of discovery: i.e. how others would find out about you or how you would find out about them. This is solved by checking the public timelines of other GNU Social instances (a list can be found here), and seeing who is active. Or you can check the profiles of other users to see who they are following. You then do a remote subscribe and their statuses appear in your timeline. There are additional features such as bookmarks (favorites), Questions, Events and Polls, if you want to use them.

I decided on a single-user instance* in order to place me in complete control of the network: I can configure it as I choose and own my own domain name and data.

GNU Social offers a similar feature set to Twitter - in some ways there is a little more. On a personal instance, you can attach various types of files to a status, including photos and documents. Threaded conversations work a little better than on Twitter. And statuses are not restricted to 140 characters. It is up to the Gnu Social instance administrator to add restrictions if s/he wants to.

With regard to interoperability with other networks, a one- or two-way "Twitter bridge" is possible, meaning that personal statuses can be sent automatically to Twitter, and you can load Twitter tweets into GNU Social (though I haven't been successful so far with that). A similar interoperability is supposed to exist for Facebook, though I haven't tried it. The ostatus protocol used in GNU Social also makes it possible to integrate additional networks such as Friendica. GNU Social folks like to refer to a "fediverse" or federated universe of connected networks.

It is possible to access GNU Social offline too, through desktop clients like Gwibber or Choqok, so rather than using the automated connection with Twitter, I may later decide to use one of these, and take more active control over how messages are sent.

I still need to attend to integration with WordPress, and to make some decisions regarding use of these various networks and services.

Another time I'll write about my experience with Twister, an even more mysterious alternative network.

* On installing a single-user instance, the recommendation is still to configure as multi-user, then limit membership afterwards (just in case you change your mind later, or wish to add newsfeeds, bots, etc.)

This post has been updated thanks to input from Erkan Yilmaz, a GNU Social expert.


I eventually abandoned this experiment and went back to my GNU Social instance. The personal instance was functional, just as written, and setting it up was educational, however, in the balance, the free service at LoadAverage gave me more.

At my personal instance, the advantages were:
- Ownership of the service and its data.
- Own domain.
- Possibility to tweak the system and install additional plugins that extend the service.

The disadvantages were:
- No SSL
- Expense of the shared hosting agreement
- Time wastage in correcting certain issues (if indeed there are solutions on shared hosting) like necessity to set up "queue daemons" so that the service would work faster.
- Was unable to set up Twitterbridge. (This works reasonably well on LoadAverage, though sometimes is a little buggy.)
- Loadaverage, or other GS instances already have a community built in. On a personal instance, it is necessary to seek out new persons to follow on a more active basis.