Is an SDPX header legally equivalent to a license header? I consider to use SDPX headers in stead of the full license headers in my code. However, I wonder whether this is actually legally equivalent. So, for context, this is the SDPX license list: https://spdx.org/licenses/ The header of my code would then not look like this: # Licensed to the Apache Software Foundation (ASF) under one # or more contributor license agreements. See the NOTICE file # distributed with this work for additional information # regarding copyright ownership. The ASF licenses this file # to you under the Apache License, Version 2.0 (the # &quot;License&quot;); you may not use this file except in compliance # with the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, # software distributed under the License is distributed on an # &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. but like this: # SPDX-License-Identifier: Apache-2.0 I can't really find anything on the web page of SDPX on this. The license header is pretty obvious in stating the main terms and conditions of the license, in a human readable way, while SDPX defines a key one can use to refer to a license, but then you have to know the convention. So I could imagine they may be legally different. I know there is no such thing as international copyright law, but it would be useful to have an idea why those are or are not equivalent and what typically differences would be. Would there? Of course, this is all apart from having a LICENSE file shipped with the code, and probably other requirements that are put on my code if I want to correctly use SPDX.
First off: Legally, everything is copyrighted anyway. Licensing is not at all necessary. Hence, even if a court would disagree with # SPDX-License-Identifier: Apache-2.0, that would just make it closed source. Having said that, the law generally doesn't bother with trivialities such as &quot;file headers&quot;. Any commonly accepted way to state the copyright and license terms is OK. Your LICENSE is such a common convention. If you want to avoid all doubt what is covered under that license, put a reference to that LICENSE in each header. If you have just five files in one directory that are all licensed the same, I wouldn't even bother with that. Again, the default position is that everything is closed source.
Yes. The license itself is really just one sentence long, and states explicitly that this is allowed. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
You're not going to find an OSI-approved or FSF-approved license that meets your needs because these licenses comply with the OSI definition or FSF definition of open-source software, and your requirements don't. Looking at your requirements, it looks like you want a license where users can modify the software and use it for private use, but cannot use it for commercial use. I ran a search on TL;DR Legal to see what licenses match. There are some one-off licenses that appear to be written by individuals or groups or written by companies that explicitly call out a particular software package. One appears to be a modification of the Apache License. I wouldn't recommend simply using one of these without not only reading them thoroughly yourself, but also consulting a lawyer - just because they started with a license that is trusted doesn't mean that a change they made didn't cause problems if it were to be challenged. For a project hosted on GitHub, it doesn't need to be open-source. You can upload a project that is all rights reserved, but by using GitHub, you do need to allow others to view and fork your repository. However, I wouldn't expect many outside contributors. Why should I give you my hard work if you're just going to turn around and make money on it? That's essentially free labor. I'm not aware of any listing of vetted licenses that are designed for commercial use of software, like how the OSI and FSF maintain lists of licenses. There is a Binpress license generator, but again, it's not a vetted license. How much stake you put into license generator or some random license you find on the Internet is up to you and the level of risk that you find acceptable. If you want to make money on your open-source software, you may want to rethink your approach. In my experience, I've usually seen dual licensing achieve this. One license is a custom written commercial license while the other is a very strong copyleft license, like GPL or AGPL (depending on how you intend your software to be used), which forces companies to also open-source their software if they use yours. It doesn't explicitly prevent commercial usage, but many companies will either look for an alternative that has a more permissive license or purchase the commercial license to prevent their software from being required to be open-source as well. You may also be interested in questions on Open Source about how to monetize open-source projects. There are options out there - selling support and maintenance or related services or selling additional documentation or examples. Under this model, all of your software is free and open source under any of the well-known open-source software licenses, but you make money supporting users of the software.
In the United States, the case law on framing as copyright infringement is fairly scarce and somewhat conflicting. Consider first the 2007 Ninth Circuit Appeals ruling in Perfect 10 vs. Amazon.com. Google included framed images on their site. Google did not have the right to display these image works, but the ruling says ultimately that they did not display the works (emphasis mine): Instead of communicating a copy of the image, Google provides HTML instructions that direct a user’s browser to a website publisher’s computer that stores the full-size photographic image. Providing these HTML instructions is not equivalent to showing a copy. First, the HTML instructions are lines of text, not a photographic image. Second, HTML instructions do not themselves cause infringing images to appear on the user’s computer screen. The HTML merely gives the address of the image to the user’s browser. The browser then interacts with the computer that stores the infringing image. It is this interaction that causes an infringing image to appear on the user’s computer screen. Perfect 10 argues that Google displays a copy of the fullsize images by framing the full-size images, which gives the impression that Google is showing the image within a single Google webpage. While in-line linking and framing may cause some computer users to believe they are viewing a single Google webpage, the Copyright Act, unlike the Trademark Act, does not protect a copyright holder against acts that cause consumer confusion. Note that this second paragraph highlights that iframe linking may not be a copyright violation, but it may be illegal for other reasons, e.g., trademark violation, by confusing the origin of the framed content. This ruling appears to be in contradiction to the 1998 district court case Futuredontics Inc. v. Applied Anagramic Inc., which found that framing creates a derivative work. The most striking difference from the Perfect 10 case is in the following passage (emphasis mine): Defendants primarily rely on Louis Galoob Toys, Inc. v. Nintendo of America, Inc. [...]. In that case, the Ninth Circuit held that a Game Genie which merely enhances audiovisual displays which originate in Nintendo game cartridges does not constitute a derivative work because... it does "not incorporate a portion of a copyrighted work in some concrete or permanent form." Id. at 968 (emphasis added). The Court also noted that the Game Genie could not duplicate or recast a Nintendo game's output. Galoob did distinguish Mirage and noted that the Mirage decision would have been different had the plaintiff "distributed lenses that merely [*10] enabled users to view several art works simultaneously." Id. Nevertheless, Galoob... is distinguishable from the instant case. Galoob does not foreclose Plaintiff from establishing that AAI's web page, incorporates Futuredontic's web page in some "concrete or permanent form" or that AAI's framed link duplicates or recasts Plaintiff's web page. There appears to be a fundamental disagreement between these two cases over whether a webpage that includes a link actually "displays" the linked work. The Perfect 10 ruling viewed the page as HTML instructions that were only related to linked works insofar as those instructions could cause a user's browser to render framed content from a copyright holder different from the author of the HTML page. By contrast, the Futuredonics case considered the intended rendered output of a browser as a derivative work that includes the framed page in a "concrete or permanent form" and that "duplicates" the framed page. I'm not sure how to reconcile these two cases. Perfect 10 is more recent and from a higher court, but I'm insufficiently skilled in law to determine if and how that counts for anything. It's also possible that facts of the two cases are sufficiently different that the different rulings could be reconciled and both remain true simultaneously. Now that we've considered the case law, if you will indulge me in a moment of armchair speculation, let us consider an interesting hypothetical. Suppose I am the owner of apsillers.com. I host an HTML page on my site at http://apsillers.com/my_favorite_stories.html. My my_favorite_stories.html page frames a public domain resource at http://example.com/PD_Story.html. (I am not the owner of example.com.) Surely, we can agree that this is not copyright infringement. At a later time, the owner of example.com changes the text at http://example.com/PD_Story.htmlto include copyrighted content whose use by me would constitute infringement. My my_favorite_stories.html page remain totally unaltered. Does my_favorite_stories.html now violate copyright? The Perfect 10 ruling says no, because my_favorite_stories.html is only instructions. The Futuredontics ruling would appear to say yes, because it considers the final rendered output of the HTML, which now suddenly includes infringing content. It seems powerfully counterintuitive that the infringing status of my written work (my_favorite_stories.html) should change, dependent on the copyright status of a linked resource, when the content of my written work has remained totally unaltered. Perhaps you might argue that my case is different because I did not intend at the time I wrote my HTML page to infringe copyright. However, intent is irrelevant in making the initial yes/no determination of infringement (but may grant me a lesser punishment, as it would be innocent infringement.)
Yes, that’s allowed. Under the Stack Exchange terms of service, content you upload is licensed to Stack Exchange Inc. on a non-exclusive basis under CC-BY-SA 4.0. The terms of service do not give Stack Exchange the copyright to your contributions, and a non-exclusive license means you are not promising Stack Exchange that “only Stack Exchange will be allowed to use this content.” That means you can continue to do whatever you want with your own content and do not need to mention Stack Exchange at all. The only restriction is that you can’t stop Stack Exchange from continuing to use your Stack Exchange content under CC-BY-SA 4.0, and since it’s a Creative Commons license you also can’t stop anyone else from using your Stack Exchange content under that license.
Unknown based on what you have posted in your question. But answer lies in the terms under which the source code is made available or licensed. The most common scenario is that such &quot;sample&quot; source code is provided as help to the purchaser of their product and you'll often see things that permit its use in conjunction with the hardware product. You'll also often see disclaimers that say the code is for demonstration purposes only and it not warrantied to do anything at all. But again, you'll need to review the actual language under which the code is provided and then understand and follow its terms and conditions.
Disclaimer: I'm not a lawyer. This advice may be materially inaccurate. What does redistribution mean? Redistribution means you have somehow caused the software to make its way to another person. Things that probably count as distribution: Placing the file on a public website. Printing the binary in hex onto paper and giving that paper to someone else. Putting the file onto a USB drive and handing it to someone. Putting the file onto your own computer, then giving that computer to someone else. Putting the file onto a shared network drive. Things that probably don't count as distribution: Copying the files onto your own computer(s) Compiling the program Placing the program on your phone. Printing out the source code on paper, but not sharing it. As a practical matter, I recommend ensuring that BSD license accompanies any instances of the software, even if you don't intend to distribute those instances. If you don't distribute it, then nobody will see it. If you &quot;inadvertently&quot; distribute the software, then including the license means you are in compliance. Should you include the license in the exe or in the same folder: The specific clause is: Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. Including the license in the exe (e.g., via some sort of credits menu) is typically fine. I'll note that this is the approach used by Chrome (help-&gt;about chrome has a link to &quot;other open source software&quot; which includes these licenses). This approach works well for software which makes use of an installer, since users probably won't be looking in the install folder. Including the license in the folder adjacent to the exe is also typically fine. If your application does not have an install process (e.g., installed via xcopy deployment), then this approach works well, since users will easily be able to find the license. If your software is sold in a physical box, then printing out the license and including that license inside the box also works. What if I violate the license by not including the BSD terms? If you violate the license, you are subject to a lawsuit for copyright violation. What happens next depends on how the copyright owners wishes to proceed: Some copyright owners will sue. The actual results/penalties for such a violation will depend on a variety of factors. Some copyright owners will ask you to comply with the license. If you respond by apologizing and then complying, that's as far as it will go. Some copyright owners will ask you for money (with threat of lawsuit). I would expect this result if the copyright owners offers a dual-licensing scheme (i.e., where you can pay the copyright owner to exclude the acknowledgement).
If you aren't including those libraries, then yes because it's entirely your own work. If you are publishing those libraries, then no because their licenses will limit how you can do that. GPL's and MIT's main features are restricting how you can distribute software that includes the licensed code, and they don't allow the &quot;do whatever you want&quot; of public domain.