Tous les articles par Olivier Hoarau

Gérer ses références bibliographiques avec zotero

Il y a quelques temps j’ai rédigé un mémoire sur les inégalités entre l’outre mer et la métropole avec le cas particulier de la Réunion dans le cadre d’un Master 2 de droit à l’université Paris 1 Sorbonne qui a fait l’objet de ce post.

Il se trouve que j’ai eu à gérer dans mon mémoire d’une centaine de pages plus de 200 références, ça devient vite ingérable et il devient vite nécessaire de recourir à un outil pour gérer tout ça. C’est là qu’intervient zotero, Zotero est un outil opensource disponible sous windows et sous linux qui permet de gérer des références bibliographiques et qui s’interface avec firefox et libreoffice (ainsi qu’avec Microsoft Word) pour lesquels il faut installer le plugin correspondant. Le navigateur permet de repérer sur le web les documents à référencer qui sont ensuite enregistrés dans la bibliothèque de zotero. Dans le traitement de texte on pourra faire appel à une référence de la bibliothèque via un plugin zotero intégré, on pourra également générer une bibliographie de toutes les références citées dans le document. zotero gère l’indexation et vous n’avez plus à vous occuper de la numérotation de vos références, tout se fait automatiquement.

Le fonctionnement est assez simple, sous firefox on va surfer sur une page qu’on va référencer, dans l’exemple ci-dessous un texte de loi de légifrance.

En haut à droite il y a une petite icône zotero en forme de palais de justice, en cliquant dessus ça va créer la référence dans la bibliothèque.

Ensuite sous libreoffice, on rajoute une citation en cliquant sur le premier bouton en haut à gauche Add/Edit Citation. Dans l’exemple ci-dessous, notre texte de loi se retrouve en référence 12.

C’est équivalent pour d’autres types de document comme les pages web ou les fichiers pdf. Pour ces derniers c’est encore mieux s’ils contiennent des métadonnées comme pour cette thèse. Cette fois-ci l’icône de zotero prend une forme différente, en cliquant dessus ça rajoute le pdf dans la bibliothèque.

L’entrée est rajoutée dans zotero.

Le fichier pdf contient moult métadonnées qui sont enregistrées automatiquement, il peut arriver qu’il y ait pas grand chose dans ce cas il faudra saisir les informations manuellement. Le fonctionnement est similaire ensuite pour rajouter la référence dans libreoffice. Vous pouvez rajouter également des références de livres directement sous zotero. Dans l’exemple ci-dessous j’ai saisi uniquement l’ISBN dans l’icône Ajouter un document par son identifiant et les informations du livre sont automatiquement récupérées sur internet.

Une fois le travail réalisé on peut générer en fin du mémoire un index de toute les références citées, on cliquera sous libreoffice sur la deuxième icône zotero en haut à gauche Add/Edit Bibliography. Pour la mise en forme des références, vous avez le choix et ça se fait via les préférences de zotero (également accessible via libreoffice).

Personnellement j’ai choisi Chicago Manual of Style 17th edition. Pour aller plus loin :

Architecture avec serveur mail local

Dans un post précédent j’avais évoqué l’installation d’un serveur webmail basé sur Roundcube mail. L’intérêt de la manip est de pouvoir stocker ses mails sur son serveur perso et de pouvoir y accéder d’internet sur un mobile perso sous android (ou autres) où qu’on soit. Et donc d’être indépendant d’un GAFAM qui n’aura aucun scrupule à décortiquer les mails pour en tirer un quelconque profit. Dans ce post je vais aller plus loin en présentant l’architecture globale de réception et d’envoi de mail.

L’idée générale est que mon serveur récupère les mails sur des serveurs POP ou IMAP sur internet des utilisateurs du réseau local, puis les passe au travers de filtres anti spam et anti virus avant de les délivrer à un serveur de mail local. Ils peuvent être ensuite consultés via un client lourd du réseau local comme Thunberdird, ou d’un navigateur via le webmail du réseau local ou d’internet sur un mobile. Pour l’envoi de mail, les mails ne partent pas directement vers un serveur SMTP sur internet (généralement celui du FAI) mais passe d’abord par le serveur de mail local avec sa batterie anti spam et anti virus.

