Difference between revisions of "Free Software Directory:IceCat WebExtensions (proposed)/Dev"

From Free Software Directory
Jump to: navigation, search
(Created page with "==Introduction== Since the Mozilla foundation encourages the uses of non-free/libre extension. This section is dedicated to the verification of the potential candidates of be...")
 
(Candidates)
 
(67 intermediate revisions by the same user not shown)
Line 1: Line 1:
==Introduction==
+
{{Special:PrefixIndex/Free_Software_Directory:IceCat_WebExtensions_(proposed)/}}
Since the Mozilla foundation encourages the uses of non-free/libre extension.
+
<br />
 +
<hr />
 +
<br />
  
This section is dedicated to the verification of the potential candidates of being compatible with free/libre software use.
+
==FAQ==
 
+
* Q: I cannot find any way to contact the author on the AMO page. How can I contact them?
==What are the conditions for software approval?==
+
* 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.
The software has to:
 
 
 
#To be correctly licensed under a free/libre license (most important)
 
#Be tested and a section created in the software directory
 
 
 
Note: all of these are described in the Guidelines section.
 
  
 
==Memberlist==
 
==Memberlist==
  
 
===Project administrators===
 
===Project administrators===
 +
This list should not be confused with users with admin privileges of this wiki.
 +
 
* [[User:David Hedlund|David Hedlund]] - Project leader
 
* [[User:David Hedlund|David Hedlund]] - Project leader
  
Line 21: Line 19:
  
 
===Candidates===
 
===Candidates===
* [[User:Calinou|Calinou]]
+
* Author of licenseutils
  
 
==How to become a contributor?==
 
