Devenez un contributeur de WordPress !

Passionné du Web et du mouvement Libre, vous cherchez à apporter votre pierre à l’édifice WordPress ? Ce tutoriel est pour vous ! Les équipes de Savoir-faire Linux ont contribué au cœur de l’application et souhaite à son tour vous initier au développement de la plateforme de publication en ligne la plus populaire au monde.

Avant de commencer, sachez que la plupart des documents liés à cet article ne sont disponibles qu’en anglais malheureusement.

S’abonner
Première étape : Abonnez-vous  aux différentes plateformes utilisées par les contributeurs.

WordPress
Bien sûr, une incontournable, WordPress.org qui sert, entre autres, à documenter les procédures et à publier les informations liées au développement. Ce sera votre référence principale. Abonnez-vous et connectez-vous.

Une fois connecté, nous vous invitons à consulter la section dédiée au développement et à prendre connaissance des différentes équipes et de leur mission. C’est aussi l’occasion de vous abonner aux différents bulletins d’informations si vous souhaitez suivre de près un développement en particulier (marketing, modules, thèmes, documentations, etc.)

Slack
Les contributeurs discutent via la plateforme de communication collaborative Slack. Ils y tiennent leurs réunions, y diffusent les informations en primeur et vous aident à atteindre vos objectifs de contribution. Sur Slack, vous trouverez tous les développeurs influents de la communauté WordPress, c’est l’ endroit idéal pour leur poser vos questions !

Prenez soin de bien lire la documentation d’abonnement. La procédure peut parfois semer la confusion. Si vous rencontrez des difficultés, connectez-vous à votre compte WordPress.org, visitez la page d’abonnement et de nouvelles instructions apparaîtront.

Vous pourrez ensuite vous connecter à https://wordpress.slack.com/.

Trac
Dernière étape avant de contribuer ! Découvrez le gestionnaire de billet Trac. Chaque modification à WordPress y est documentée. Les développeurs principaux l’utilisent pour approuver et intégrer les modifications au cœur. Afin de garantir un développement efficace, précis et coordonné, son utilisation est obligatoire.

Développer: Les bonnes pratiques
C’est ici que le plaisir débute ! Avant de rédiger du code, vous devrez intégrer les bonnes pratiques et les standards de développement. Certains documents vous seront plus utiles que d’autres. Nous vous suggérons de vous concentrer sur ces sections : Core Contributor Handbook, Best Practices et Writing Patches.

Pour les développeurs PHP, ces documents sont les plus pertinents : PHP Coding Standards et Core APIs.

L’environnement
La majorité des développeurs utilisent Varying Vagrant Vagrants (VVV), qui fonctionne sous tous les systèmes d’exploitation. L’outil est spécifiquement paramétré pour le développement de l’application, incluant la création de thèmes et de modules.

L’installation peut être complexe, surtout si vous installez les modules optionnels de Vagrant. Sous Linux, assurez-vous d’avoir les librairies « build-essential » et « libc6-dev » avant de débuter.

Bien sûr, vous pouvez travailler avec d’autres outils que VVV. Si c’est le cas, n’oubliez pas de rapporter vos développements sur le dépôt de code du cœur de WordPress pour suivre les tests et les avancements de vos contributions !

Voici un exemple d'installation d'un environnement de développement utilisant VagrantPress et Git déployé avec Ubuntu.

git clone https://github.com/vagrantpress/vagrantpress.git
cd vagrantpress
vagrant up
rm -fr tests
git clone git://develop.git.wordpress.org/ tests
vagrant provision

SVN et Git
Vous avez sûrement remarqué que le dépôt de code utilise SVN. Si vous désirez contribuer au cœur, nous vous recommandons vivement son usage. Mais pas d’obligation, il est aussi possible de passer par Git.

Vous trouverez les documents dont vous aurez besoin pour utiliser ces deux systèmes de gestion de versions dans les librairies suivantes : How to Use Subversion for developers, plugin, codex  pour SVN et Using Git pour le second.

CSS et Javascript
WordPress compresse certaines ressources. Pour vous permettre de travailler, vous devrez désactiver cette fonction dans le   » wp-config.php « . Ajoutez-y  » define(‘SCRIPT_DEBUG’, true); « .