Commençons par un petit schéma qui vaut bien des discours.

Cette architecture s’appuie sur plusieurs outils:

  • fetchmail permet de récupérer les mails des utilisateurs du réseau local sur des serveurs POP ou IMAP accessibles sur internet
  • sendmail (MTA mail transport agent) serveur SMTP qui permet de gérer localement la réception des mails et d’appliquer certains filtres anti spam et anti virus pour cela on se basera sur SpamAssassin et ClamAV
  • procmail (MDA mail delivery agent) permet de délivrer les mails et les dispatcher suivant le destinataire, il peut également appliquer d’autres filtres
  • le serveur IMAP permet de rendre accessible aux lecteurs de mails (MUA Mail User Agent) du réseau local les mails qui sont arrivés, que vos clients soient sous windows ou sous linux.
  • le serveur webmail basé sur Roundcube mail permet de gérer les mails via un navigateur, y compris d’un téléphone mobile via internet. Pour cela il faudra rendre son serveur apache visible d’internet, tout l’intérêt de la manip est de rendre accessible d’internet que le serveur apache, il n’est pas nécessaire d’ouvrir les ports du serveur IMAP ou SMTP.

Pendant longtemps j’ai utilisé un serveur POP local, j’y accédais via thunderbird et pour que les mails soient accessibles sur tous les postes du réseau local, le répertoire .thunderbird dans lequel sont stockés les mails était partagé par partage NFS. Inconvénient de la méthode, les mails ne sont accessibles que du réseau local et d’un client lourd. Je suis passé au serveur IMAP pour pouvoir installer un webmail car il permet de pouvoir gérer une arborescence de dossiers de mails. C’est à dire sous thunderbird j’ai initialement classé mes mails dans des dossiers et sous dossiers, et seul IMAP permet de retrouver la même arborescence avec le webmail à partir d’un navigateur ou d’un mobile. Pour ce faire j’ai dû migrer le format de stockage de mes mails de mbox (en gros les mails d’un dossier sont dans un fichier unique) vers maildir (un mail est un fichier et un dossier est un répertoire).

C’est une architecture qui peut paraître particulièrement lourdingue et qui se base sur des outils qu’on peut considérer comme obsolète comme sendmail. Certes, certains disent que tant qu’on a pas chercher à  configurer sendmail, on n’est pas un vrai administrateur système… Disons que j’ai mis en place sendmail il y a maintenant plus de 20 ans sur mon réseau local à l’époque où il était encore largement répandu notamment dans le milieu professionnel et qu’il s’adaptait assez bien à la gestion des mails à l’époque des modems 56k et des adresses mails partagés entre plusieurs utilisateurs. Il existe maintenant bien plus facile à administrer comme postfix mais j’ai choisi d’être le dernier des mohicans et donc je persévère à utiliser sendmail.

Du coup j’ai toiletté mes pages sur le site FUNIX sur la gestion des mails, il s’agit notamment de :

Sorties windsurf 2019

Bon j’ai fini en beauté l’année avec un sortie planche à voile cette après midi dans la lagune des dunes de Sainte Marguerite qui se remplit à marée haute. On navigue dans guère plus d’un mètre d’eau sur un fond de sable et on se croit tout de suite dans les mers du sud, il manquait juste le soleil pour donner un aspect lagon, la Bretagne peut être franchement magnifique. J’ai quand même parcourus 61km au total et j’en ai maintenant les bras qui tombent.