==How to become a contributor?==
* Please read the small manual [[Free_Software_Directory:Participate|FSD:Participate]]
+
* Please read the [[Free_Software_Directory:Participate|participation]] guideline.
* And finally add your name/register to the [[Free_Software_Directory_talk:IceCat_extensions_(proposed)#Project_members|project members]] (see the Guidelines to know how to do that).
+
* Add your name/register to the [[#Project_members|project members]] if you decide to be active in this project.
* We recommend that you use Trisquel 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.
+
* Decide if you are going to use IceCat: We recommend that you use the [https://www.gnu.org/distros/free-distros.html 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. [https://www.gnu.org/software/gnuzilla/ Gnu Icecat] is developed by Rubén Rodriguez who work for the FSF, who is also the creator of [https://trisquel.info/ 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 [https://savannah.gnu.org/mail/?group=gnuzilla bug-gnuzilla mailing list] (gnuzilla-dev also found there is optional).
  
Note: [https://www.gnu.org/software/gnuzilla/ Gnu Icecat] is developed by Rubén Rodriguez who work for the FSF, who is also the creator of the [https://www.gnu.org/distros/free-distros.html endorsed FSF distribution] [https://trisquel.info/ GNU Trisquel].
+
==Proof-read==
 +
As neither I or Mangeurdenuage speak English natively someone else has to clean up after us.
  
==Guidelines==
+
==License guidelines==
  
===IRC meetings===
+
===Verify licenses===
To quote the main page of this wiki: '''Join us each week for the Friday Free Software Directory IRC meeting! For details and time, check the [http://www.fsf.org/blogs FSF blog].'''
 
 
 
The directory-discuss mailing-list is not the place to go when we need help with complex issues involving the sysadmins for this wiki. Please work on bugs listed in the bug tracker (see link below) on IRC meetings as the FSD staff is there to assist us.
 
 
 
* [[User:David_Hedlund/Bug_tracker]] - IceCat-related issues on the FSD.
 
 
 
===Licenses===
 
 
 
====Verify licenses====
 
 
* Please verify license for some of the 600 unapproved add-ons. Do _not_ add new entries as we are currently overloaded.
 
* Please verify license for some of the 600 unapproved add-ons. Do _not_ add new entries as we are currently overloaded.
* Add-ons that were listed on addons.mozilla.org without any license were manually downloaded and reviewed. I added them only if the files distributed them as free software. Thus do not remove them from the FSD only because you didn't see the License on addons.mozilla.org.
 
* Please refer to addons.mozilla.org pages if you cannot find any license in the source. Sometimes they add it just on the project page in addons.mozilla.org.
 
  
 
Verifying licenses is the first point that you must look at before even adding the add-on into the list of acceptable add-ons
 
Verifying licenses is the first point that you must look at before even adding the add-on into the list of acceptable add-ons
  
The first verification is done when you first encounter the presentation of it at [https://addons.mozilla.org/ addons.mozilla.org]
+
Places you should observe for license are the following places
 
+
* Browse the [https://addons.mozilla.org/ addons.mozilla.org AMO] page with IceCat and look for "Released under".
Normally on the right of the presentation page you can see the license of the software if, it is not specified you will have to look at:
+
* The source code, look after a copyright file, or in the source files if you don't find such file.
 
 
*The source code repositories
 
*Verify if the license is specified in the source files
 
*Or directly contact the creator
 
 
 
Example:
 
 
 
For this example we will take the [https://addons.mozilla.org/en-US/firefox/addon/librejs/ LibreJS] add-on.
 
 
 
Look at the presentation pages.
 
 
 
You will see that you can download it.
 
 
 
A bit further down on the right you will see four new informations:
 
 
 
#The home page of the add-on
 
#The support site
 
#The support e-mail
 
#and finally the License, in this case you can see that it is "Released under GNU General Public License, version 3.0"
 
 
 
If you select, "the home page of the add-on" or "The support site" you will immediately be redirected to the the same web page.
 
 
 
*Why ?
 
 
 
Because the source codes is hosted at the same place has it's web site presentation page, same thing with the email.
 
 
 
The email is explicitly mentioned on the web-page presentation.
 
 
 
If you go further down in the web-page presentation you can also see that the source codes is also hosted in the [https://www.gnu.org/software/repo-criteria.en.html ethical source code repository] [https://savannah.gnu.org/projects/librejs/ savannah].
 
 
 
Source code can be hosted in multiple areas it's not a problem.
 
 
 
To continue on the verification the second step is to look in the files of the add-on.
 
 
 
Download it via the [https://addons.mozilla.org/en-US/firefox/addon/librejs/ Mozilla LibreJS page] you can use "wget" or do a "right click" on the green "Download now" button and select "Save as".
 
 
 
*Why not simply click on it ?
 
 
 
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
 
 
 
Because the format is a ".xpi" if you make a left click on it Icecat will immediately ask you if you want to install it.
 
 
 
Right now what we are going to do is not an installation but a decompression of the ".xpi" file.
 
 
 
When downloaded just extract it in a folder and open it.
 
 
 
At the root of the directory of the files that you just extracted.
 
 
 
You must have a file that indicates the license of the software.
 
  
 
The file generally has the name "COPYING" or simply "LICENSE" both a plain text you can open them with a text editor.
 
The file generally has the name "COPYING" or simply "LICENSE" both a plain text you can open them with a text editor.
  
That just the preliminary verification of the extraction after that you need to look at the file that contain code and see if the beginning of it
+
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
contains the license.
+
Decompress the .xpi file or rename it to .zip if your file archiver require that.
 +
* [[#File_license_issues|File an issue]] if the add-on do not qualify.
  
If you go in "data/script_detector" and open the file "script_detector.js"
+
====Example with GNU LibreJS====
you can see at the beggining that the license is specified
+
* 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:
 
<pre>
 
<pre>
 
/**
 
/**
Line 131: Line 75:
 
  */
 
  */
 
</pre>
 
</pre>
 +
* Thus [[IceCat/GNU_LibreJS|GNU LibreJS]] should remain approved, otherwise we would file an issue.
  
If any of these point are missing please see the "File an issue" section to... well file an issue to the developers.
+
===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 "&#91;mylabel:AMO&#93;" (including the square brackets but excluding the quotes) so we can [https://directory.fsf.org/wiki/Free_Software_Directory:IceCat_extensions_(proposed)/Add-on_lists#GitHub_tracker|track 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|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]
 +
*** MPL 2.0 - https://www.mozilla.org/media/MPL/2.0/index.txt
 +
* 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.
  
* The most important job you can do is to detect add-ons with [[#License_issues|license issues]].
+
So you should delete the items that are not pertinent to the case at hand.
* If you see "Not available for Firefox xx.x" if you evaluate an add-on in [https://addons.mozilla.org/ addons.mozilla.org] you have to go to the add-on page and click on "Version Information" and then on "See complete version history" to find a version that match your browser version.
+
* Send the message to the maintainer and wait for response.
* Please add "IceCat" but not "Firefox" in the "This an extension, add-on, or plugin to" field in new add-on entrys, as suggested by the FSF.
+
* 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.
  
====File license issues====
+
====Template====
Send this text to the developer.
+
<pre>
 +
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?
  
Replace (including [])
+
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.
* [FULL_SOFTWARE_NAME] (not package name)
 
* [DASH_FULL_SOFTWARE_NAME]
 
* [addons.mozilla.org_ENTRY]
 
* [LICENSE]
 
* [LICENSE LICENSE_VERSION]
 
* [LICENSE_LINK]
 
** MPL 2.0 - https://www.mozilla.org/media/MPL/2.0/index.815ca599c9df.txt
 
  
<pre>
+
See https://addons.mozilla.org/en-US/firefox/addon/librejs/ if you want to study a well licensed add-on.
I'm working as a volunteer for the Free Software Directory. There are a few legal issues to defend your and other users that use your software. If you fix them I'll publish your software at http://directory.fsf.org/wiki/DASH_FULL_SOFTWARE_NAME
 
  
[REMOVE ISSUES THAT ARE NOT RELEVANT TO THE ADD-ON BEFORE YOU SUBMIT IT.]
+
# Issues
  
# License not displayed
+
## License not displayed
 
[addons.mozilla.org_ENTRY] do not list "Released under".
 
[addons.mozilla.org_ENTRY] do not list "Released under".
  
# No full license file
+
## No full license file
  
 
There are no full copy of the license file
 
There are no full copy of the license file
Line 166: Line 124:
 
can be found here: [LICENSE_LINK]
 
can be found here: [LICENSE_LINK]
  
# Lack of license headers in each file
+
## Lack of full license headers in each file
  
There are no license notices in the non-trivial source files
+
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
 
The source files in [FULL_SOFTWARE_NAME] don't have notices saying you are the copyright
Line 190: Line 148:
 
"We the copyright holders release this code under the [LICENSE]."
 
"We the copyright holders release this code under the [LICENSE]."
  
It should be accompanied by a copyright notice, which says who
+
The source files should be accompanied by a copyright notice, which says who
 
"we" copyright holders are.  That takes the form "Copyright YEAR NAME".
 
"we" copyright holders are.  That takes the form "Copyright YEAR NAME".
  
Line 200: Line 158:
 
specify this.
 
specify this.
  
Why should the license notice be on each source file?
+
Why should the license notice be on _each_ source file?
 
Because doing it at the package level is error-prone.
 
Because doing it at the package level is error-prone.
  
Line 228: Line 186:
 
You've made a decision about the license -- would you please announce
 
You've made a decision about the license -- would you please announce
 
it in a way that won't get forgotten?
 
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.
 
See https://www.gnu.org/licenses/gpl-howto.en.html for how to apply license notices.
See https://addons.mozilla.org/en-US/firefox/addon/librejs/ for a well licensed add-on.
 
</pre>
 
  
=====Work in progress=====
 
  
======General purpose======
+
# Licenseutils
* Mozilla [[Test Pilot]]
+
* sudo apt-get install licenseutils
* [[Puzzle Toolbars]] (optimized) - Work in progress - https://github.com/Quicksaver/Puzzle-Toolbars/issues/89
+
* 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.
* [[Session Manager]] - asked RMS to help with license issues
+
* Run this but with your name/copyright year/license: licensing notice -c 'Yoyodyne,\ Inc.\ 2001' -l gpl -s c -n *.cpp
* [[The Addon Bar (Restored)]] (popular) - asked RMS to help with license issues
 
* [[Simple Locale Switcher]]
 
* [[Smart HTTPS]] - RMS asked to help with license issues
 
* [[Locale Switcher]]
 
* Weather
 
** [[Forecastfox (fix version)]]
 
** [[Weather Forecast Plus]]
 
* [[WebToPDF]] - Windows users of IceCat cannot print to PDF unlike IceCat for GNU/Linux.
 
  
=====Todos=====
+
# References
 
+
These issues are compatible with the policy listed in [Free Software Directory, Requirements](https://directory.fsf.org/wiki?title=Free_Software_Directory:Requirements).
======Urgent======
+
</pre>
Started but incomplete extensions that need to be finished so they can be approved by moderators:
 
* Incomplete "Important security extensions" from https://addons.mozilla.org/en-US/firefox/collections/DavidHedlund/
 
** [[CanvasBlocker]]
 
** [[Click&Clean]]
 
** [[Decentraleyes]]
 
** [[Location Guard]]
 
** [[Master Password+]]
 
** [[Media Loop]]
 
** [[PageZipper]]
 
** [[Privacy Settings]]
 
** [[Random Agent Spoofer]]
 
* [https://directory.fsf.org/wiki?search=eID&title=Special%3ASearch eID] add-ons
 
** [[Belgium eID]]
 
** [[EID DSS]]
 
 
 
======IceCatMobile======
 
Gather add-ons from https://addons.mozilla.org/en-US/android/
 
* [[AdBlock for YouTube]]
 
* [[AdBlocker Ultimate]]
 
* [[Adguard AdBlocker]]
 
* [[Decentraleyes]]
 
* [[Flash Video Downloader]]
 
* [[Mobile Password Manager]]
 
* [[Phony]]
 
* [[Remote XUL Manager]]
 
* [[Stylish]]
 
* [[Tor Child Abuse Block]]
 
* [[UnMHT]]
 
* [[URL Fixer]]
 
* [[Youtube Downloader 4K]]
 
 
 
======High priority======
 
Started but incomplete extensions that need to be finished so they can be approved by moderators:
 
* Incomplete extensions from "Respects Your Privacy" - https://addons.mozilla.org/en-US/firefox/collections/DavidHedlund/respects-your-privacy/
 
** [[Advanced Cookie Manager]]
 
** [[Bloody Vikings!]]
 
** [[Cache Status]]
 
** [[Calomel SSL Validation]]
 
** [[Certificate Patrol]]
 
** [[Clear Site Cache]]
 
** [[External IP]]
 
** [[Form History Control]]
 
** [[InformEnter]]
 
** [[JavaScript Deobfuscator]]
 
** [[Master Password+]]
 
** [[New Plugin Disabler]]
 
** [[Password Exporter]]
 
** [[Plugin Disabler]]
 
** [[Private Tab]]
 
** [[Public Fox]]
 
** [[Tor Flashproxy Badge]]
 
** [[UAControl]]
 
** [[ipFlood]]
 
** [[Yet Another Smooth Scrolling]]
 
* Blockers (additional security)
 
** [[Anti-Porn Pro]]
 
** [[LeechBlock]]
 
** [[No Flash]]
 
** [[ProCon Latte Content Filter]]
 
* YouTube add-ons
 
*** [[AdBlock for YouTube]]
 
*** [[Ant Video Downloader]]
 
*** [[Disable HTML5 Fullscreen Alert]]
 
*** [[Download Flash and Video]]
 
*** [[Easy Youtube Video Downloader Express]]
 
*** [[FireTube]]
 
*** [[Flash Video Downloader]]
 
*** [[Ratings Preview for YouTube]]
 
*** [[Stylish]]
 
*** [[Thumbnail Zoom Plus]]
 
*** [[Updated Ad Blocker for Firefox 11+]]
 
*** [[Y++]]
 
*** [[YouTube ALL HTML5]]
 
*** [[YouTube Anywhere Player]]
 
*** [[YouTube Control Center]]
 
*** [[Youtube Downloader 4K]]
 
*** [[YouTube Embed2Link]]
 
*** [[YouTube Flash Video Player]]
 
*** [[YouTube Flash-HTML5]]
 
*** [[YouTube Grid Search and Preview Player]]
 
*** [[YouTube No Buffer]]
 
*** [[Youtube Repeat]]
 
*** [[YouTube Stop AutoPlay Next]]
 
*** [[YouTube Unblocker]]
 
*** [[YouTube Video and Audio Downloader]]
 
 
 
==IceCat testing==
 
 
 
===IceCat 48===
 
Evaluate Mozilla Test Pilot add-ons:
 
* https://testpilot.firefox.com/experiments/tracking-protection
 
* https://testpilot.firefox.com/experiments/no-more-404s
 
 
 
==OpenSearch installation error==
 
Free Software Directory search can be installed from https://addons.mozilla.org/en-US/firefox/addon/fsf-directory/?src=ss but not from [[Free Software Directory search]] (I approved this entry for this test purposes only). --[[User:David Hedlund|David Hedlund]] ([[User talk:David Hedlund|talk]]) 23:56, 16 April 2015 (EDT)
 
 
 
==Heavily undermanned external projects==
 
* Anti-ablock Killer - https://github.com/reek/anti-adblock-killer/issues/2287
 
** You need to know JavaScript to help with this project.
 

Latest revision as of 23:02, 6 August 2020




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.

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.

Example with GNU LibreJS

/**
 * 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 [])
  • 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.