git.gnu.io has moved to IP address 209.51.188.249 -- please double check where you are logging in.

README.md 8.28 KB
Newer Older
1 2
# GNU social 1.2.x
2015
Matt Lee's avatar
Matt Lee committed
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34

(c) Free Software Foundation, Inc
(c) StatusNet, Inc

This is the README file for GNU social, the free
software social networking platform. It includes
general information about the software and the
project.

Some other files to review:

- INSTALL: instructions on how to install the software.
- UPGRADE: upgrading from earlier versions
- CONFIGURE: configuration options in gruesome detail.
- PLUGINS.txt: how to install and configure plugins.
- EVENTS.txt: events supported by the plugin system
- COPYING: full text of the software license

Information on using GNU social can be found in
the "doc" subdirectory or in the "help" section
on-line, or you can catch us on IRC in #social on
the freenode network.

## About

GNU social is a free social networking
platform. It helps people in a community, company
or group to exchange short status updates, do
polls, announce events, or other social activities
(and you can add more!). Users can choose which
people to "follow" and receive only their friends'
or colleagues' status messages. It provides a
Bob Mottram's avatar
Bob Mottram committed
35 36
similar service to proprietary social network sites,
but is much more awesome.
Matt Lee's avatar
Matt Lee committed
37 38 39 40 41 42 43

With a little work, status messages can be sent to
mobile phones, instant messenger programs (using
XMPP), and specially-designed desktop clients that
support the Twitter API.

GNU social supports an open standard called
44
OStatus <https://www.w3.org/community/ostatus/> that lets users in
Matt Lee's avatar
Matt Lee committed
45 46 47 48
different networks follow each other. It enables a
distributed social network spread all across the
Web.

49 50
GNU social was originally developed as "StatusNet" by
StatusNet, Inc. with Evan Prodromou as lead developer.
Matt Lee's avatar
Matt Lee committed
51 52 53 54

It is shared with you in hope that you too make an
service available to your users. To learn more,
please see the Open Software Service Definition
aroquen's avatar
aroquen committed
55
1.1: <http://www.opendefinition.org/ossd>
Matt Lee's avatar
Matt Lee committed
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82

### License

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public
License along with this program, in the file "COPYING".  If not, see
<http://www.gnu.org/licenses/>.

    IMPORTANT NOTE: The GNU Affero General Public License (AGPL) has
    *different requirements* from the "regular" GPL. In particular, if
    you make modifications to the GNU social source code on your server,
    you *MUST MAKE AVAILABLE* the modified version of the source code
    to your users under the same license. This is a legal requirement
    of using the software, and if you do not wish to share your
    modifications, *YOU MAY NOT INSTALL GNU SOCIAL*.

Documentation in the /doc-src/ directory is available under the
Creative Commons Attribution 3.0 Unported license, with attribution to
aroquen's avatar
aroquen committed
83
"GNU social". See <http://creativecommons.org/licenses/by/3.0/> for details.
Matt Lee's avatar
Matt Lee committed
84 85 86

CSS and images in the /theme/ directory are available under the
Creative Commons Attribution 3.0 Unported license, with attribution to
aroquen's avatar
aroquen committed
87
"GNU social". See <http://creativecommons.org/licenses/by/3.0/> for details.
Matt Lee's avatar
Matt Lee committed
88 89 90 91

Our understanding and intention is that if you add your own theme that
uses only CSS and images, those files are not subject to the copyleft
requirements of the Affero General Public License 3.0. See
aroquen's avatar
aroquen committed
92
<http://wordpress.org/news/2009/07/themes-are-gpl-too/>. This is not
Matt Lee's avatar
Matt Lee committed
93 94 95 96 97 98 99 100 101 102
legal advice; consult your lawyer.

Additional library software has been made available in the 'extlib'
directory. All of it is Free Software and can be distributed under
liberal terms, but those terms may differ in detail from the AGPL's
particulars. See each package's license file in the extlib directory
for additional terms.

## New this version

103 104
This is the development branch for the 1.2.x version of GNU social.
All daring 1.1.x admins should upgrade to this version.
Matt Lee's avatar
Matt Lee committed
105

106 107
So far it includes the following changes:

108 109 110 111 112
- Backing up a user's account is more and more complete.
- Emojis 😸 (utf8mb4 support)

The last release, 1.1.3, gave us these improvements:

