El software libre es un software cuyo código fuente puede ser estudiado, modificado, y utilizado libremente con cualquier finalidad y redistribuido con cambios o mejoras sobre él.[1] Su definición está asociada al nacimiento del movimiento de software libre, encabezado por el activista y experto informático estadounidense Richard Stallman y la fundación que presidía en 1985,[2] la Free Software Foundation, una organización sin ánimo de lucro que pone la libertad del usuario informático como propósito ético fundamental.[3]
Un software es libre[4] si otorga a los usuarios de manera adecuada las denominadas cuatro libertades: libertad de usar, estudiar, distribuir y mejorar, de lo contrario no se trata de software libre. Existen diversos esquemas de distribución que no son libres, y si bien podemos distinguirlos sobre la base de cuánto les falta para llegar a ser libres, su uso bien puede ser considerado contrario a la ética en todos los casos por igual.
La expresión «software libre» proviene de la expresión del inglés free software, que presenta ambigüedad entre los significados «libre» y «gratis» asociados a la palabra free. Por esto es que suele ser considerado, de manera errónea,[5][6] como software gratuito y no en su acepción más precisa como software que puede ser modificado y compartido sin infringir la licencia. El software libre suele estar disponible gratuitamente, o al precio de coste de la distribución a través de otros medios, sin embargo no es obligatorio que sea así, por lo tanto no hay que asociar software «libre» a «gratuito» (denominado usualmente freeware), ya que, conservando su carácter de libre, puede ser distribuido comercialmente. Análogamente, el software gratis o gratuito incluye en ocasiones el código fuente; no obstante, este tipo de software no es «libre» en el mismo sentido que el software libre, a menos que se garanticen los derechos de modificación y redistribución de dichas versiones modificadas del programa. En este sentido, es importante conocer las implicaciones jurídicas que emanan del uso del software libre.[7]
Software de fuentes abiertas o Software de código abierto es un término que comparte similitudes con software libre. código abierto se define en base a la existencia o no de acceso al código fuente del software, sin considerar o aludir a libertades. Código abierto es un término más amplio que incluye todo el software libre y parte de software no libre.
Tampoco debe confundirse el software libre con «software de dominio público». Este último es aquel que no requiere de licencia, pues sus derechos de explotación son para toda la humanidad, porque permite el acceso a todos por igual. Cualquiera puede hacer uso de él, consignando su autoría original. Este software sería aquel cuyo autor lo dona a la humanidad o cuyos derechos de autor han expirado. Si un autor condiciona su uso bajo una licencia, por muy débil que sea, ya no es del dominio público.