matomo-org / matomo

Empowering People Ethically with the leading open source alternative to Google Analytics that gives you full control over your data. Matomo lets you easily collect data from websites & apps and visualise this data and extract insights. Privacy is built-in. Liberating Web Analytics. Star us on Github? +1. And we love Pull Requests!
https://matomo.org/
GNU General Public License v3.0
19.73k stars 2.63k forks source link

Piwik to become official GNU package #5276

Closed mattab closed 6 years ago

mattab commented 10 years ago

Piwik was asked by Richard Stallman and FSF, whether we would like to make Piwik a GNU package:


[[[ To any NSA and FBI agents reading my email: please consider    ]]]
[[[ whether defending the US Constitution against all enemies,     ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]

Would you like to make Piwik a GNU package?

See below comments for more info.

Steps

General changes to Piwik:

Improve Privacy in Piwik issues suggested by FSF Richard Stallman that we think would help improve Privacy by default in Piwik:

mattab commented 10 years ago

Here's the explanation of what it means for a program to be a GNU package, which also explains the responsibilities of a GNU package maintainer.

============================================================

Making a program GNU software means that its developers and the GNU project agree that "This program is part of the GNU project, released under the aegis of GNU"--and say so in the program.

This means that we normally put the program on ftp.gnu.org (although we can instead refer to your choice of ftp site, as long as it allows connections from anyone anywhere).

This means that the official site for the program should be on www.gnu.org, specifically in /software/PROGRAMNAME. Whenever you give out the URL for the package home page, you would give this address. It is ok to use another site for secondary topics, such as pages meant for people helping develop the package, and for running data bases. (We can make an exception and put the web pages somewhere else if there is a really pressing reason.)

It means that the developers agree to pay attention to making the program work well with the rest of the GNU system--and conversely that the GNU project will encourage other GNU maintainers to pay attention to making their programs fit in well with it.

Just what it means to make programs work well together is mainly a practical matter that depends on what the program does. But there are a few general principles. Certain parts of the GNU coding standards directly affect the consistency of the whole system. These include the standards for configuring and building a program, and the standards for command-line options. It is important to make all GNU programs follow these standards, where they are applicable.

Another important GNU standard is that GNU programs should come with documentation in Texinfo format. That is the GNU standard documentation format, and it can be converted automatically into various other formats. You can use DocBook format or another suitable format for the documentation sources, as long as converting it automatically into Texinfo gives good results.

If a GNU program wants to be extensible, it should use GUILE (http://www.gnu.org/software/guile/guile.html) as the programming language for extensibility--that is the GNU standard extensibility package. For some programs there's a reason to do things differently, but please use GUILE if that is feasible.

A GNU program should use the latest version of the license that the GNU Project recommends--not just any free software license. For most packages, this means using the GNU GPL.

A GNU program should not recommend use of any non-free program, and it should not refer the user to any non-free documentation for free software. The campaign for free documentation to go with free software is a major focus of the GNU project (see http://www.gnu.org/philosophy/free-doc.html); to show that we are serious about it, we must not undermine our position by recommending documentation that isn't free.

Occasionally there are issues of terminology which are important for the success of the GNU project as a whole. So we expect maintainers of GNU programs to follow them. For example, the documentation files and comments in the program should speak of GNU/Linux systems, rather than calling the whole system "Linux", and should use the term "free software" rather than "open source". Since a GNU program is released under the auspices of GNU, it should not say anything that contradicts the GNU Project's views.

For a program to be GNU software does not require transferring copyright to the FSF; that is a separate question. If you transfer the copyright to the FSF, the FSF will enforce the GPL for the program if someone violates it; if you keep the copyright, enforcement will be up to you.

As the GNU maintainer of the package, please make sure to stay in touch with the GNU Project. If we come across a problem relating to the package, we need to tell you about it, and to discuss with you how to solve it. Sometimes we will need to ask you to work with other maintainers to solve a problem that involves using multiple packages together. This probably will happen less than once a year, but please make sure we can contact you in case it does happen.

For details on all policies and recommendations for GNU packages, please see the GNU maintainers information, at http://www.gnu.org/prep/maintain/, and GNU coding standards, at http://www.gnu.org/prep/standards/.

mattab commented 10 years ago

In https://github.com/piwik/piwik/commit/a8fbaf86abc13de414f1e2ceb855a49bb28de593

Piwik is a free/libre analytics platform. Refs #4455 GNU Package requirement to use free/libre instead of open source

mattab commented 10 years ago

Evaluators found these superficial problems. Could you fix them?

Created an issue on the Device detector library: https://github.com/piwik/device-detector/issues/14 so that we write GNU/Linux instead of Linux.

mattab commented 10 years ago

In ef3f037e96fed8fd711843811abc2601de14c2fe: Piwik is a free/libre analytics platform. Refs #5276

mattab commented 10 years ago

In fc3eeee485eb85de42b714fc8a4a0b81773f048a: MIT licenses -> MIT (Expat) Refs #5276

mattab commented 10 years ago

In 66568338216c261668a871e1e41a28c9e755bda8: Adding LibreJS license information in piwik.js Fixes #3770 #5276 https://www.gnu.org/software/librejs/free-your-javascript.html#magnet-link-license

mattab commented 10 years ago

Linux was changed to GNU/Linux in: https://github.com/piwik/devicedetector/commit/a1001f84b6c355a0b708b2efe37af2dab0af4e88

mattab commented 10 years ago

Another suggestion

5052 During installation of Piwik, ask users to enable IP anonymisation for advanced Privacy

For general privacy discussion see #6160

mattab commented 6 years ago

This won't happen

mackuba commented 5 years ago

Hey,

if you gave up on this idea, could you consider reverting https://github.com/matomo-org/device-detector/issues/14? I'd wager that a vast majority of people who use Matomo don't use the term "GNU/Linux" personally and might even be confused by it...

Findus23 commented 5 years ago

@mackuba Personally I have to disagree. Device Detector doesn't detect the kernel itself, but the userspace around GNU and all other software installed. And for people who get confused by this detail there is a icon next to it that shows them that this is the "Linux" they know. grafik

But this isn't really a strong opinion (after all the user agent just says Linux x86_64) and the last thing I want is this to end up as a huge fight.

sgiehl commented 5 years ago

I don't have a opinion on that at all. But it seem to be an ongoing discussion which name is "better". It even has it's own wikipedia page: https://en.wikipedia.org/wiki/GNU/Linux_naming_controversy