113 114 115
- XSS security fix (thanks Simon Waters, <https://www.surevine.com/>)
- Many improvements to ease adoption of the Qvitter front-end <https://github.com/hannesmannerheim/qvitter>
- Protocol adaptions for improved performance and stability
116 117

Upgrades from _StatusNet_ 1.1.1 will also experience these improvements:
Matt Lee's avatar
Matt Lee committed
118 119 120 121 122 123 124

- Fixes for SQL injection errors in profile lists.
- Improved ActivityStreams JSON representation of activities and objects.
- Upgrade to the Twitter 1.1 API.
- More robust handling of errors in distribution.
- Fix error in OStatus subscription for remote groups.
- Fix error in XMPP distribution.
125
- Tracking of conversation URI metadata (more coherent convos)
126

Matt Lee's avatar
Matt Lee committed
127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142
### Troubleshooting

The primary output for GNU social is syslog,
unless you configured a separate logfile. This is
probably the first place to look if you're getting
weird behaviour from GNU social.

If you're tracking the unstable version of
GNU social in the git repository (see below), and you
get a compilation error ("unexpected T_STRING") in
the browser, check to see that you don't have any
conflicts in your code.

### Unstable version

If you're adventurous or impatient, you may want
143 144 145
to install the development version of GNU social.
To get it, use the git version control tool
<http://git-scm.com/> like so:
Matt Lee's avatar
Matt Lee committed
146

147
    git clone git@git.gnu.io:gnu/gnu-social.git
Matt Lee's avatar
Matt Lee committed
148

149 150 151 152
In the current phase of development it is probably
recommended to use git as a means to stay up to date
with the source code. You can choose between these
branches:
153
- 1.2.x     "stable", few updates, well tested code
154 155
- master    "testing", more updates, usually working well
- nightly   "unstable", most updates, not always working
Matt Lee's avatar
Matt Lee committed
156

157
To keep it up-to-date, use 'git pull'. Watch for conflicts!
Matt Lee's avatar
Matt Lee committed
158 159 160

## Further information

161
There are several ways to get more information about GNU social.
Matt Lee's avatar
Matt Lee committed
162

163 164 165 166
* The #social IRC channel on freenode.net <https://www.freenode.net/>.
* The unofficial XMPP room linked to IRC on <xmpp:gnusocial@conference.bka.li>
* The GNU social website <https://gnu.io/social/>
* Following us on GNU social -- <https://quitter.se/gnusocial>
Matt Lee's avatar
Matt Lee committed
167 168

* GNU social has a bug tracker for any defects you may find, or ideas for
169 170
  making things better. <https://git.gnu.io/gnu/gnu-social/issues/>
* Patches are welcome, preferrably to our repository on git.gnu.io. <https://git.gnu.io/gnu/gnu-social>
Matt Lee's avatar
Matt Lee committed
171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228

Credits
=======

The following is an incomplete list of developers
who've worked on GNU social, or its predecessors
StatusNet and Free Social. Apologies for any
oversight; please let mattl@gnu.org know if
anyone's been overlooked in error.

## Project Founders

* Matt Lee (GNU social)
* Evan Prodromou (StatusNet)
* Mikael Nordfeldth (Free Social)

Thanks to all of the StatusNet developers:

* Zach Copley, StatusNet, Inc.
* Earle Martin, StatusNet, Inc.
* Marie-Claude Doyon, designer, StatusNet, Inc.
* Sarven Capadisli, StatusNet, Inc.
* Robin Millette, StatusNet, Inc.
* Ciaran Gultnieks
* Michael Landers
* Ori Avtalion
* Garret Buell
* Mike Cochrane
* Matthew Gregg
* Florian Biree
* Erik Stambaugh
* 'drry'
* Gina Haeussge
* Tryggvi Björgvinsson
* Adrian Lang
* Ori Avtalion
* Meitar Moscovitz
* Ken Sheppardson (Trac server, man-about-town)
* Tiago 'gouki' Faria (i18n manager)
* Sean Murphy
* Leslie Michael Orchard
* Eric Helgeson
* Ken Sedgwick
* Brian Hendrickson
* Tobias Diekershoff
* Dan Moore
* Fil
* Jeff Mitchell
* Brenda Wallace
* Jeffery To
* Federico Marani
* mEDI
* Brett Taylor
* Brigitte Schuster
* Siebrand Mazeland and the amazing volunteer translators at translatewiki.net
* Brion Vibber, StatusNet, Inc.
* James Walker, StatusNet, Inc.
* Samantha Doherty, designer, StatusNet, Inc.
229
* Simon Waters, Surevine
230
* Joshua Judson Rosen (rozzin)
Matt Lee's avatar
Matt Lee committed
231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250

### Extra special thanks to the GNU socialites

* Craig Andrews
* Donald Robertson
* Deb Nicholson
* Ian Denhart
* Steven DuBois
* Blaine Cook
* Henry Story
* Melvin Carvalho

Thanks also to the developers of our upstream
library code and to the thousands of people who
have tried out GNU social, told their friends, and
built the fediverse network to what it is today.

### License help from

* Bradley M. Kuhn