Un logiciel libre est un logiciel dont l'utilisation, l'étude, la modification, la duplication et la diffusion sont universellement autorisées sans contrepartie. Les droits correspondant à ces libertés peuvent être simplement disponibles (comme pour les logiciels du domaine public ) ou établis par une licence dite « libre » basée sur le droit d'auteur ; les licences qui imposent le maintien de ces droits aux logiciels dérivés sont dites « licences copyleft ».
Si la production et la distribution de logiciels libres peuvent être rémunérées, leur utilisation doit rester libre, et donc potentiellement gratuite. Ils sont toutefois à distinguer des freewares (gratuiciels) qui ne sont pas nécessairement libres. La notion de logiciel
Richard Stallman a formalisé la notion de logiciel libre pendant la première moitié des années 1980 puis l'a popularisée avec le projet GNU et la Free Software Foundation (FSF). Les logiciels libres constituent une alternative à ceux qui ne le sont pas, qualifiés de « propriétaires » ou de « privateurs ».
Depuis la fin des années 1990, le succès des logiciels libres, notamment de GNU/Linux, suscite un vif intérêt dans l'industrie informatique et les médias.
La première ébauche de définition est proposée en février 1986 et (outre la distinction entre libre et gratuit qui n'a pas besoin d'être précisé en français) elle est articulée en deux points :
« Premièrement, la liberté de copier un programme et de le redistribuer a vos voisins, qu'ils puissent ainsi l'utiliser aussi bien que vous. Deuxièmement, la liberté de modifier un programme, que vous puissiez le contrôler au lieu qu'il vous contrôle; pour cela, le code doit vous être accessible.»
La Free Software Foundation établit et maintient depuis une définition du logiciel libre basée sur quatre libertés :
La FSF précise quelques points : ces libertés doivent être irrévocables ; possibilité d'en jouir sans devoir prévenir un tiers ; possibilité de redistribuer le programme sous toute forme, notamment compilée, et le code source doit être accessible pour jouir des libertés d'étude et d'amélioration ; possibilité de fusionner des logiciels libres dont on n'est pas soi-même l'auteur. La FSF accepte des restrictions mineures quant à la façon dont un logiciel modifié doit être présenté lorsqu'il est redistribué.
Définitions ultérieures
Le projet Debian, commencé en 1993 avec le soutiens de la Free Software Foundation, a développé Les principes du logiciel libre selon Debian[7] également connus sous l'acronyme DFSG (pour Debian Free Software Guidelines). Proposé en 1997 par Bruce Perens, le coté pratique y est mis en évidence en 10 points, en précisant par exemple : la non-discrimination des utilisateurs et des usages ; les restrictions acceptables en matière de préservation du code source de l'auteur original ; ou encore l'acceptation explicite de la modification du nom d'un logiciel dont on redistribue une modification (On peut noter à ce propos que les noms de plusieurs logiciels libres sont des marques déposées: par exemple Linux, Mozilla ou Apache).
Cette définition établie pour Debian a été reprise en 1998 dans le cadre de l'Open Source Initiative (OSI) pour établir l'Open Source Definition. La terminologie FLOSS est ensuite apparue pour tenter de réunir les notions de logiciel libre et logiciel open source.
« Logiciel libre » et « open source »
Mis à part quelques désaccord sur les fondements philosophiques entre le mouvement pour le logiciel libre et le mouvement pour l'open source, les définitions officielles du logiciel libre par la Free Software Foundation et de l'open source par l'Open Source Initiative renvoient dans la pratique aux mêmes licences, à quelques exceptions mineures près.
Les opérateurs des premiers ordinateurs produits en série prirent l'habitude de former des groupes d'utilisateurs pour partager leurs expériences: SHARE et COMMON pour IBM, DECUS pour Digital Equipment Corporation, etc. En effet, il n'y avait alors pas de ressource pour se former, en dehors des formations dispensées par les fabricants. Ces groupes étaient soutenus par les fabricants eux-mêmes et des modifications de logiciels étaient échangées.
À cette époque, c'était le matériel informatique qui était censé constituer la source de revenus, le logiciel n'étant qu'un moyen d'en faciliter la vente. L'accès au code source était normal, car nul n'achetait un ordinateur sans disposer d'une équipe de programmeurs. Bien avant même la création d'Unix, les milieux professionnels et universitaires s'échangeaient volontiers logiciels et codes sources, et les constructeurs cédaient le leur pour rien jusqu'à ce que les lois antitrust le leur interdisent afin de permettre l'exercice d'une concurrence dans ce domaine. En outre, jusqu'aux années 1970, il n'était pas encore tout à fait clair que le droit d'auteur s'applique aux logiciels.
Par décisions de justice, les constructeurs sont contraints de facturer séparément leurs logiciels au début des années 1970 ; en quinze ans, l'avènement de la micro-informatique va généraliser ce modèle et donner un essor aux éditeurs de logiciels qui s'orientent vers la vente de licences d'utilisation. Un exemple souvent cité pour illustrer ce tournant est une lettre ouverte de Bill Gates aux hobbyistes, leur enjoignant de cesser de copier illicitement les logiciels. Ce même Bill Gates, en obtenant qu'IBM lui laisse les droits du DOS — puis de Windows — et ne commercialise qu'une licence d'usage, deviendra deux décennies plus tard l'homme le plus riche du monde, où il se vend un ordinateur personnel toutes les dix secondes, plus de neuf sur dix étant prééquipés d'un système d'exploitation de Microsoft.
Les constructeurs ont parallèlement restreint l'accès au code source des programmes, car les modifications souvent effectuées par les équipes des clients, rendent problématique le soutien technique à distance (stratégie OCO, object-code only, d'IBM à partir du début des années 1980). Il devient impossible, et dans certains cas interdit, d'étudier, de corriger ou d'améliorer les logiciels acquis. Non seulement l'utilisateur ne peut plus adapter le logiciel à ses souhaits, mais en cas de bug, il se retrouve dépendant du bon vouloir de l'éditeur du logiciel. Enfin, la copie, une opération naturelle pour un ordinateur, devient en règle générale interdite (par défaut,le droit d'auteur interdit la copie non explicitement autorisée).
Les logiciels disponibles uniquement sous ces conditions restrictives deviennent alors la règle, et les logiciels jusqu'alors librement échangés se retrouvent souvent intégrés dans des produits commerciaux figés et non partageables.
Richard Stallman, alors chercheur au laboratoire d'intelligence artificielle du Massachusetts Institute of Technology, ressent profondément ce changement lorsque les collègues, avec qui il travaillait et échangeait des logiciels jusqu'ici, sont engagés à leur tour pour produire des logiciels qu'ils ne pourront plus partager. En 1983 il crée donc le projet GNU, qui a pour objectif de construire un système d'exploitation compatible avec Unix, et dont la totalité des logiciels est librement partageable. Parallèlement aux travaux de développement engagés, Richard Stallman fonde la Free Software Foundation. Afin de donner une assise solide à son projet, Richard Stallman définit précisément la notion de logiciel libre. Et il rédige la licence publique générale GNU (GPL) qui utilise le droit d'auteur pour garantir la pérennité du droit au partage (et donc interdire la possibilité qu'une évolution ne soit plus partageable). La version 3 de cette licence a été réalisée avec l'aide d'Eben Moglen. C'est ainsi qu'il fixe un cadre juridique et encourage le développement du logiciel libre. Le but des logiciels libres est de permettre le partage complet de l'information, d'où la référence à la liberté.
Si Richard Stallman considère bien sûr que les logiciels jusqu'alors librement partageables sont libres, il inclut également les logiciels sous copyleft dans les logiciels libres. L'invention du copyleft (que l'on peut traduire par "gauche d'auteur", par opposition au "droit d'auteur", jeu de mots, en fait, car il est surtout question d'abandonner, de renoncer aux droits, alors que le copyright voulait, après l'avènement de l'imprimerie, réserver à l'auteur original d'une œuvre tout droit de recopie), mis en œuvre par la licence publique générale GNU, permet de résoudre deux exigences apparemment paradoxales: permettre le libre partage d'un logiciel, tout en empêchant son intégration dans des produits non partageables. Les logiciels libres sous copyleft sont donc disponibles sous une licence qui inclut un nombre important de clauses visant à empêcher toute possibilité de rendre le logiciel moins libre en le redistribuant. Ainsi, la GPL exige entre autres que toute redistribution se fasse exactement sous les conditions de la GPL, tant pour le logiciel original que pour les modifications qui auraient été faites, en garantissant l'accès au code source complet pendant plusieurs années.
Les développeurs et utilisateurs de logiciels libres sont indépendants, sans tendance politique particulière, et leurs motivations sont diverses. Ils réalisent ou utilisent des outils fondés sur un mode de production reposant sur la collaboration, l'entraide, le partage, la mutualisation. À ce titre, Bill Gates a comparé les communautés du libre à des "communistes d'un nouveau genre".
Richard Stallman considère que le droit d'auteur, en interdisant d'aider ses amis par une simple copie, en privilégiant l'auteur aux dépens du monde entier, est nuisible pour la société. Pour illustrer le principe du logiciel libre face aux autres logiciels, il compare volontiers cela à la recette de cuisine d'un gâteau :
Accès aux sources
Les libertés d'étudier et améliorer un logiciel supposent un accès au code source du logiciel. L'accès au code source est important car les logiciels sont généralement distribués sous une forme compilée en langage machine, prêts à être exécutés par un ordinateur. Mais le langage machine est très peu lisible et rend l'étude du logiciel excessivement pénible. L'accès au code source a donné lieu à la notion d'Open Source (code source ouvert).
Formats ouverts
Les logiciels libres ont, dans leur grande majorité, tendance à respecter les formats standards ouverts, ce qui favorise l'interopérabilité. Par exemple, le développement du navigateur web Mozilla Firefox s'applique à respecter autant que possible les recommandations émises par le World Wide Web Consortium. De même, OpenOffice.org utilise le format OpenDocument, aux spécifications publiques définies à l'origine par le comité technique d'OASIS et certifié comme norme ISO, incarnant ainsi une valeur pérenne pour les applications bureautiques. L'utilisation de formats ouverts dont l'ensemble des spécifications techniques sont connues, garantit l'accès aux documents numériques archivés.
Toutefois, la préférence pour les formats ouverts, si elle est effectivement constatée, n'est pas un élément de la définition du logiciel libre.
Communautés
La qualité du logiciel est souvent proportionnelle au nombre de développeurs. Plus la communauté de développement s'étend, plus elle devient un gage de qualité et de réactivité. De la même manière, la communauté des utilisateurs, ayant comme rôle principal de faire remonter des dysfonctionnements et des suggestions, a une influence proportionnelle à sa taille.
Sécurité
La sécurité relative des logiciels libres et propriétaires est sujette à débat.