12

If I require a SEO link to my site (with that my software installed) from every installation of my software, does it make my license not FOSS? Can I use GPL components in so licensed software?

Can you recommend an existing license with such the requirement?

I'd formulate it like "You are obliged not to remove or in any way hinder (e.g. adding rel="nofollow" and likewise) the link to the author's site."

6
  • When you mention a SEO link, should we assume that your software is some kind of web server / content management system / static site generator? And that it is written in a way to output the link to your site?
    – Bergi
    Jun 8 at 17:03
  • This is a restriction on the way the software can be used, not on how it can be distributed or derived from. Such a restriction would have no legal effect in a FOSS license even if it were allowed. This is for the same reason a book cannot have a "license page" that says you must wear a hat that advertises the book whenever you read the book. Jun 8 at 22:58
  • @DavidSchwartz: Such a restriction would have a legal effect, but it would also (by the definition of a FOSS license) make that particular license a non-FOSS license. The reason is that "FOSS" is not a legally defined category; it's descriptive. The book example is irrelevant; such a page is pointless for other reasons (US: no consideration, EU: no shrinkwrap licenses)
    – MSalters
    Jun 9 at 11:51
  • @Bergi Yes, it is a site.
    – porton
    Jun 9 at 14:32
  • @MSalters You're kind of missing the point. You can add consideration to the book page -- for example, it can permit you to create derivatve works for personal use and it still wouldn't work to restrict use. This kind of license cannot restrict use because every lawful possessor of the work already has the right to use and these kinds of licenses can't take rights away. Jun 9 at 18:10

4 Answers 4

13

Let's break down this question in parts and start with the FOSS licenses common ground.

The common things about FOSS licenses are that

  • one is required to keep the copyright notices of previous authors.
  • one must not misrepresent another person's work as yours and vice versa (which in essence combines to being honest of who did what).

The GPL as a strong copyleft license goes a step further and additionally requires that

  • any work which makes use of it is also required to distribute the source under the same conditions (and no additonal restrictions!)

Now to the first question, including GPL - licensed components and adding additional restrictions: No, that does not fly. You cannot require active code or advertisement in any specific form. You can only require the proper attribution, and you must keep the conditions on distribution without making them stricter. The GPL FAQ has a few answers on various restriction scenarios.

This might be different, if you include a "library" under the LGPL; in that case you might still be allowed to choose whatever license you fancy provided you allow users to replace the library by whatever they want.

The more permissive licenses have no such restrictions either - they only require proper attribution and allow you to distribute your code even under proprietary licenses (including no distribution).

There cannot be any FOSS license with a restriction of required advertisement like you suggest as it fails the desert island test: such software would not work in an environment where links don't work.

All this said, I'd still recommend to use the GPL. Add an appropriate copyright notice to your files like

(c) 2022 Porton from http://my-fancy-software.example.com/

and if you feel like add these links where you consider them appropriate. Also add in the readme a kind request like

If you like this software and want to help its continued development, please support us by keeping the links to our software or linking us in this form: (add the code snippet)

5
  • 10
    While I agree with most of the answer, I don't see how it need fail the desert island risk. You could specify that the link has to be left in place, but that you're not responsible for it working correctly. This would be fine on a desert island; just a dead link.
    – vidarlo
    Jun 8 at 10:06
  • 7
    @vidarlo I want to use the code in an embedded device which has no UI. Jun 8 at 10:11
  • @PhilipKendall valid point :)
    – vidarlo
    Jun 8 at 10:24
  • 4
    @PhilipKendall: That's fine, just print it in the manual or something. Humans are perfectly capable of typing URLs in by hand. You don't have a manual? Well, then you can't even comply with a permissive license like 2-clause BSD or MIT.
    – Kevin
    Jun 8 at 22:09
  • 1
    For me, this answer focusses far too heavily on what you can/cannot do with the GPL licence, without looking at what is possible with a "similar" licence. It also fails to address the issue of what "FOSS" actually means. Jun 9 at 8:06
17