Sinon cette année je compte 44 sorties au total, c’est plutôt pas trop mal d’autant que je ne peux plus naviguer le soir après le boulot et que j’ai également enchaîné les sorties en voilier le week end et pendant mes congés. Pour en revenir à mes 44 sessions, elles se décomposent en :
– 24 sorties en mode vague avec le flotteur JP Young GUN 70l (pour les voiles 5 en tribord WSix 4.7, 5 en Simmer Black Tip 4.7, 11 en Simmer Icon 4.2, 4 en Naish Session 3.4)
– 19 sorties en mode slalom en flotteur Exocet RS2 91l (pour les voiles 13 en MauiSails TR6 6.6, 1 en Duotone S-Type SL 6.0, 5 en XO Sails Shark 5.7)
– 1 sortie en mode foil (flotteur fanatic gecko 133, voile duotone S-type SL 6.6)

Le détail de sorties est par ici.

La nouveauté cette année est que j’ai testé le foil et je n’ai pas vraiment aimé même si j’ai réussi à planer sans trop de difficulté, c’est beaucoup trop de concentration pour maîtriser le vol du flotteur et du coup pas trop de plaisir ! J’ai également remplacé mon antique voile tribord WSix 4.7 contre une Simmer Black Tip 4.7, du coup je me retrouve avec un mât de 4,0m en SDM sur les bras, ça réduit le quiver. Sinon j’ai claqué un 33,7 nœuds en vitesse de pointe en mode slalom, mon record. 33,7 nœuds c’est juste 62km/h mais quand on est au raz de l’eau c’est hyper impressionnant, il faut s’appliquer à maîtriser le flotteur qui part dans tous les sens et la culbute n’est jamais très loin, et à cette vitesse ça peut faire mal. A part ça pas de progrès notable, je reste dans ma zone de confort et ma foi j’y suis plutôt bien et je continue à prendre du plaisir.

Quelques photos, en mode vague dans les vagues de Tréompan

Posted Image

en mode slalom à Saint Pabu

Posted Image

Et une vidéo qui résume cette année

Randonnée le long de la rivière des roches à la Réunion

Je complète ma page sur les randonnées à la Réunion avec une randonnée le long de la rivière des roches. A vrai dire, c’est plus une balade qu’une randonnée, elle n’est franchement pas longue (moins de 5km !), guère sportive, mais tout son intérêt est de découvrir la rivière et son lit sculpté par la roche volcanique avec ses bassins propices à la baignade, ses cascades et des magnifiques orgues basaltiques. Ce n’est pas pour rien si la rivière est un haut lieu du canyoning à la Réunion.

Il existe un chemin de randonnée qui longe et surplombe la rivière au travers d’une végétation luxuriante.

Il est possible de se baigner dans plusieurs bassins, le bassin la paix, un autre grand bassin et le bassin la mer, ce dernier est certainement le plus beau et le moins accessible.

Voilà une vidéo qui résume tout cela

kdenlive 19.12.0 et accélération matérielle

Depuis quelque temps kdenlive me déçoit de plus en plus, je le trouve de plus en plus lent et j’ai perdu les 3/4 des effets qui pouvaient exister par le passé (dont ceux apportés par frei0r). Il devient impossible de monter sans activer les clips intermédiaires, fonction qui permet de dégrader la vidéo lors du montage, mais qui préserve la qualité au rendu de la vidéo finale. Et encore ça reste très lent et laborieux dès qu’on rajoute des effets et transitions un tant soit peu compliqués. Et dire qu’avec les versions 0.9.X c’était parfaitement fluide de monter en HD et on disposait d’un stock considérable d’effets (même si dans la pratique j’en utilisais à peine 10%). Il semblerait que mes problèmes avec kdenlive remontent au passage du moniteur SDL à OpenGL et à la migration de Qt4 (kdenlive <=0.9x) vers Qt5 (kdenlive >=15.x). J’ai constaté un ralentissement général, voire des régressions fonctionnelles et la réapparition de plantage qui avait totalement disparu avec les dernières versions sous Qt4. Il se trouve qu’il existe l’extension movit qui permet de faire bosser un peu plus la GPU et quand je l’activais tout revenait dans l’ordre, je retrouvais la fluidité perdue, sauf que ça plantait toutes les 5min 🙁 .

