Copyleft
El copyleft es un método general para hacer un programa (u otro tipo de trabajo) libre, exigiendo que todas las versiones modificadas y extendidas del mismo sean también libres.
La forma más simple de hacer que un programa sea libre es ponerlo bajo dominio público, sin derechos de autor. Esto permite a la gente compartir el programa y sus mejoras si así lo desean. Pero también permite que gente no tan cooperativa convierta el programa en software privativo. Pueden realizarse tantos cambios como se quiera y
distribuir el resultado como un producto privativo. Las personas que reciben el programa con esas modificaciones no tienen la libertad que el autor original les dio, ya que han sido eliminadas por el intermediario.