The GNU consensus Manifesto
This manifesto received the careful attention of
Richard M. Stallman, Chief
GNUisance of the GNU Project, who graciously edited
it in its present form (as of the end of the year 012012.) The author wants to thank
him for his insight, his support, and his trust.
This document lives at
It is intended to evolve along with the
Toward a GNU Consensus on Free Software for Social Networking
GNU consensus is an umbrella project to
facilitate coordination of free software social networking projects
to encourage freedom, privacy, public space, and
Over the last decade, we've seen the emergence of centralized
commercial services for online social networking. These services
are dedicated to surveillance of their users, and threaten free
speech, privacy, and the end-to-end Internet. They tend to reduce
the Internet from a public space to a private platform for
Various free software projects aim to provide decentralized
freedom-respecting alternatives to centralized corporate platforms.
The GNU consensus hopes to facilitate these projects' working
As part of the GNU Project, GNU consensus promotes and fosters
adoption of free software in the field of social networking. Using
the GNU General Public License
GNU Affero General Public License,
developers can dedicate their code permanently to users'
freedom, and thus ensure it advances the public digital space.
Some people conflate social networks, which are the
aggregate of relationships that humans have, with online social
network services such as Facebook and, arguably, G+"
— Howard Rheingold
Too often, the term social network is used interchangeably with
social network services, implying that the services themselves
provide the social network. But that's plain wrong: the social
network is a human cultural phenomenon, and a network service
can at best facilitate it.
A centralized service, whether Facebook or its alternatives, is
expensive; to make money, it needs to monitor its users and sell
information about them. Furthermore, states will compel the
service to hand over the data it collects about its users,
and laws generally give users few rights over data that they
have handed over to the service.
Therefore, rather than proposing a more ethical centralized
service, GNU consensus aims to encourage decentralized systems.
Ultimately we hope each user will have a server from which to share
her own personal information with others as she sees fit, managed
by free software fully under her own control.
Where commercial services embody a one-size-fits-all vision, the
GNU Consensus project recognizes the diversity of use-cases and
Hence it fosters diversity in the approaches to social networking
With interoperating free software social networking systems,
no user will be compelled to provide any particular kind of
information, whether it be her name, her age, or what country
she lives in. It will be up to those she communicates with
to judge what information she chooses to provide or withhold.
Hereby we propose an initial roadmap, to be refined in conjunction
with the participating projects.
When the technology is ready, it makes sense to restore end-to-end
communications as the normal way to convey social networking
The GNUnet and
will eventually serve that purpose, by providing the transport
mechanisms for each device on the network to become a
fully-featured social networking service for its owner.
In the meantime, decentralization can occur at community level:
each community can operate its own server, and federate its
contents with other communities using the
Hence, the GNU consensus project aims at coordinating the evolution
of these protocols through the active participation of developers
across projects to achieve complete interoperability for existing
and upcoming federated resources.
We propose Lorea as the initial
model implementation since it provides the most advanced OStatus
implementation to date. It's readily compatible with
Other federation protocols
The GNU Consensus considers OStatus the most popular current
protocol for federating social network services, but we will also
consider other protocols that become available. We invite
developers to present their developments to the GNU consensus
community for testing and feedback.
Due to their similarity, free software social networking programs
face a whole lot of similar use cases. These should be clearly
defined and tests provided to ease implementation.
But all programs are not equal: some will focus on desktop usage,
others on mobile devices; some on individual use, others on group
collaboration; some on always-on-connectivity, others on
An important part of designing massively interactive programs
resides in the ability to provide a clear and sensible threat
model for that program.
As many free software social networking programs encounter similar
issues, it makes sense to define comparable threat models. We
encourage projects to use the TRIKE methodology to define the
threat model, and will provide tools and resources to do so.