Exploring the FOSS alternative to Twitter
Free and Social
GNU social is a free and open source microblogging platform similar to Twitter. You can join one of the public federated servers or set up your own in minutes.
In July of this year, Milo Yiannopoulos was banned from Twitter permanently as the website cracked down on several alleged incidents of racial abuse against Ghostbusters actor Leslie Jones [1]. The decision has sparked a wider discussion about freedom of expression online, and Twitter hasn't helped the situation by applying its own policies inconsistently at times. For example, Los Angeles Times journalist Fredrik deBoer pointed out that members of the Somali Al-Shabab militia have seemingly been permitted to discuss acts of violence openly despite being flagged by users [2].
The debate of freedom of expression versus toleration of hate speech will not be solved here. However, it's apparent that as long as people use public social networks like Twitter, they are not in control of their data. A social network giant can censor your messages or even sell your public tweets to data miners, as Twitter is reported to have done by The Guardian [3].
Enter the GNU
GNU social is quite simply a decentralized microblogging platform (Figure 1). It can be installed on a private server and can boast that it is both sponsored by and used by the Free Software Foundation [4].
Crucially, GNU social allows for open and distributed communications between microblogging communities. Services are federated, so although a business or individual remains in control of their data, any user of any instance can follow, be followed by, and communicate with users of any other instance [5]. To follow a remote user, simply combine their username with the name of their chosen GNU node (e.g., janedoe@quitter.is).
The decentralized nature of GNU social naturally works both ways. If an overzealous admin censors users' online activity or is forced to do so via oppressive laws, users can simply create a new account on another GNU social node.
Given that the software can be deployed in minutes, it exists on hundreds of machines. A link to a full list of independent GNU social instances is available via the GNU main page [6]. For those who do not have their own server, there are several public deployments including quitter.se, quitter.no, quitter.is, quitter.es, and gnusocial.no. The Free Software Foundation itself runs a GNU social node at https://status.fsf.org/.
Quitter.es (Quitter España), for example, was created last year in a bid to cope with a huge migration of Spanish Twitter users to GNU social. On January 14, user @Barbijaputa – who was known for being openly critical of the Spanish government – was suspended from Twitter. The following day she created a profile on quitter.se and a number of her 167,000 followers chose to migrate with her [7].
StatusNet and GNU
GNU social has something of a convoluted history. It was started in 2010 as a spin off of the GNU FM project, which was designed to power music communities such as Libre.fm. In 2013, Evan Prodromou, who had recently discontinued work on his StatusNet project, kindly provided a copy of his work to be merged into the Free Software Foundation's own project [8].
Prodromou abandoned his work on StatusNet to concentrate on a federated social networking protocol known as pump.io, which is used in web applications like GNU MediaGoblin [9]. Today, GNU social has been installed on both public and private servers, although the decentralized nature of the project makes it difficult to calculate exact numbers of individual users.
Getting Started with GNU Social
The first step to use GNU social is to choose a server. You can host a server yourself or use one of the more popular public implementations like Quitter or LoadAverage. Quitter's interface is most similar to Twitter, so it provides the easiest transition. Moreover quitter.no and quitter.is are based in Norway and Iceland, respectively, which are not regulated by the European Data Protection Directive, which allows sharing of private data within EU states under certain circumstances [10]. Additionally, both sites are available in English and a range of European languages, as well as Arabic, Persian, Chinese, and Japanese.
Once you've registered your account on either a public server or your own GNU social Node, there are a range of clients to choose from. This is usually the stage where many users are unable to proceed, because typing quitter
or loadaverage
into their app store of choice will not yield anything meaningful. A fairly comprehensive list of all available clients is available online [11], but Android and iOS users will be pleased to hear that there are mobile versions of all the instances of Quitter.
Android users may wish to install the Mustard client (Figure 2), which has additional features like attachments, bookmarks, filters, and geolocation [12]. Users of iOS devices can download Mayo for Status.net free of charge to log in to their own instance of GNU social. In both cases, when asked to provide the server name, it's important to include the full link (e.g., https://quitter.se).
Users of desktop machines can simply visit the GNU social instance in their browser. Alternatively, users of KDE can install Choqok (from the ancient Persian word for sparrow), which supports both Twitter and GNU social, making it easy to flit between the two [13]. Heybuddy is also an excellent Python client for GNU social, which will run in any desktop environment [14].
Once the necessary plugins have been installed, your GNU social instance may also be compatible with XMPP clients. The specific steps to get your XMPP client to talk to your GNU social users will vary from application to application but the Skilled Tests wiki has an excellent walk-through of the basic steps [15].
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
Gnome 48 Debuts New Audio Player
To date, the audio player found within the Gnome desktop has been meh at best, but with the upcoming release that all changes.
-
Plasma 6.3 Ready for Public Beta Testing
Plasma 6.3 will ship with KDE Gear 24.12.1 and KDE Frameworks 6.10, along with some new and exciting features.
-
Budgie 10.10 Scheduled for Q1 2025 with a Surprising Desktop Update
If Budgie is your desktop environment of choice, 2025 is going to be a great year for you.
-
Firefox 134 Offers Improvements for Linux Version
Fans of Linux and Firefox rejoice, as there's a new version available that includes some handy updates.
-
Serpent OS Arrives with a New Alpha Release
After months of silence, Ikey Doherty has released a new alpha for his Serpent OS.
-
HashiCorp Cofounder Unveils Ghostty, a Linux Terminal App
Ghostty is a new Linux terminal app that's fast, feature-rich, and offers a platform-native GUI while remaining cross-platform.
-
Fedora Asahi Remix 41 Available for Apple Silicon
If you have an Apple Silicon Mac and you're hoping to install Fedora, you're in luck because the latest release supports the M1 and M2 chips.
-
Systemd Fixes Bug While Facing New Challenger in GNU Shepherd
The systemd developers have fixed a really nasty bug amid the release of the new GNU Shepherd init system.
-
AlmaLinux 10.0 Beta Released
The AlmaLinux OS Foundation has announced the availability of AlmaLinux 10.0 Beta ("Purple Lion") for all supported devices with significant changes.
-
Gnome 47.2 Now Available
Gnome 47.2 is now available for general use but don't expect much in the way of newness, as this is all about improvements and bug fixes.