Validateur de code
Les standards de code WordPress sont fort probablement différents de ceux auxquels vous êtes habitué. Un vérificateur de format de code peut apporter une grande aide. Utilisez PHP_CodeSniffer avec le fichier de paramétrage de normes WordPress.

Vous pouvez aussi lire les guides de style WordPress pour connaître les instructions d’installation détaillées.

Contribuer en effectuant des tests
Saviez-vous que vous n’êtes pas obligé d’être développeur aguerri pour contribuer à WordPress ?

Par exemple, effectuer des tests est une bonne manière de participer au développement tout en apprenant. Trac liste les corrections à tester. Si vous débutez, travaillez d’abord sur des corrections non urgentes.

Réaliser de grands rêves avec de petits pas de bébé

Oui, contribuer demande un premier grand investissement : Lire, paramétrer, configurer, télécharger…  Mais une fois cette étape passée et quelques premières interventions, vous serez officiellement un contributeur de logiciel libre ! Maintenant, profitez de cette opportunité pour faire vos premiers pas de bébé, et de réaliser votre grand rêve… de devenir un développeur de logiciel libre!

Des nouvelles du projet LDAP Tool Box, la boîte à outils pour les annuaires LDAP

Le projet LDAP Tool Box rassemble différents outils pour aider les administrateurs LDAP, que ce soit des paquets OpenLDAP, des scripts de supervision ou encore des applications Web. L’objectif est de simplifier la vie des administrateurs LDAP, car comme l’indique la description du projet :

Même les administrateurs LDAP ont besoin d’aide

Tous les outils proposés sont sous licence libre et disponibles sur GitHub.

Supervision

Des greffons de supervision sont fournis pour Nagios (ou tout autre logiciel compatible) et Cacti. Ils permettent par exemple de vérifier le statut de la réplication OpenLDAP, de collecter les statistiques sur les opérations LDAP ou encore surveiller le taux de remplissage d’une base MDB.

16c97f6538278bee29e8b9de1aac3516-media-593x381

Des configurations sont également disponibles pour la pile logicielle ELK (ElasticSearch, Logstash, Kibana) afin de tracer en temps réel l’utilisation des annuaires OpenLDAP.

openldap-elk-ldap-operations

Paquets OpenLDAP

OpenLDAP est le serveur LDAP le plus répandu, très proche du standard et offrant d’excellentes performances. Il est présent dans la plupart des distributions GNU/Linux mais celles-ci font souvent des choix de compilations non avalisées par les développeurs du projet, l’exemple le plus représentatif étant la bibliothèque SSL/TLS.

Le projet LDAP Tool Box fournit des paquets pour les environnements Debian/Ubuntu et Red Hat/CentOS. Ils sont compilés avec OpenSSL et embarquent les overlays officiels ainsi que certains overlays contribués comme « lastbind » et « smbk5pwd ».

Ils offrent également des modules spécifiques de gestion de la qualité des mots de passe comme check_password et ppm. Un script de gestion du service est installé par défaut, permettant les sauvegardes/restaurations des données et de la configuration.

Interface de gestion du mot de passe

L’application Self Service Password permet de fournir aux utilisateurs une interface simple pour changer son mot de passe, ou le réinitialiser quand celui-ci est perdu (ou expiré). Cette réinitialisation peut se faire :

  • Par un lien envoyé par mail
  • Par un code envoyé par SMS
  • Par la réponse à une question

Cette interface est compatible avec différents annuaires LDAP dont Active Directory et Samba 4.

ssp_1_0_change_password

La version 1.0 de ce logiciel est sortie en octobre 2016 (voir l’article sur LinuxFR).

Interface de consultation des données

L’application White Pages est une interface de consultation des données d’un annuaire LDAP, avec les fonctionnalités suivantes :

  • Recherche rapide : une invite de recherche dans le menu permet de retrouver directement des entrées à partir du nom, du prénom, du mail ou de l’identifiant
  • Recherche avancée : un formulaire liste les différents attributs sur lesquels une recherche peut être faite
  • Trombinoscope : toutes les entrées de l’annuaire sont affichées avec leur photo