Il faut croire que tout le monde ne souffre pas du même problème, j’ai pensé à un problème de compatibilité matérielle mais j’ai quand même un i7 avec 16Go de RAM, j’ai également soupçonné ma carte NVIDIA GTX 760 d’être la source de mes ennuis. J’ai même songé à changer de carte. Finalement j’ai exploré la voie de l’accélération matérielle, ça permet de décharger le CPU et la mémoire et de solliciter davantage le GPU et la mémoire de la carte graphique, notamment pour tous les calculs d’encodage et de décodage vidéo. Concrètement, comme à mon habitude en vieux dinosaure que je suis, j’ai récupéré les sources et tout recompilé. J’ai donc activé toutes les fonctions d’accélérations matérielles des différentes bibliothèques sur lesquelles se repose kdenlive. Pour une GPU NVIDIA il s’agit d’activer les bibliothèques et API suivantes :

  • VDPAU (Video Decode and Presentation API for Unix) bibliothèque développée par NVIDIA,
  • NVENC et NVDEC pour l’encodage et le décodage vidéo notamment des codecs H264 et HEVC, ils sont compris dans le package NVIDIA VIDEO CODEC SDK (ex CUVID) et utilisent CUDA (Compute Unified Device Architecture) qui pour simplifier est une boîte à outil de développement pour les GPU également développée par NVIDIA.
  • OpenCL (OpenComputing Language) qui permet de faire des programmes qui vont utiliser à la fois des CPU multi cœurs et la GPU.
  • OpenCV qui sert pour le traitement d’images en temps réel notamment pour faire du tracking d’éléments dans une vidéo.
Continuer la lecture de kdenlive 19.12.0 et accélération matérielle

Changement d’architecture du réseau local

j’ai dû modifier encore l’architecture de mon réseau local qui est décrite dans ce post. Il se trouve que j’avais pas mal de dysfonctionnements, le réseau wifi 2,4Ghz de mon routeur Netgear N300 marchouillait, la TV par la box TV marchait de manière intermittente avec des nombreuses coupures réseau et comble du pénible le routeur perdait sa configuration de manière aléatoire. Bref je ne pouvais pas laisser les choses en l’état, j’ai complètement repensé l’architecture du réseau qui ressemble maintenant à ça.

Le routeur est maintenant directement relié à la box et c’est le routeur qui est connecté à la prise CPL et qui distribue le réseau et l’accès internet contrairement à la configuration précédente. Le tout est dans la cuisine, car la prise pour la Box s’y trouve. La Box est sur un réseau 192.168.X.X et le réseau local desservi par le routeur est sur un réseau 192.168.Y.X, curieusement sans avoir ouvert de routes particulières, la box voit parfaitement la box TV qui se retrouve avec une adresse 192.168.Y.X attribuée par le serveur DHCP du routeur et la TV marche cette fois-ci très bien. Concernant les problèmes de WIFI je l’ai résolu en changeant de routeur je suis passé au TP-Link Archer C6 qui présente l’avantage de faire du WIFI 5Ghz contrairement à mon ancien Netgear N300. Le gros avantage du 5Ghz par rapport au 2,4Ghz est de permettre un bien meilleur débit.

Voilà à quoi ressemble le routeur, je l’ai fixé comme une grosse araignée sous le bar de la cuisine à côté de la box, le tout est sous onduleur qu’on peut voir sur la gauche.

créer son propre service de messagerie accessible n’importe où et sur n’importe quelle plateforme

Jusqu’à présent j’utilisais les services de messagerie de mon hébergeur, je récupérais mes mails sur son serveur POP et je renvoyais via son serveur SMTP. Localement j’ai mis en place un serveur POP et un serveur SMTP le tout basé sur dovecot et sur sendmail avec toute une batterie anti spam. Utilisant Thunderbird pour la messagerie, tous les mails ensuite se retrouvent dans le répertoire .thunderbird de la home directory de chaque utilisateur de mon réseau personnel. Cette home directory se trouve sur un serveur Dell Poweredge (physiquement qui tourne dans le garage) ce qui permet de pouvoir lancer Thunderbird sur tous les postes de mon réseau local et de profiter des mails. Un script sur le serveur permet de récupérer et d’envoyer toutes les heures les mails respectivement sur le serveur POP et SMTP.

