Free Software Directory:IceCat WebExtensions (proposed)/Dev
Contents
FAQ
- Q: I cannot find any way to contact the author on the AMO page. How can I contact them?
- A: Mozilla answered: "You can also leave a review, which is email to them, normally. It will be deleted, most likely, but they will get notified" However, do not give low review rating, and never offer to increase the rating in exchange for something.
Memberlist
Project administrators
This list should not be confused with users with admin privileges of this wiki.
- David Hedlund - Project leader
Project members
Candidates
- Author of licenseutils
How to become a contributor?
- Please read the participation guideline.
- Add your name/register to the project members if you decide to be active in this project.
- Decide if you are going to use IceCat: We recommend that you use the endorsed FSF distribution Trisquel GNU/Linux if you are going to evaluate add-ons for IceCat. This is not a requirement though, as you might just want to help solving license issues for which you can use any web browser. Gnu Icecat is developed by Rubén Rodriguez who work for the FSF, who is also the creator of GNU Trisquel. In case of a delayed icecat package you can always download the binary file for GNU/Linux x64 and run it out of the box.
- Subscribe to the bug-gnuzilla mailing list (gnuzilla-dev also found there is optional).
Proof-read
As neither I or Mangeurdenuage speak English natively someone else has to clean up after us.
License guidelines
Verify licenses
- Please verify license for some of the 600 unapproved add-ons. Do _not_ add new entries as we are currently overloaded.
Verifying licenses is the first point that you must look at before even adding the add-on into the list of acceptable add-ons
Places you should observe for license are the following places
- Browse the addons.mozilla.org AMO page with IceCat and look for "Released under".
- The source code, look after a copyright file, or in the source files if you don't find such file.
The file generally has the name "COPYING" or simply "LICENSE" both a plain text you can open them with a text editor.
To download in IceCat you have to right-click on the green "Download now" button and select "Save as" (or "Copy Link Location" if you want to download with wget). You cannot simply click on the Download button: Cross-Platform Installer Module (XPI) is a ZIP file used to install packages, utilizing the XPInstall technology. XPI modules (so called "Bundles") are employed to install a wide variety of software, including Plugins, Extensions, Themes, and Thunderbird dictionaries. - https://developer.mozilla.org/en-US/docs/Mozilla/XPI Decompress the .xpi file or rename it to .zip if your file archiver require that.
- File an issue if the add-on do not qualify.
Example with GNU LibreJS
- https://addons.mozilla.org/en-US/firefox/addon/librejs/ says "Released under GNU General Public License, version 3.0"
- The source code - https://addons.mozilla.org/firefox/downloads/latest/librejs/addon-350590-latest.xpi
- The root directory carry a COPYING file.
- The source files carry license notices:
/** * GNU LibreJS - A browser add-on to block nonfree nontrivial JavaScript. * * * Copyright (C) 2011, 2012, 2014 Loic J. Duros * Copyright (C) 2014, 2015 Nik Nyby * * This file is part of GNU LibreJS. * * GNU LibreJS is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * GNU LibreJS 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 General Public License for more details. * * You should have received a copy of the GNU General Public License * along with GNU LibreJS. If not, see <http://www.gnu.org/licenses/>. */
- Thus GNU LibreJS should remain approved, otherwise we would file an issue.
File license issues
- Search "License" submitted issues on GitHub for example. If no such issue exist, then please create it and label the message "License issues".
- For GitHub submitted issues make sure there is a separate comment with "[mylabel:AMO]" (including the square brackets but excluding the quotes) so we can it. The comment has to be new as GitHub do not re-index old comments, so you cannot edit old comments to track it.
You must copy and edit the Template before you send it to the add-on maintainer:
- Replace (including [])
- [FULL_SOFTWARE_NAME] (not package name)
- [WIKI_FULL_SOFTWARE_NAME]
- [addons.mozilla.org_ENTRY]
- [LICENSE]
- [LICENSE LICENSE_VERSION]
- [LICENSE_LINK]
- Delete unhelpful items
It is unhelpful to say, "has one or more of the issues listed below." If you want to succeed in motivating them to fix problems, you should always give them ALL the information THAT YOU HAVE about those problems.
So you should delete the items that are not pertinent to the case at hand.
- Send the message to the maintainer and wait for response.
- If a developer says, "I would install this but I don't have time to
work on this", please ask if you can you make the changes and send them to the developer, that will make for a lot more progress.
Template
I'm working as a volunteer for the Free Software Directory. Your program is free software so in principle it should be listed there, and I'd like to add it. But it has some problems in showing what its license is. Would you please fix them, for the sake of users and other developers? Once your version with fixed license issues is public available on [addons.mozilla.org_ENTRY] we will review it, and if it meet our requirement I will approve http://directory.fsf.org/wiki/[WIKI_FULL_SOFTWARE_NAME]. Once approved it will be listed on the official GNU IceCat add-on list at https://directory.fsf.org/wiki/IceCat. GNU IceCat is the GNU variant of Firefox. See https://addons.mozilla.org/en-US/firefox/addon/librejs/ if you want to study a well licensed add-on. # Issues ## License not displayed [addons.mozilla.org_ENTRY] do not list "Released under". ## No full license file There are no full copy of the license file The root directory don't have a COPYING file with a copy of the software license. A plain text version of [LICENSE LICENSE_VERSION] can be found here: [LICENSE_LINK] ## Lack of full license headers in each file There are no (full) license notices in the non-trivial source files The source files in [FULL_SOFTWARE_NAME] don't have notices saying you are the copyright holder and/or that they are released under [LICENSE LICENSE_VERSION]. I'm writing to ask you to please put a notice on each nontrivial source file. Selecting a license on a website that hosts the add-on (like addons.mozilla.org), will only show it there, the source files won't be modified. First, here's why license notices are needed. The purpose of a license notice is to state formally that a certain file may be used under the terms of a particular license. The [LICENSE], like most free software licenses, applies to whatever material is released under that license. It does not say anything about which programs are released that way. Therefore, simply including a copy of the [LICENSE] with some code does not release the code under the terms of the [LICENSE]. To do that, you need a license notice, which says, more or less, "We the copyright holders release this code under the [LICENSE]." The source files should be accompanied by a copyright notice, which says who "we" copyright holders are. That takes the form "Copyright YEAR NAME". For the [LICENSE], there are two other reasons for a license notice: to say which version of the [LICENSE] applies, and (for [LICENSE LICENSE_VERSION]), to say whether the [LICENSE]'s option of GPL compatibility applies. It is enabled by default in [LICENSE LICENSE_VERSION], but users should have an explicit statement of where things stand for any particular code. The license notice is where you specify this. Why should the license notice be on _each_ source file? Because doing it at the package level is error-prone. In the free software community, it is not unusual to copy a file from a free program into some other context. If the source file doesn't have its own license notice, then its licensing comes from the original context. In the other context, its licensing may not be clear. It may not be stated at all, or it could be stated wrong. For instance, what if the other program says, "This program is released under Apache 2.0", or "This program is released under GNU GPL, version 3 or any later version published by the Free Software Foundation." The result would be to misinform users about the file's licensing. People sometimes copy part of a file, too. If the file has a license notice, people know to preserve that notice when copying part of the file's code. Otherwise, the licensing will probably get lost. A different problem can happen if you copy code _into_ [FULL_SOFTWARE_NAME] from some other package. Your package-level license notice would say it is under [LICENSE LICENSE_VERSION], but what if it actually carries some other license, such as Apache 2.0, or GPL Version 3 or later? Keeping a license notice in each file is the way to reliably show users what their rights are. Please don't let uncertainty creep in. You've made a decision about the license -- would you please announce it in a way that won't get forgotten? Other people can use your work with bad intentions, even if the mistake were honestly unintentional. That is why, unfortunately, we have to take lots of time with verifying the legality of everything. See https://www.gnu.org/licenses/gpl-howto.en.html for how to apply license notices. # Licenseutils * sudo apt-get install licenseutils * Licenseutils [0.0.8 can edit .js](https://savannah.nongnu.org/bugs/index.php?49441#comment24) files (see [patch](http://git.savannah.gnu.org/cgit/licenseutils.git/commit/?id=0d365160cc0fb6d0ed5eb26cf6e762278867e653)). If you use a earlier version you need to temporary rename your .js files to .cpp (Javascript comments are the same as c++) until JS have been implemented (see [fix](https://savannah.nongnu.org/bugs/?49441)) and then rename them back to .js. * Run this but with your name/copyright year/license: licensing notice -c 'Yoyodyne,\ Inc.\ 2001' -l gpl -s c -n *.cpp # References These issues are compatible with the policy listed in [Free Software Directory, Requirements](https://directory.fsf.org/wiki?title=Free_Software_Directory:Requirements).
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page “GNU Free Documentation License”.
The copyright and license notices on this page only apply to the text on this page. Any software or copyright-licenses or other similar notices described in this text has its own copyright notice and license, which can usually be found in the distribution or license text itself.