Ces fonctions peuvent être activées/désactivées et les attributs cherchés ou affichés sont configurables. L’interface peut donc être utilisée avec n’importe quel annuaire LDAP.

wp_0_1_full_display

La version 0.1 de ce logiciel est sortie en novembre 2016 (voir l’article sur LinuxFR).

Un don de 1 050$ pour contribuer à l’intégration des réfugiés à Montréal

Profitant de l’euphorie de notre party de Noël 2015, le Club social de Savoir-faire Linux a organisé une loterie au profit d’un centre de jour du YMCA de Montréal venant en aide aux demandeurs d’asile. Voilà une façon simple de poser un geste à la fois altruiste et agréable en faveur de l’intégration des réfugiés. La modeste somme de 1050$ que nous avons tous réunie, ce soir-là, a été remise lundi dernier à Mélissa Lachance, travailleuse sociale et animatrice du Centre (à droite sur cette photo).

L'équipe SFL et Mélissa Lachance (Centre de jour des demandeurs d'asile)

Un centre qui facilite l’intégration des réfugiés

Depuis 2010, le Centre pour les demandeurs d’asile PRAIDA-YMCA favorise l’accueil des demandeurs d’asile au Canada. Plus de 50 bénévoles, dont une majorité de réfugiés eux-mêmes, accompagnent les demandeurs dans une démarche participative. Le Centre permet ainsi de briser l’isolement social et favorise l’accueil des réfugiés en organisant des activités complémentaires au suivi qu’offre le Programme régional d’accueil et d’intégration des demandeurs d’asile (PRAIDA). Le don des employés de Savoir-faire Linux aidera notamment le Centre à coordonner ses bénévoles, à développer de nouveaux espaces collectifs et à offrir des activités.

PRAIDA-YMCA

Sortie de LTB Self Service Password 0.9

ltb-logoLe logiciel Self Service Password est développé au sein du projet LDAP Tool Box. Il fournit une interface permettant aux utilisateurs de changer leur mot de passe dans un annuaire LDAP (y compris Active Directory). Outre le changement de mot de passe simple, l’interface propose de réinitialiser son mot de passe en cas de perte, soit par l’envoi d’un courriel, soit par la réponse à des questions, soit par l’envoi d’un SMS. Self Service Password est écrit en PHP et publié sous licence GPL. La version 0.9 est sortie le 8 septembre 2015.

Traductions

Grâce à la communauté des utilisateurs, l’interface est à présent disponible en 14 langues. Les nouvelles langues fournies dans la version 0.9 sont le chinois, le portugais, le slovaque et le slovène.

Sécurité

Il était possible d’utiliser LDAPS avec les précédentes versions, le support de StartTLS a été ajouté dans la version 0.9. StartTLS n’est pas supporté par tous les annuaires mais est conseillé à la place de LDAPS quand il est disponible.

Active Directory

Le support d’Active Directory a été amélioré : désormais un utilisateur ayant un mot de passe expiré ou dont la réinitialisation est obligatoire peut le changer à travers l’interface Self Service Password. Le changement de mot de passe en tant qu’utilisateur au niveau LDAP a été ajouté, grâce à l’utilisation de la méthode PHP ldap_modify_batch.

Samba

Si le compte utilisateur est un compte Samba, il est désormais possible de mettre à jour les attributs sambaPwdCanChange et sambaPwdMustChange, qui correspondent à l’âge minimal et maximal du mot de passe.

Post traitement

Suite au changement effectif du mot de passe, un script peut être exécuté afin de propager l’information à d’autres systèmes. Cela permet par exemple de modifier le mot de passe sur un second annuaire ou dans des bases de données.

Les contributions de Savoir-faire Linux sont acceptées dans le module d’intégration avec UPS

openerpAprès un an d’effort et d’attente, les contributions de Savoir-faire Linux au module d’intégration avec l’API d’UPS ont été acceptées et font partie de :

  • la version 1.1.0 du module ups_shipping
  • la version 0.4.3 de la librairie PyUPS

Grâce à Joao Alfredo Gama Batista, le module permet désormais de fournir tous les documents nécessaires à la vérification effectuée par UPS lors de l’activation de votre compte.

Tous les détails sont disponibles sur Git Hub :

Piste complémentaire