Editing Licensing
Jump to navigation
Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
{{WIP}} | {{WIP}} | ||
− | [[Source code]] is copyrightable, which means a programmer owns the code they write. How they aim to publish it is up to them, and many licenses assist in this process.<!-- | + | [[Source code]] is copyrightable, which means a programmer owns the code they write. How they aim to publish it is up to them, and many licenses assist in this process.<!-- |
− | + | A copyright license is a legal document that tells people how the software can be used and what limitations come with using it.--> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
==Intellectual property law== | ==Intellectual property law== | ||
Line 29: | Line 20: | ||
===Public domain=== | ===Public domain=== | ||
− | + | Based on the original design of a copyright, the time that a creative work stays protected should be finite; that is, it should expire. Say the protection of a copyright originally lasted fourteen years from the date it was originally conceived in the commonwealth. After those fourteen years, when the copyright "expires", the work becomes '''public domain''' (this is done to incentivize further creation of works). Long-running companies want to continue profiting off of old work, so they often set precedents in modern law that extend this time to as long as ''one hundred years'' for example. In many western countries, companies have a love-hate relationship with the public domain, willfully using works that are under it while preventing their own creative works from being misused. | |
==Legality of emulation== | ==Legality of emulation== | ||
− | + | Mainly as a result of two United States landmark cases, it is considered legal to reverse engineer and emulate any system. More specifically, there were rulings which allowed commercial emulators to profit. Two commercial [[Playstation]] emulators: [[wikipedia:Bleem!|Bleem]] and [[wikipedia:Connectix_Virtual_Game_Station|Connectix Virtual Game Station]] allowed the ability to play ps1 games on pc, something Sony didn't like the sound of, and were sued by Sony around the early 2000's. The results led to modern legal standards regarding emulation as of today. <!--need fact check/source--> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
==Free and open-source software== | ==Free and open-source software== | ||
− | The fundamental concept of free and open source software is an inversion of the regular practice of software developers selling binary code to consumers and businesses. The [[source code]] that goes into developing commercial software isn't open to the public because releasing it would give others a competitive advantage and allow unauthorized ports. This is what is known as proprietary software, named such because it often has a proprietor (i.e. an owner). With free and open source software however, the source is open (hence the term open source) and available to others to use, study, modify, and share, to ensure that a user always has access to these tools. The Linux kernel is at the forefront of the movement, as it is the most active open-source project. (It's not the most widely-recognized, however; that would | + | The fundamental concept of free and open source software is an inversion of the regular practice of software developers selling binary code to consumers and businesses. The [[source code]] that goes into developing commercial software isn't open to the public because releasing it would give others a competitive advantage and allow unauthorized ports. This is what is known as proprietary software, named such because it often has a proprietor (i.e. an owner). With free and open source software however, the source is open (hence the term open source) and available to others to use, study, modify, and share, to ensure that a user always has access to these tools. The Linux kernel is at the forefront of the movement, as it is the most active open-source project. (It's not the most widely-recognized, however; that would be Android and VLC Media Player.) |
The benefit of software being open is that they're easier to port to other platforms by virtue of being open (though that says nothing about the effort required to get it working without bugs). Many of the [[Recommended Emulators|best emulators]] use an open source license, though not all of them do. | The benefit of software being open is that they're easier to port to other platforms by virtue of being open (though that says nothing about the effort required to get it working without bugs). Many of the [[Recommended Emulators|best emulators]] use an open source license, though not all of them do. | ||
Line 76: | Line 41: | ||
===GPL=== | ===GPL=== | ||
− | The GNU General Public License (GNU GPL or just GPL) is one of the most popular open-source licenses in the free software community, and for good reason; it | + | The GNU General Public License (GNU GPL or just GPL) is one of the most popular open-source licenses in the free software community, and for good reason; it's remained one of the strongest copyleft licenses, requiring users to share their contributions (some might say to an insane degree). |
− | + | The GPL has two widespread versions; version 2, written in 1991, and version 3, written in 2007. No one talks about version 1 (1989). The GPL3 was meant to reconcile license compatibility, address software patents, license violations, nullifying DRM by calling it an ineffective technological measure, and the big one; [[wikipedia:Tivoization|Tivoization]], which was a severe flaw they completely missed when drafting the first two versions that allowed Tivo to make use of GPL2 software by sharing its code while preventing unsigned firmware from being loaded on the hardware. The GPL3 prohibits this, which proved to have major problems when Hyperkin tried to incorporate the GPL3-licensed [[RetroArch]] in the [[Retron5]] (among other violations). | |
− | + | ====LGPL and AGPL==== | |
+ | The GPL is not the only license that the Free Software Foundation created; because the GPL2 ended up being overly restrictive in how software could work with it, many open-source libraries needed a less strict license to allow interoperability with commercial software. | ||
− | + | This ended up being solved in two ways; the linking exception found in GNU Classpath's GPL2 license allowed it to not affect the software it would be bundled in, and the Lesser GPL, which is an entire license that was made to make this aspect clearer rather than be an exception. | |
− | |||
− | The GPL | + | The GPL also doesn't account for software used exclusively for consumer-facing servers, so the Affero GPL was made to require web app developers to share the source code of their app to users over the network. |
− | |||
− | |||
− | |||
− | |||
− | |||
===BSD=== | ===BSD=== | ||
Line 104: | Line 64: | ||
The third clause (about advertising) ended up being controversial and was left out of newer licenses, resulting in the familiar three-clause BSD license. FreeBSD and NetBSD removed the fourth clause as basically no one violated that clause, and OpenBSD used a version of the license that details the first two clauses in one paragraph instead of listing them in asterisked bullets. The fact that the licenses are so permissive allowed Sony and Nintendo to use FreeBSD in the PS3, the PS4, and the Switch without having to share the source code. | The third clause (about advertising) ended up being controversial and was left out of newer licenses, resulting in the familiar three-clause BSD license. FreeBSD and NetBSD removed the fourth clause as basically no one violated that clause, and OpenBSD used a version of the license that details the first two clauses in one paragraph instead of listing them in asterisked bullets. The fact that the licenses are so permissive allowed Sony and Nintendo to use FreeBSD in the PS3, the PS4, and the Switch without having to share the source code. | ||
− | The conditions in the BSD license are easy to modify, which makes it an attractive target for those wanting to include the prohibition of commercial use | + | The conditions in the BSD license are easy to modify, which makes it an attractive target for those wanting to include the prohibition of commercial use. [https://github.com/mamedev/historic-mame/blob/master/docs/license.txt The old MAME license] (and by extension [https://github.com/barry65536/FBAlpha/blob/master/src/license.txt FinalBurn Alpha] and [https://github.com/finalburnneo/FBNeo/blob/master/src/license.txt FinalBurn Neo]) is based off of (or was heavily influenced by) this license, which ended up causing a ton of problems in recent times, notably when a libretro port of MAME tried to backport GPL code into old-licensed code, and when the Capcom Home Arcade [[Emulation Boxes|emulation box]] was said to use FinalBurn Alpha ahead of its release (despite its creators not getting permission from all of FBA's developers). |
===Apache=== | ===Apache=== | ||
Line 110: | Line 70: | ||
* It's not as permissive as the BSD because it still requires companies to state any changes they made. | * It's not as permissive as the BSD because it still requires companies to state any changes they made. | ||
− | * It's not as strict as the GPL because it | + | * It's not as strict as the GPL because it also prohibits trademark use. |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
==CLA (Contributor License Agreement)== | ==CLA (Contributor License Agreement)== | ||
Line 150: | Line 84: | ||
todo: answer questions like "can a license be revoked after it has been put in place?" and "is it possible to sell open-source software?" | todo: answer questions like "can a license be revoked after it has been put in place?" and "is it possible to sell open-source software?" | ||
--> | --> | ||
− | |||
− | |||
− | |||
− | |||
[[Category:FAQs]] | [[Category:FAQs]] |