Installing from WordPress.org

The GNU General Public License (GNU GPL or simply GPL) is a series of widely-used free software licenses that guarantee end users the freedom to run, study, share, and modify the software

The GPL was written by Richard Stallman in 1989, for use with programs released as part of the GNU project. The original GPL was based on a unification of similar licenses used for early versions of GNU Emacs (1985), the GNU Debugger, and the GNU C Compiler. These licenses contained similar provisions to the modern GPL, but were specific to each program, rendering them incompatible, despite being the same license. Stallman’s goal was to produce one license that could be used for any project, thus making it possible for many projects to share code.

The second version of the license, version 2, was released in 1991. Over the following 15 years, members of the free software community became concerned over problems in the GPLv2 license that could let someone exploit GPL-licensed software in ways contrary to the license’s intent. These problems included tivoization (the inclusion of GPL-licensed software in hardware that refuses to run modified versions of its software), compatibility issues similar to those of the Affero General Public License, and patent deals between Microsoft and distributors of free and open-source software, which some viewed as an attempt to use patents as a weapon against the free software community.

Version 3 was developed to attempt to address these concerns and was officially released on 29 June 2007.

Terms and conditions

The terms and conditions of the GPL must be made available to anybody receiving a copy of the work that has a GPL applied to it (“the licensee”). Any licensee who adheres to the terms and conditions is given permission to modify the work, as well as to copy and redistribute the work or any derivative version. The licensee is allowed to charge a fee for this service, or do this free of charge. This latter point distinguishes the GPL from software licenses that prohibit commercial redistribution. The FSF argues that free software should not place restrictions on commercial use, and the GPL explicitly states that GPL works may be sold at any price.

The GPL additionally states that a distributor may not impose “further restrictions on the rights granted by the GPL”. This forbids activities such as distributing of the software under a non-disclosure agreement or contract.

Communicating and bundling with non-GPL programs

The mere act of communicating with other programs does not, by itself, require all software to be GPL; nor does distributing GPL software with non-GPL software. However, minor conditions must be followed that ensures the rights of GPL software is not restricted. The following is a quote from the gnu.org GPL FAQ, which describes to what extent software is allowed to communicate with and be bundled with GPL programs:

An “aggregate” consists of a number of separate programs, distributed together on the same CD-ROM or other media. The GPL permits you to create and distribute an aggregate, even when the licenses of the other software are non-free or GPL-incompatible. The only condition is that you cannot release the aggregate under a license that prohibits users from exercising rights that each program’s individual license would grant them.

The FSF thus draws the line between “library” and “other program” via 1) “complexity” and “intimacy” of information exchange, and 2) mechanism (rather than semantics), but resigns that the question is not clear-cut and that in complex situations, case law will decide.

Compatibility and multi-licensing

Code licensed under several other licenses can be combined with a program under the GPL without conflict, as long as the combination of restrictions on the work as a whole does not put any additional restrictions beyond what GPL allows. In addition to the regular terms of the GPL, there are additional restrictions and permissions one can apply:

  1. If a user wants to combine code licensed under different versions of GPL, then this is only allowed if the code with the earlier GPL version includes an “or any later version” statement. For instance, the GPLv3 licensed GNU LibreDWG library can’t be used anymore by LibreCAD and FreeCAD who have GPLv2 only dependencies.
  2. Code licensed under LGPL is permitted to be linked with any other code no matter what license that code has, though the LGPL does add additional requirements for the combined work. LGPLv3 and GPLv2-only can thus commonly not be linked, as the combined Code work would add additional LGPLv3 requirements on top of the GPLv2-only licensed software. Code licensed under LGPLv2.x without the “any later version” statement can be relicensed if the whole combined work is licensed to GPLv2 or GPLv3.

FSF maintains a list of GPL-compatible free software licenses containing many of the most common free software licenses, such as the original MIT/X license, the BSD license (in its current 3-clause form), and the Artistic License 2.0.

See also

  • Free and open-source software portal
  • Anti-copyright
  • Dual-licensing
  • European Union Public Licence (EUPL)
  • GPL font exception
  • GPL linking exception
  • List of software licenses
  • Permissive and copyleft licenses
  • Category:Software using the GPL license

Any Custom Code

You can use the next custom CSS for this

.floating-menu .fm-icon {
  position: relative;
  width: 62px !important;
  height: 62px !important;
  line-height: 62px !important;
}
.floating-menu .fm-icon:after {
  position: absolute;
  bottom: 1px;
  left: 0;
  right: 0;
  font-size: 12px;
  height: auto !important;
  line-height: 1 !important;
  font-weight: 700;
}
.floating-menu li:nth-child(1) .fm-icon:after{
  content: 'Label 1';
}
.floating-menu li:nth-child(2) .fm-icon:after{
  content: 'Label 2';
}
.floating-menu li:nth-child(3) .fm-icon:after{
  content: 'Label 3';
}
.floating-menu li:nth-child(4) .fm-icon:after{
  content: 'Label 4';
}

In the site dashboard:

  1. Go to the page ‘Appearance’->’Customize’
  2. Click ‘Additional CSS’
  3. Add CSS code
  4. Click ‘Published’

Was this helpful?

0 / 0

Leave a Reply 0

Your email address will not be published. Required fields are marked *