L’inconvénient de tout ça est qu’en déplacement, j’avais accès certes au webmail de mon hébergeur mais pas aux mails présents sur mon réseau local. Qui plus est, je ne pouvais voir les mails qu’entre deux vacations de récupération de mail, c’était plutôt handicapant. Pendant les vacances, quand je n’étais pas là durant une longue durée je coupais le serveur et donc la récupération pour pouvoir voir les mails entrants sur le webmail, mais je n’avais pas accès à mes anciens mails. Bref pas terrible, et je me suis contenté de cette situation pendant trop longtemps avant que je me décide à faire quelque chose, sachant que j’avais d’emblée exclu l’idée d’héberger mes mails dans un cloud quelconque à la main d’un Google ou Microsoft qui n’ont aucun scrupule à consulter les mails personnels pour en tirer une source de profit.

La solution que j’ai mise en place est toujours basée sur le serveur POP et le serveur SMTP de mon hébergeur, sauf que j’ai remplacé le serveur POP par un serveur IMAP local. Le serveur IMAP présente l’avantage de stocker les mails sur le serveur et non pas dans les répertoires d’une home directory d’un utilisateur, permettant ainsi le partage des mails dans la limite de l’accessibilité du serveur IMAP. Et c’est là que les choses intéressantes commencent, sur mon serveur apache local j’ai installé le webmail Roundcube mail, je peux ainsi consulter mes mails localement. Les choses n’ont pas été aussi simples car il a fallu passer d’un format de stockage de mail de type MBOX à un format MAILDIR avec quelques subtilités de configuration pour pouvoir disposer de sous dossier dans l’arborescence des mails. Le détail est donné par ici. Au final on accède à cette élégante interface.

Ce n’est pas fini ! Il faut ensuite sécuriser proprement votre serveur web, ouvrir les routes sur la box et/ou le routeur et mettre les règles shorewall qui vont bien pour que le serveur apache soit visible sur internet, de faire appel à un service de DNS dynamique (comme dyndns ou no-ip) qui fera correspondre automatiquement votre adresse IP fournie par votre fournisseur d’accès à un nom d’hôte. Ensuite à partir d’un bête mobile Android et d’un navigateur quel que soit votre position, vous aurez accès à l’ensemble de vos mails en tout temps et toute circonstance.

J’en profite pour vous signaler que j’en ai profité pour passer mon serveur en apache/httpd 2.4.41, pour franchir le pas vers PHP 7.4.0 et évoluer vers MySQL 8.0.18, ça se passe par ici.

Mageia 7 sur un lenovo ideapad 100S 11IBY

Ma fille utilise pour ses études un thinkpad T440p avec mageia 7.1 dessus, elle fait sensation dans l’amphi avec son environnement XFCE.