The idea to force users of the software to advertise the original author is not new. It was first seen in the 4-clause BSD License. There was a lot of criticism about the advertising clause, and it was removed (leading to BSD-3 and BSD-2 licenses). This advertising clause is also incompatible with GPL. I would not recommend anyone to use BSD-4 as the license for any new code.

Obviously, what you can do is to put your URL into the copyright attribution language into a notice.txt file, which will then need to be kept and reproduced by everyone if that is required by the respective license. For example §4 of the Apache 2.0 License includes language enforcing that, and this is GPL compliant. But it might not show up as prominently as you wish, and while your URL in the notice.txt might show up there, it does not necessarily need to be included as a clickable link.

3
  • 1
    +1 from me for an excellent historical point.
    – MadHatter
    Jun 8 at 13:27
  • 2
    @PhilipKendall Thank you for keeping me honest :-) I will remove the word 'soon' from the answer. In this article Richard Stallman says that he first raised the issue in 1996, and it was then fixed in 1999 (3 years, which equals aeons of time in software). Jun 8 at 15:58
  • 1
    It's also worth noting that perhaps the most common description of that advertising clause was the word "obnoxious". It was so reviled that people would actively avoid using software that used that license. So while you might be able to weasel such a restriction into a software license, you could significantly limit your user base in the process.
    – bta
    Jun 9 at 19:05
1

I think the GPL3 allows what you're asking for. Section 7(b) says

Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms:

b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it;

Section 5(d) says

d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so.

"Appropriate Legal Notices" is defined as

An interactive user interface displays “Appropriate Legal Notices” to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion.

Merriam-Webster defines "preservation" as

a: the activity or process of keeping something valued alive, intact, or free from damage or decay

So, if you display a copyright statement, license notice, and attribution to yourself as the author, along with a link to your website, on the "user interface" of your application (the HTML as shown to the end user), the GPL3 allows you to legally require that it be "preserved" on all modified versions, which I believe prohibits both removing and altering the requirement (so adding rel="nofollow" would be illegal modification).

1
  • I believe that "Requiring preservation of specified reasonable legal notices or author attributions" does not necessarily include active hyperlinks. Reasonable author attributions could include in plain text "www.mysite.xyz", but with the so-called 'hyperlink liability' which is in place in some countries I doubt that it would be reasonable to ask for an active hyperlink "http:/ /www. mysite.xyz" as part of the author attributions, as it poses an unforeseeable risk. Jun 14 at 15:20
0

If I require a SEO link to my site (with that my software installed) from every installation of my software, does it make my license not FOSS?

Yes. I'm going to disagree with the other answers and claim that this is outright a non-free license. If the requirement were just to ship an advertisement with the software, it would be "obnoxious" or "odious" like the legacy BSD advertising clause. But if it's actually governing the functionality of the software and requiring you to keep odious functionality that the user does not want, it lacks freedom 1 ("freedom to...change it so it does your computing as you wish") and arguably lacks part of freedom 0.

If the clause only applied to distributing modified versions, including the odious behavior by default in such distribution, it would probably still be FOSS since you could just also include instructions on how to remove it (see some legacy "nasty license" software that only allowed distribution of original source along with patch files, not modified sources) but would still be user-hostile.

4
  • 1
    I don't think anyone is saying this would be a free license; to quote from planetmaker's answer "There cannot be any FOSS license with a restriction of required advertisement like you suggest" Jun 10 at 17:08
  • "If the requirement were just to ship an advertisement with the software, it would be "obnoxious" or "odious" like the legacy BSD advertising clause." Note that the legacy 4-clause BSD license is considered nonfree due to the advertising clause. So even if the link requirement was equally bad or good as the ad clause, it would still be nonfree.
    – ecm
    Jun 10 at 17:28
  • 1
    @ecm: The FSF considers it free but apparently some other orgs don't. Jun 10 at 18:19
  • @R..GitHubSTOPHELPINGICE: You're right, and here's the FSF's take on it. They do note here it is free but GPL-incompatible. I did not remember accurately.
    – ecm
    Jun 10 at 20:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.