Un patch non officiel , aussi appelé patch communautaire ou patch de fan , est une mise à jour logicielle créée par un tiers, généralement une communauté d'utilisateurs , sans l'intervention du responsable officiel du logiciel (c'est-à-dire le développeur original). Contrairement à d'autres adaptations tierces comme les mods ou les cracks , un patch non officiel ne modifie généralement pas l'utilisation prévue du logiciel.
Un patch non officiel vise généralement à corriger des bugs et à offrir de nouvelles fonctionnalités, comme la prise en charge de systèmes d'exploitation plus récents , de résolutions d'affichage plus élevées et de nouveaux formats d'affichage. Bien que les patchs non officiels soient plus courants pour la plateforme PC, on en trouve également pour les jeux sur console, notamment dans le contexte de l'émulation.
Une traduction amateur est un correctif non officiel qui ajoute la prise en charge du langage naturel à un logiciel. Les traductions amateurs sont surtout courantes pour les jeux de rôle japonais, qui ne sont souvent pas localisés pour les marchés occidentaux.
Un patch de type slipstream combine plusieurs correctifs officiels en un seul package de mise à jour non officiel, pour plus de commodité pour les utilisateurs, lorsque les correctifs individuels ne sont disponibles qu'en ligne ou sous forme de petites mises à jour incrémentales.
L'une des motivations fréquentes pour créer un correctif non officiel est le manque de soutien technique de la part du responsable officiel de la maintenance, ce qui peut résulter de :
- Le logiciel a atteint la fin de vie définie par le responsable de la maintenance
- Le logiciel a été remplacé par un produit successeur
- Le logiciel a été initialement conçu pour fonctionner dans un environnement sensiblement différent et pourrait nécessiter des améliorations/optimisations.
- L'entreprise de maintenance a cessé ses activités
- Le soutien n'est pas économiquement viable (par exemple, la localisation pour les petits marchés).
- Une solution rapide à un problème urgent (par exemple, les failles de sécurité ) lorsqu'une solution officielle prend trop de temps
- Le responsable officiel de la maintenance est incapable de faire face aux problèmes
Méthodes
Le cas le plus fréquent est celui où le code source et les outils de développement d'origine du logiciel sont indisponibles. Par conséquent, le binaire du logiciel défectueux doit être analysé à l'exécution par rétro-ingénierie et débogage . Si le problème est identifié, un correctif doit être appliqué au programme. Parfois, de simples modifications des fichiers de configuration ou du registre suffisent ; parfois, des modifications plus poussées du binaire lui -même sont nécessaires pour corriger les bogues. Si un kit de développement logiciel (par exemple, pour le modding) est disponible, les correctifs peuvent être facilement créés ; sinon, la communauté devra développer ses propres outils. Ces correctifs sont généralement regroupés dans des patchs déployables par l'utilisateur (par exemple avec NSIS ou InnoSetup ).
Si le code source est disponible, le support peut être fourni de manière optimale. Parfois, le code source est publié intentionnellement , parfois par fuite ou par erreur , comme ce fut le cas pour le moteur de jeu de la série Thief . Il arrive même que des fans parviennent à reconstituer intégralement le code source à partir du binaire du programme original . Grâce au code source disponible, le support de plateformes récentes, même très différentes, via des ports de code source, devient possible.
Loi
Bien qu'aucune affaire judiciaire n'ait directement abordé les conséquences juridiques des correctifs non officiels, des cas similaires ont été traités sur des questions connexes. Dans l'affaire Galoob c. Nintendo, il a été jugé que l'application d'un correctif non autorisé à un système par un utilisateur ne constituait pas une violation du droit d'auteur (bien que la portée de cette affaire fût très spécifique au Game Genie ). En revanche, dans l'affaire Micro Star c. FormGen Inc., il a été jugé que les cartes créées par les utilisateurs étaient des œuvres dérivées du jeu original. Dans l'affaire Sega c. Accolade , la Cour d'appel du neuvième circuit a statué que la réalisation de copies dans le cadre d' une ingénierie inverse constitue un usage loyal, lorsqu'il s'agit du seul moyen d'accéder aux « idées et éléments fonctionnels » du code protégé par le droit d'auteur, et lorsqu'« il existe une raison légitime de rechercher un tel accès ». Selon la loi américaine sur le droit d'auteur (17 USC § 117), le propriétaire d'une copie d'un programme peut la modifier si nécessaire à des fins de « maintenance ou de réparation » , sans l'autorisation du titulaire du droit d'auteur ; un argument également avancé par Daniel J. Bernstein, professeur à l' Université de l'Illinois à Chicago .
Des droits d'utilisateur similaires sont également accordés en vertu du droit d'auteur européen. La question de savoir si les modifications non autorisées apportées à un logiciel protégé par le droit d'auteur et acquis légalement relèvent de l'usage loyal reste un point de droit controversé. Un article du cabinet d'avocats Helbraun indique, dans le contexte des traductions réalisées par des fans, que si la redistribution de jeux complets avec des adaptations ne relève probablement pas de l'usage loyal, la distribution des modifications sous forme de patch pourrait être légalement autorisée ; toutefois, cette conclusion n'a pas encore été testée devant les tribunaux.
Réception
L'accueil réservé aux correctifs non officiels est mitigé, mais dans l'ensemble, les détenteurs de droits d'auteur se montrent ambivalents. Lorsque le logiciel n'est pas jugé commercialement viable, les correctifs non officiels sont ignorés par le détenteur des droits d'auteur, car ils ne sont pas perçus comme une source de manque à gagner. On a rarement recensé des cas de mises en demeure adressées à des projets de correctifs non officiels et de traductions amateurs.
Il arrive que le détenteur des droits d'auteur soutienne activement les efforts de correction et d'amélioration des logiciels développés par la communauté logicielle , voire même en publiant le code source sous une licence logicielle qui permet à cette communauté d'assurer elle-même le support du logiciel . On trouve des exemples de tels logiciels dans la Liste des jeux vidéo commerciaux dont le code source a été publié ultérieurement .
Le mouvement du logiciel libre et open source a été fondé dans les années 1980 pour résoudre le problème fondamental des correctifs non officiels : l’impossibilité pour les utilisateurs de s’auto-supporter dans le cas de logiciels distribués uniquement au format binaire , en raison de l’absence de code source. Le logiciel libre et open source exige des logiciels distribués la disponibilité du code source, ce qui permet d’éviter les problèmes techniques et les incertitudes juridiques liés à l’application par les utilisateurs de correctifs binaires à des logiciels propriétaires .