The two most common types of licences are “copyleft licences” and “permissive free software licences”.
Copyleft licences require that information necessary for reproducing and modifying the software must be made available to recipients of the “executable” (geek terminology). The source code files usually contain a copy of the licence terms and an acknowledgment of the author. In terms of copyleft the author surrenders some of its rights under copyright law. Instead of allowing the software to fall completely into the public domain, copyleft allows an author to impose some restrictions on those who want to engage in activities usually reserved by the copyright holder. Under copyleft, derived works (eg. variations or developments of the registered software) may be produced provided the derived works are released under a compatible copyleft scheme. The underlying principle is that a person can benefit freely from the work of others, but any modification, variation or modification of the original software made by the person must be released under compatible terms.
The goal of copyleft is to give all users of the software the freedom to copy, distribute and modify (adapt) without restriction. Copyleft licences are distinct from other types of free software licences which do not guarantee that all “downstream” recipients of a program receive these rights, or the source code which is needed to make these rights effective.
A permissive free software licence is a class of free software licence with minimal requirements about how the software should be redistributed. A permissive free software licence allows a redistributor to remove or restrict the right to copy, distribute or modify and does not necessarily require the free distribution of a source code. Thus this type of licence makes no guarantee that future generations or versions of the software will remain free.
It is apparent that it is possible for a permissive free software licence to include a provision that makes it incompatible with a copyleft licence. For example a permissive free software licence could include a clause requiring advertising materials to the credit of the copyright holder.
When an author contributes code to an open-source project the resulting software may be an explicit licence (eg. the contributor’s licence agreement) or an implicit licence (eg. the open source licence). Some open-source projects do not take contributed code under a licence, but actually require (joint) assignment of the author’s copyright in order to accept code contributions into the project (eg. OpenOffice.org and its Joint Copyright Assignment Agreement).
It is difficult to understand the legal implications of the differences between licences. With more than 180,000 open-source projects available and its more than 1400 unique licences, the complexities of deciding how to manage open-source usage within “closed source” commercial enterprises have dramatically increased.
Open-source licences are not necessarily compatible, making it legally impossible to mix (or link) open-source codes under different licences.
Licence compatibility is an issue that arises when licences applied to software packages contain contradictory requirements, rendering it impossible to combine source code or content from such works in order to create new ones.
Commercialisation of derived software incorporating FOSS may not be straightforward. The primary business model for closed-source software involves the use of constraints on the use of proprietary software and the restriction of access to the original source code, requiring the user to purchase the right to use the software. To this end, the source code to closed-source software is considered a trade secret by its manufacturers.
FOSS methods, on the other hand, typically do not limit the use of software in this fashion. Instead, the revenue model is based mainly on support services. The source code of the software is usually given away and can be freely modified. There may be some licence-based restrictions on re-distributing the software. Generally, software can be modified and re-distributed for free, as long as credit is given to the original manufacturer of the software. FOSS based software can generally be sold commercially, as long as the source-code is provided. There are a wide variety of free software licences that define how a program can be used, modified, and sold commercially (see GPL, LGPL, and BSD-type licences).