Social networks in the enterprise

GNU Social

The GNU social project [3], previously known as StatusNet [13], is decentralized and seeks to escape the influence of governments and organizations. It has been around since 2010 and is licensed under the AGPL. GNU social is driven by independent servers known as nodes. A list of different groups with the corresponding URLs can be found online [14].

Individual members can post their text messages to multiple nodes on the network and belong to multiple groups. Although the software can be used across platforms in a web browser, it also has its own clients for different operating systems. Programmers develop and maintain them independent of the actual GNU social Project.

On Linux, the KDE application Choqok [8] and the Gtk+-based Heybuddy [15] program are particularly noteworthy, and Yaics [16] is a new development (Figure 6).

Figure 6: External clients are also available for GNU social; one of the newer access options is Yaics.

Group Dynamic

Users operate GNU social nodes with different interfaces, which are only marginally visually different. New members usually register and log in from the main window. In some cases, this is done with a dedicated Login button, which branches to a login and registration dialog.

To log in to a publicly accessible GNU social server, the user does not need to provide detailed personal information. All you have to provide is your email address and a username and password. The username must not contain any capital letters or special characters. You can then use the service immediately; verification of your email address with a confirmation message is not necessary.

You can compose individual short messages (quips) by clicking the pencil icon in the top right corner of the browser window. The messages can have a length of up to 1,024 characters. Direct input of a quip is also possible in an input box on the left side of the window. The individual quips that users compose appear one below the other in the browser window in the timeline and include photos. If you have joined individual groups, the timeline shows quips from the members of these groups. The display can be configured.

To make more detailed settings and to log out, press the Profile button in the title bar at the top of the browser window beside the free text search box.

Because GNU social is decentralized, users can only link tags to the server to which they send their quips. Conversely, contacts from other servers within the GNU social network also appear in a user's timeline. However, this requires a corresponding subscription on the source server.

GNU social offers the option to create your own groups, which the administrator and founder of the group can also mark as private. To do this, add a checkmark in front of the Private option in the settings dialog. The administrator is also responsible for adding new group members. With the help of two further options, the admin also defines how a group handles the sending and receiving of private messages. Several selection options are available (Figure 7).

Figure 7: As the founder of a group, the user in GNU social is also its admin.

Own Server

GNU social is under a free license, so companies and organizations that do not want to communicate in public space through third-party servers can integrate the service into their own intranet. To do this, however, they have to fulfil numerous conditions: Besides PHP scripting language version 5.5 or newer, MariaDB version 5 or newer and a web server are required.

The web server can be Apache, Nginx, or Lighttpd and must support HTTPS connections, which additionally require a signed certificate (free of charge, e.g., from the Let's Encrypt project [17]).

For the PHP scripting language the following extensions must be installed:

  • php5-curl
  • php5-gd
  • php5-gmp
  • php5-intl
  • php5-json
  • php5-mysqlnd

Because not every Linux distribution makes all extensions available, you should check these dependencies before installing a local GNU social server.

For better server performance, the administrator can change some settings in the php.ini configuration file – for example, to enable cache memory for PHP. Before taking action, you will definitely want to consult the documentation.

Despite the already quite long development time of GNU social, it leaves something to be desired, especially if you plan to use a non-English version. If in doubt, I recommend using the instructions and wikis, along with the step-by-step instructions on how to set up your own GNU social server [18].

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Open Source Social Media Tools

    Diaspora, Friendica, and Mastodon are free and decentralized microblogging platforms that keep you in control of your data.

  • diaspora*

    You don't need Facebook to keep up with your friends online. With diaspora*, you get a similar experience without the spying.

  • Fediverse Introduction

    Do you have to you give up your privacy to enjoy access to social media? The makers of the Fediverse say no.

  • Mastodon

    Get started with free microblogging, interact with others who share you interests, and even help expand the Fediverse with your own Mastodon instance.

  • Tutorial – Fediverse

    If you're looking for social media options where the user has more control, you'll find a range of options to explore in the Fediverse, including the popular Mastodon.

comments powered by Disqus
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.

Learn More