Archives de l’auteur : Guillaume

Test de la distro Linux Elementary

Ca faisait pas mal de temps que je suivais Elementary, je l’avais testé à plusieurs reprises mais elle n’était pas encore assez mature pour que j’en fasse ma distro de travail.

Un peu influencé par le fait qu’elle soit dans le top 5 de distrowatch et avec la sortie de la version 5.0 (Juno) j’ai décidé de me lancer et de l’utiliser à plein temps.

Et après quelques semaines d’utilisation je dois dire que je suis assez déçu, il y a pas mal de détail assez énervant, dont voici quelques exemples :

  • Il y a très peu d’applications fournies avec, et même pas un pauvre éditeur de texte
  • Un bug qui fait que les fenêtre de certaines applications sont « doublés » (bug connu)
  • Il faut bidouiller pour désactiver l’économiseur d’écran (en passant par le menu paramètres ça ne fonctionne pas : bug connu)
  • Et surtout, le copier coller entre le terminal et une appli externe (genre navigateur) ne fonctionne pas !

Pas mal de petits détails qui au quotidien rends la distro très agaçante, je vais donc me tourner vers la MX Linux, ou sinon je reviendrai à l’incontournable Linux Mint.

Utiliser Symfony dans docker

Dans ce tutorial nous allons voir comment développer un site Symfony à l’aide d’une stack docker.

On part du principe qu’il n’y a rien d’installé sur votre poste de travail, à part docker et docker-compose (et que vous êtes sous linux!) Vous trouverez le tutorial d’installation de docker sur le site officiel (par exemple si vous êtes sous Debian : https://docs.docker.com/install/linux/docker-ce/debian/)

Continuer la lecture

Utiliser docker pour le développement web

Dans ma vie de développeur j’ai connu 2 révolutions qui ont changé ma façon de développer :

  • En 2000, Le développement sous Linux
  • En 2012, la découverte de Symfony

Avec docker je vais ajouter une 3eme ligne à cette liste.

Voici quelques avantages d’utiliser docker (pour l’utilisation que j’en ai) :

  • Tester votre site dans plusieurs version de php, apache, mysql, …. et tout ça en ne changeant que le port du http
  • Plus besoin d’installer php/apache/mysql en local sur votre poste, vous avez toujours un poste propre
  • Des tonnes d’images disponibles sur le net (par exemple voir plus bas, maildev)
  • Vous êtes sûrs que votre stack est dans la même version que celle de vos collègues et/ou la prod

J’ai mis à dispo ma stack sur mon github :

https://github.com/gponty/docker-mysql-apache-php

Il est fait pour mes besoins personnels donc très spécifiques, c’est à dire :

  • Utilisation des dernières versions de PHP 7.1 et 7.2
  • Utilisation d’apache
  • Utilisation de mysql
  • Utilisation de maildev qui permet de rediriger tous les envois smtp vers une boite locale (un must-have)
  • Installation des drivers PHP pour sql server
  • Installation de wkhtml2pdf
  • Installation de phploy (déploiement du code sur un serveur)
  • Installation de composer
  • Installation de Xdebug

Toutes ces commandes se trouvent dans le fichier Dockerfile qui se trouve dans les répertoires PHP (pour une raison x j’avais besoin de 2 fichiers, mais je pense que je pourrai en regrouper une grosse partie dans 1 seul fichier et ainsi éviter la duplication de code) Même si ça peut paraître compliqué, pris ligne à ligne c’est assez simple à comprendre.

Si vous n’avez pas encore passé le cap, je vous recommande donc chaudement d’essayer docker, ça demande un petit investissement afin de bien comprendre comment cela fonctionne, mais au final ça vous fera gagner du temps très précieux.

Symfony 4 : Gestion utilisateurs sans FOSUserBundle v2018 : Chapitre 3

Cet article est écrit en 3 parties :

Dans ce chapitre nous allons voir comment s’enregistrer et récupérer son mot de passe lors d’un oubli.

Continuer la lecture

Symfony 4 : Gestion utilisateurs sans FOSUserBundle v2018 : Chapitre 2

Cet article est écrit en 3 parties :

Au chapitre précédent on a mis en place notre base de données et l’avons alimenté de quelques users, maintenant il va bien falloir qu’ils se connectent !

Continuer la lecture

Symfony 4 : Gestion utilisateurs sans FOSUserBundle v2018 : Chapitre 1

Cet article est écrit en 3 parties : J’avais écrit l’année dernière une série d’articles sur comment gérer les utilisateurs sans FOSUserBundle, il me restait encore à publier « comment modifier son mot de passe et comment faire un « J’ai oublié mon mot de passe ». Vu que les choses ont pas mal bougé en 1 an j’ai décidé de repartir de 0 (mais en reprenant les grandes lignes de l’ancien article). Mon environnement :
  • Linux Mint 19
  • Php 7.2.10
  • MariadB 10.2.18
  • Symfony 4.1.6
Continuer la lecture

Appli de gestion de mot de passe en Symfony et Vue.js (Partie 3)

Dernier chapitre de notre développement, où nous allons ajouter, modifier et supprimer des mots de passe.

Cet article est écrit en 3 parties :

Vous pouvez retrouver le projet complet ici : https://github.com/gponty/gespassvuejs

Continuer la lecture

Appli de gestion de mot de passe en Symfony et Vue.js (Partie 2)

Suite de notre développement !

Dans le chapitre précédent on a pu mettre en place tout notre environnement ainsi que notre première page.

Cet article est écrit en 3 parties :

Vous pouvez retrouver le projet complet ici : https://github.com/gponty/gespassvuejs

Continuer la lecture

Appli de gestion de mot de passe en Symfony et Vue.js (Partie 1)

Le tutorial du jour va être de développer une application qui servira à stocker vos nombreux mots de passe. (site internet, numéro CB, code PIN, etc…)
Elle portera le doux nom de Gespass.
Cette application servira uniquement d’exercice, je ne vous conseille pas de l’utiliser en production sans en améliorer la sécurité (par exemple au moins ajouter une authentification .htaccess)

Mon environnement de dev actuel :

  • Mint 19 xfce
  • php 7.2.5
  • mariadb 10.1.29
  • symfony 4.1.1
  • server web de symfony
  • vue.js 2.5.16

Cet article sera écrit en 3 parties :

Vous pouvez retrouver le projet complet ici : https://github.com/gponty/gespassvuejs

Continuer la lecture

[Symfony 4] Création de fixtures aléatoires – Faker

Rien de plus ennuyant que de créer des jeux de données afin de tester votre application, d’autant qu’il existe des scripts pour ça, comme Faker qui fait très bien le boulot.
Ces données s’appellent plus communément des « fixtures ».

On va commencer par créer un nouveau projet Symfony 4 :

Et y ajouter quelques librairies qui nous serons utiles :

Puis tout de suite ajouter le composant qui nous intéressent : Faker (https://github.com/fzaninotto/Faker) :

Ensuite on va créer une nouvelle entité appelée « Personne » :

lors de l’installation du composant fixtures ce dernier a installé un nouveau répertoire : DataFixtures, c’est dans ce dernier que nous allons générer nos fixtures.

Vous trouverez ici tous les types de données que Faker peut générer : https://github.com/fzaninotto/Faker#formatters

Voilà notre fichier FakerFixtures :

Un petit :

Et voilà notre base remplie de 10 personnes :

Vous pouvez retrouver les sources ici :

https://github.com/gponty/sf4-faker