Un des fondement de l’open-source est le partage. SourceForge.net est un service Web mettant à disposition des développeurs libres tout un tas d’outils leurs permettant de partager le fruit de leur travail.
Nous allons dans ce billet voir comment créer un nouveau projet, pour mettre à disposition de la communauté Internet:
- Création d’un compte pour un développeur
- Ajout d’un nouveau projet (description, lien vers la page Web du projet…)
- Ajouts de fichiers (sources, binaires, docs) dans le projet
- Création d’une arborescence des sources sur le serveur SVN du projet
Création d’un compte utilisateur sous SourceForge
C’est la première étape: créer votre identité numérique (compte) sous SourceForge.
Ce compte vous permettra de vous identifié auprès de SourceForge. Il est bien sûr possible de créer plusieurs projets sous un même compte.
Par exemple, mon compte est le suivant: nicolargo
Création d’un nouveau projet sous SourceForge
Après s’être authentifié avec votre compte, un lien permettant la création d’un nouveau projet sera présent sur la page principale:
.
Vous allez alors être guidé par un assistant comportant 4 étapes. La première consiste à saisir les informations générales (type de projet, nom, descriptions…). C’est une étape très importante. En effet, la description du projet est un des critère regardé par les administrateurs pour accepter ou non l’hébergement de votre projet.
La seconde étape vous permet de sélectionner le type de licence libre appliqué à votre projet.
La troisième est un peu plus laborieuse puisqu’il faut associé des catégories aussi diverses que variés à votre projet.
Enfin, la dernière étape consiste à accepter le contrat d’utilisation de SourceForge.
Les administrateurs de SourceForge sont assez pointilleux sur la qualité des projets hébergés (ce qui n’est pas plus mal…). Ainsi, après création, il faudra attendre entre 24 et 48h avant de pouvoir utiliser ce nouveau projet (si ce dernier est accepté).
Importation de fichiers associés à votre nouveau projet SourceForge
Une fois accepté, votre projet est une coquille vide ne comportant qu’une description. Sous Sourceforge, chaque projet est accessible depuis une URL dédiée: https://sourceforge.net/projects/<nomduprojet>/
La première chose à faire est de proposer aux utilisateurs qui tomberaient sur votre projet quelques chose à télécharger (source ou binaire peut importe). Pour cela, il faut se rendre dans le menu Admin/File Releases.
On clique ensuite sur le lien Add Release, puis on entre le numéro/nom de version du fichier à proposer en téléchargement et enfin on clique sur le bouton Create this release.
Après avoir saisi les descriptions (notes et change log) pour cette version, il faut ajouter le fichier sur le serveur (Add files to this release). Plusieurs solutions sont possibles (Web upload, WebDav, SFTP, RSYNC) . Personnellement j’utilise SFTP. Par exemple, si je veux envoyer le fichier projet.tgz sur le serveur SourceForge, j’utilise les commandes suivantes:
sftp <compte>@frs.sourceforge.net
Connecting to frs.sourceforge.net…
The authenticity of host ‘frs.sourceforge.net (216.34.181.57)’ can’t be established.
RSA key fingerprint is 68:b3:26:02:a0:07:e4:78:d4:ec:7f:2f:6a:4d:32:c5.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added ‘frs.sourceforge.net,216.34.181.57′ (RSA) to the list of known hosts.
<compte>@frs.sourceforge.net’s password:
sftp> cd uploads
sftp> put projet.tgz
Uploading projet.tgz to /incoming/<…>/uploads/projet.tgz
projet.tgz 100% 241 0.2KB/s 00:01
sftp> exit
Une fois le fichier “uploadé” sur le serveur, il faut revenir à la page ou l’on a saisi les descriptions de la version et cliquer sur le bouton Add files and/or Refresh view. Le nom du fichier devrait apparaître, il reste à le sélectionner puis à cliquer une seconde fois sur le bouton Add files and/or Refresh view.
De retour sur la page du projet (https://sourceforge.net/projects/<nomduprojet>/), vous devriez voir apparaître le lien vers la page de téléchargement:
Ces opérations sont à refaire pour chaque nouvelles versions de votre logiciel.
Il est également possible, si votre projet dispose d’une page Web dédié, d’ajouter un lien vers cette page à partir de SourceForge. Pour cela, il faut se rendre dans le menu Admin/Shell-DB-Web:
Puis saisir l’URL de votre page Web dans le champ: Project Home Page URL, suivi d’un clique sur le bouton Update.
Partager ces sources dans le SVN SourceForge
SVN est un système de gestion de configuration permettant de travailler seul ou à plusieurs sur un code dont les sources sont centralisé sur un serveur. Sourceforge propose un serveur SVN pour votre projet.
Par défaut, seul CVS (un autre système de gestion de configuration) est activé. Pour activé SVN, il faut se rendre dans le menu Admin/Subversion.
Puis activer le radio bouton “enable subversion” puis cliquer le bouton Update.
L’accès à votre répertoire SVN se fera par l’URL suivante (à configurer dans votre environnement de développement favori, Eclipse par exemple…):
https://<nomduprojet>.svn.sourceforge.net/svnroot/<nomduprojet>
La première importation de vos sources peut se faire avec la commande suivante. Par exemple si vous voulez importer les sources d’un projet se trouvant dans le répertoire local /home/nicolargo/dev/projet:
cd /home/nicolargo/dev
svn import projet https://<nomduprojet>.svn.sourceforge.net/svnroot/<nomduprojet>
Vous pouvez vérifier l’mportation avec la commande suivante:
svn list https://<nomduprojet>.svn.sourceforge.net/svnroot/<nomduprojet>
Conclusion
On vient juste de voir une infime partie des services proposés par SourceForge. Pour aller plus loin vous pouvez consulter la documentation officielle (en Anglais uniquement à l’heure actuelle…).