la plupart des étudiants découvrent totalement linux et trouvent ça super cool, du coup ça en motive un certain nombre pour basculer.
A part ça, elle trouve maintenant que le portable est un lourd pour se coltiner tous les jours dans son sac. Du coup j’ai trouvé sur ebay au Royaume Uni un Lenovo IdeaPad 100s 11IBY qui est un vrai poids plume pour à peine 120€ frais de port inclus, il pèse moins d’un kg et a une coque rouge, la grande classe !
Certes il n’est plus tout récent, ce n’est qu’un processeur Atom, c’est pas un foudre de guerre mais pour faire de la saisie de note en amphi, ça suffit largement, elle travaille ensuite sur son Thinkpad. Ayant un clavier qwerty je me suis contenté de mettre des stickers azerty et de configurer la langue française par défaut. Pour l’installation, il était fourni de base avec Windows 10, par flemme je pensais laisser Windows 10. Mais il se trouve qu’il était fourni avec une version de base sans les drivers Lenovo et je me suis retrouvé avec un PC avec clavier et souris intégré inopérants, cela marchait qu’avec des périphériques USB. Qu’à cela ne tienne, je prends le temps d’installer les drivers et là je récupère les fonctionnalités attendues du PC si ce n’est que je me retrouve avec un Windows avec un mélange de français anglais assez désagréable. Je lance une mise à jour et là impossible de me connecter via le code PIN, je trouve une astuce pour rebooter en tant qu’ administrateur et là je galère pour pouvoir me connecter nominalement. Ça me prend la tête à un tel point, que je vire aussitôt Windows, j’installe Mageia 7 64bits et en moins de 2h, je me retrouve avec une installation parfaitement fonctionnelle et personnalisée. L’installation s’est passée comme une lettre à la poste, tout a été parfaitement reconnu et la mise à jour vers 7.1 une formalité. Et voilà ce que ça donne, toujours avec un environnement XFCE

Évolution du réseau local

J’ai apporté des modifications d’architecture à mon réseau local, pour mémoire il ressemblait à cela :

Le détail de la configuration est donné dans ce post. Dans le cas présent, la box modem est à côté du décodeur TV, dans ma nouvelle architecture, les deux sont séparés et sont reliés par courant porteur CPL. Entre temps, j’ai fait l’acquisition du modèle de D-Link à 1Gb/s

La difficulté est que mon réseau local utilise les adresses 192.168.10.X et le réseau de la box utilise les adresses 192.168.0.X, j’ai donc rajouté un switch pour que le décodeur TV soit connecté directement à la box modem sans passer par le routeur qui pourrait perturber la liaison. Cela donne quelque chose comme cela maintenant

Mes PC sont sur le réseau 192.168.10.X via le routeur et seule la box modem et le décodeur TV sont sur le réseau 192.168.0.X (et également le routeur sur une patte). Côté switch et routeur, j’ai un peu galéré cela donne un branchement qui ressemble à ça :

Created with GIMP

Curieusement alors que le routeur était branché au switch (et donc à internet) j’ai dû rajouter un autre câble du routeur vers le switch (le câble noir sur la photo) pour que les PC du réseau local puissent accéder au ressource de mon serveur mana.

La nouvelle route du littoral à la Réunion

Dans le journal Libération d’aujourd’hui on pourra lire un article sur la nouvelle route du littoral (NRL pour les intimes), chantier pharaonique et particulièrement coûteux en cours sur l’île de la Réunion. Elle est destinée à remplacer la route actuelle du littoral (ou route en corniche) considérée comme dangereuse car placée en bord de falaise et soumise régulièrement à des chutes de pierre et à la houle dévastatrice de l’océan Indien.

La nouvelle route du littoral et la route actuelle du littoral, prise du chemin des anglais

On lira dans l’article que le chantier outre avoir explosé les coûts prévisionnels est en panne sèche de cailloux, au point qu’il n’est pas possible aujourd’hui de finaliser le chantier.

La fin actuelle de la route (août 2019) avec en fond, la ville du Port.

On s’étonne encore de ce choix technique qui engloutit les finances de la région Réunion et pas seulement. En effet, bien que le taux d’équipement en véhicule reste inférieur à celui de la métropole, l’île subit un phénomène de congestion du trafic qui n’a absolument rien à envier aux bouchons marseillais ou de la région parisienne. Il est assez commun de faire plusieurs heures par jour de transport pour quelques dizaines de kilomètres, en particulier quand on doit passer par la route du littoral qui est totalement saturée une grande partie de la journée. Dans le même temps, les transports en commun ne représentent aucunement une alternative crédible car ils sont également pris dans le trafic, ils ne représentent que 5% des déplacements contre 15% en métropole et leur part stagne depuis des années.

Continuer la lecture de La nouvelle route du littoral à la Réunion