Pour les logiciels développés sur une forge en ligne et pouvant être copiés sans autorisation juridique spécifique, l’approche de Software Heritage repose sur une automatisation massive. En donnant la priorité aux plateformes de développement populaires comme GitHub et GitLab, nous avons déjà archivé automatiquement plus de 26 milliards de fichiers de code source uniques provenant de plus de 400 millions de dépôts différents.
Cependant, cette approche automatisée atteint ses limites lorsqu’il s’agit de code source qui n’a pas été développé sur une plateforme moderne.
Le code historique (ou legacy code) désigne des logiciels créés à l’aide d’outils anciens ou aujourd’hui obsolètes, souvent stockés dans des formats dépassés, et qui peuvent ne pas être disponibles via des dépôts logiciels modernes comme GitHub ou GitLab. Ce type de code nécessite une stratégie différente.
Pourquoi le code historique nécessite une approche spécifique
Pour celles et ceux dont les bureaux sont encore encombrés de piles de papier jauni contenant du code source imprimé, le défi de la préservation du legacy est immédiatement évident. Le code historique ne se résume pas à de vieux fichiers : il s’agit d’une réalité complexe et souvent matérielle.
Archiver ce patrimoine implique de prendre en compte :
- La diversité des formats, d’anciennes bandes magnétiques à d’obscures sauvegardes de disques durs.
- L’existence de multiples copies et versions réparties sur différents supports.
- La contribution cruciale des auteurs, parfois encore en vie, dont les connaissances sont indispensables pour comprendre le contexte de production.
- Les matériaux d’accompagnement, tels que de la documentation, des rapports techniques, des échanges de courriels, ou encore des livres ou manuels, qui complémentent le code source
Comment collecter et préserver le code patrimonial
Software Heritage se concentre sur la préservation du code source sous forme numérique. Il existe deux principales façons d’intégrer ce code source historique numérisé dans les archives de Software Heritage.
1 : L’archivage en autonomie (SWHAP)
Le Software Heritage Acquisition Process (SWHAP) a été développé en collaboration avec l’Université de Pise afin de vous aider à gérer ce processus de curation. Il vous guide à travers toutes les étapes nécessaires pour préparer votre code source et l’archiver avec succès dans Software Heritage.
Un guide détaillé, étape par étape, est disponible ici.
Vidéos tutoriels:
« Grâce au processus SWHAP j’ai pu archiver le code source de la version 1.0 de la démonstration du théorème des quatre couleurs pour Coq 7 par Georges Gonthier. Ce code présente un intérêt pour l’histoire de la preuve mathématique par ordinateur et j’ai pu utiliser sa version archivée pour mon travail de chercheur.«
— Baptiste Mélès, Chercheur au CNRS
2 : Demander le soutien de Software Heritage
Si vous possédez du code source que vous estimez d’intérêt historique et que vous avez besoin d’aide pour le conserver et l’archiver, n’hésitez pas à nous contacter. Nous pouvons vous aider à le référencer au sein de l’écosystème Software Heritage et à le rendre accessible à une communauté plus large.
Nous ferons de notre mieux pour répondre à votre demande, mais nous ne pouvons pas garantir que nous pourrons prendre en charge toutes les propositions.
Pour demander de l’aide, veuillez envoyer un courriel à legacy-code@softwareheritage.org en précisant :
- Votre nom et votre affiliation.
- Le nom de votre code et une brève description expliquant son importance historique.
- Le format et le nombre de versions en votre possession.
- Si vous disposez de temps pour nous aider dans la curation et l’archivage du code.
Études de cas : Nous avons déjà archivé avec succès des projets complexes tels que le code source d’un des premiers navigateurs et éditeurs web Amaya ou le programme pionnier de vision par ordinateur Chaînage de contour, démontrant la valeur de cette approche ciblée.
Contribuez au guide
Distribué sous license CC-BY 4.0, le code source du guide est ouvert au public et aux contributions.
Rejoignez l’initiative
Si le sujet de la curation et de l’archivage du code source legacy vous intéresse et que vous souhaitez participer à de futurs événements consacrés à ce travail, rejoignez notre liste de diffusion.

