Archives de catégorie : Logiciels libres

Traiter ses photos en mode raw avec darktable

Je pratique la photo en grand amateur depuis des années, un aperçu est visible dans la galerie de ce site. Après avoir débuté avec un appareil photo argentique Konika, dont j’ai oublié aujourd’hui le nom du modèle et même le type, je suis passé au début des années 2000 à l’appareil photo numérique. Le premier était un Olympus C220Z, un modèle assez basique mais aux performances relativement standards à l’époque. C’est notamment avec cet appareil photo que j’ai pris mes photos lors de mon séjour en Polynésie. Vu le paysage et la lumière c’était quand même difficile de rater ses photos. Plus tard j’ai évolué vers un Sony Cyber-shot DSC-P73 et j’ai continué à monter en gamme graduellement en passant au bridge avec le FujiFilm finepix S2000HD et enfin le Nikon Coolpix p510. Côté traitement photo, sous GIMP je me contentais de retailler et de jouer avec la luminosité et le contraste, voire avec la balance des blancs et c’est à peu près tout. Mine de rien j’arrivais quand même à prendre des photos que j’estime plutôt sympas :

Rio de Janeiro vu du Corcovado

J’ai franchi un gap en passant au reflex, venant du monde Nikon, j’ai choisi naturellement un boîtier Nikon de moyenne gamme D5300. Les photos de mon compte Instagram dont un assortiment est visible ci contre sont principalement prises avec cet appareil. C’est clair que je me complique pas trop la vie avec les réglages, le mode sport est mon ami, car je fais principalement de l’animalier et de l’action. Côté traitement photo je suis resté aux bases sous GIMP.

Continuer la lecture de Traiter ses photos en mode raw avec darktable

Montage vidéo

Pas mal de nouveautés sur le front des logiciels de montage vidéo sous linux, jusqu’à présent j’utilisais Kdenlive mais ces derniers temps j’ai pu faire mes derniers montages avec OpenShot Video Editor qui est maintenant enfin pleinement opérationnel. Dans cet élan, j’ai testé Flowblade Movie Editor et Pitivi Video Editor qui sont deux autres logiciels de montage vidéo, le premier est grossièrement équivalent à Kdenlive alors que le dernier se destine plutôt aux débutants.

Flowblade Movie Editor

Devant cette pléthore de logiciel j’ai rédigé un comparatif de Kdenlive, Flowblade, OpenShot et Pitivi sur la base de plusieurs critères les plus objectifs possibles et après avoir passé quelques heures pour réaliser des vrais montages et pas seulement pour survoler les fonctions des uns et des autres. On pourrait résumer ce test avec ce tableau synthétique :

Continuer la lecture de Montage vidéo

Mise à jour de mes pages LAMP

J’ai profité de cette période de confinement pour profondément toiletter mes pages LAMP, en d’autres termes c’est l’ensemble Linux+Apache+MySQL+PHP qui sert à faire tourner les pages web. Avoir un serveur web perso présente plusieurs intérêts, ça permet déjà de pouvoir tester ses pages web avant de les envoyer sur internet sur un autre serveur web hébergé sur internet, cela permet également de monter un serveur web qui pourra être accessible d’internet pour diverses applications. Une illustration de ces applications est donnée en fin de ce post.

Tout d’abord dans la page principale LAMP je présente l’installation d’Apache 2.4.41, de PHP 7.4.4 et, grande nouveauté, de MariaDB à la place de MySQL. Cela fait des années que je tournais avec un serveur MySQL, mais il est passé de mode après un changement de licence et de philosophie, remplacé par son fork MariaDB qui reste totalement libre. J’ai eu un peu de mal à l’installer à partir des sources, mais la migration de mes bases MySQL n’a pas posé de soucis, il faut dire que MariaDB assure une compatibilité avec MySQL. Cerise sur le gâteau, j’ai configuré une connexion chiffrée entre le client et le serveur MariaDB, même si la configuration de la connexion à partir de phpMyAdmin n’a pas été simple.

J’ai également mis à jour la page présentant l’installation d’un moteur de recherche, cela fait 15 ans que je ne l’avais pas mise à jour ! Jusqu’à présent je me basais sur Ht://Dig qui n’est plus maintenu depuis des lustres, je présente maintenant Hl://Dig qui n’est d’autre qu’un fork de Ht://Dig mais qui est toujours maintenu.

Pour terminer j’ai mis à jour la page qui présente les outils webalizer et awstats pour analyser les fichiers logs d’Apache, avec la nouvelle version de mon script qui me sert à récupérer les logs de mon serveur funix hébergé chez online.net et à les analyser et à les rendre accessible sur mon serveur web perso.

Et pour vous donner une illustration de ce qu’on peut faire avec un serveur web, voici une liste non exhaustive des applications de mon serveur web perso:

  • consultation des mails sur mon mobile à distance via le webmail Roundcube Mail, comme présenté ici,
  • synchronisation de mes contacts, de mon agenda et de mes fichiers via NextCloud, comme présenté ,
  • consultation à distance des images et vidéos d’une webcam configurée comme une caméra à détection de mouvement, comme présenté ici,
  • consultation de l’état de l’onduleur qui soutient électriquement mon serveur, présenté .

Installation d’un cloud personnel avec NextCloud

Jusqu’à présent j’utilisais OwnCloud pour synchroniser et stocker les informations (contacts téléphoniques notamment) de mon téléphone mobile. Le serveur n’est pas accessible d’internet et je synchronise en WIFI seulement à la maison, ce qui suffit à mon utilisation. A ce sujet j’avais rédigé ce post. Cela permet de ne pas dépendre d’un tiers qui est rarement de confiance comme Google (entre autres) pour stocker ses informations personnelles. Il se trouve qu’OwnCloud a dérivé petit à petit vers un produit commercial ce qui conduit à la création d’un fork appelé NextCloud. Aujourd’hui certaines fonctions ne sont présentes que dans la version payante d’OwnCloud alors qu’elle reste disponible dans NextCloud. De fait NextCloud semble s’imposer comme outil de Cloud et j’ai donc fait le choix de migrer d’OwnCloud à NextCloud.

A vrai dire je ne suis pas parti d’une migration de données même s’il existe des outils pour le faire. J’ai considéré que j’avais peu de données à migrer et que cela ne valait pas le coup d’autant qu’elles restaient stockées sur le téléphone et que je pouvais toujours peupler facilement la base à l’installation de NextCloud. Pour l’installation de NextCloud, rappelons qu’il faut disposer d’un serveur httpd avec PHP et un serveur de bases de donnée (autrement dit un serveur LAMP (Linux, Apache, MySQL/MariaDB et PHP)). Ensuite l’installation est assez simple, on peut se baser sur cette page. J’ai installé le package, qu’on récupèrera par , sous /var/www/nextcloud. On donnera la propriété du répertoire à l’utilisateur du process httpd tel que défini dans le fichier httpd.conf avec la commande chown.

chown -R daemon:daemon /var/www/nextcloud
Continuer la lecture de Installation d’un cloud personnel avec NextCloud

Randonnée Bras Rouge et OpenShot Video Editor

Je viens de terminer mon dernier montage avec la dernière version du logiciel de montage vidéo opensource OpenShot Video Editor. Pour la vidéo en elle même il s’agit d’une randonnée dans le cirque de Cilaos à la Réunion qui sort des sentiers battus (et des sentiers balisés, entretenus et référencés) dont l’objectif est un bassin avec un toboggan naturel qui vous invite à la baignade au bord d’une falaise dans un décor fabuleux.

Pour la randonnée je vous invite à en découvrir tous les détails dans cette page.

Pour en revenir au montage lui même, jusqu’à présent j’étais un fervent utilisateur de Kdenlive. Cependant en mettant à jour le tutoriel de la dernière version 2.5.1 d’OpenShot Video Editor que je venais d’installer, je me rends compte que d’énormes progrès ont été réalisés depuis les version 1.4.X et que ça valait le coup que je tente un montage pour pouvoir mieux le comparer à Kdenlive. Vous trouverez ci-après quelques points de comparaison entre les deux logiciels.

Continuer la lecture de Randonnée Bras Rouge et OpenShot Video Editor

reconstruction d’un dell poweredge T310 après un crASH disque d’un raid 5

Pour mémoire, je dispose d’un serveur Dell PowerEdge T310 que j’ai acheté pour une poignée de figues sur ebay, d’occasion évidemment. Il me sert de serveur perso sur mon réseau local (serveur de fichiers via NFS et automontage sur les clients, de serveur de mail en réception et en émission, et de serveur d’authentification, entre autres), il me permet également d’envoyer et de recevoir des mails à partir de mon téléphone mobile où que je sois en fournissant un service de webmail à distance.

Il est installé dans le garage et tourne 7j/7 24h/24. Il est équipé d’une carte contrôleur RAID hard PERC 6/i et de 6 disques durs au total : 2 disques SATA en RAID 1 (installés d’origine à l’achat de la bête) pour le système et 4 disques SATA Seagata Barracuda en RAID 5 rajoutés en plus pour les données, c’est sans doute ce qui m’a coûté le plus cher pour monter cette configuration. A l’époque de mon achat (2015) j’avais installé la Mageia 5.
Depuis par flemme et surtout car j’appréhendais le boulot vu la personnalisation poussée du serveur, j’avais repoussé aux calendes grecques sa mise à jour alors que Mageia 5 n’est plus maintenue depuis un certain temps.
Et bien en fait, le serveur s’est rappelé à moi il y a quelques jours avec un disque SATA qui a lâché au bout de 5 ans de fonctionnement. C’est un modèle bas de gamme qui n’est pas prévu pour tourner 7j/7 24h/24. En farfouillant dans la configuration BIOS du contrôleur PERC 6/i, je découvre que j’ai un autre disque qui est à deux doigts de lâcher, je me retrouve avec un système virtuel RAID 5 fortement dégradé qui m’a généré une tonne d’erreurs de disques que j’ai dû traiter avec fsck. Au final j’ai laissé des plumes niveau données. Mais ouf ! Je suis bien content d’avoir programmé une sauvegarde incrémentale sur un autre disque externe (voir par ).
Tant qu’à faire à mettre les mains dans le cambouis, je me suis dit qu’il était temps de migrer vers Mageia 7.1, j’ai fait le choix de ne pas refaire une installation complète pour ne pas perdre toute ma configuration et gagner du temps. J’ai donc opéré une migration vers la 6 puis vers la 7.1 et là bluffé j’ai retrouvé tous mes petits et pourtant j’avais de quoi m’inquiéter avec tout ce qui tourne dessus en version packagée, compilée et fortement personnalisée. Je dois juste déplorer qu’il n’a pas repris le fichier de configuration de sendmail, mais à part ça rien à redire.


Me voilà donc avec un serveur up to date. Pour reconstruire le RAID, j’ai installé 2 disques Seagate de la gamme au dessus, des IronWolf qui sont donnés pour pouvoir tourner 7j/7 et 24h/24, en espérant tout de même qu’ils tiennent plus que 5 ans.

Continuer la lecture de reconstruction d’un dell poweredge T310 après un crASH disque d’un raid 5

Lecteurs audio sous linux

Comme lecteur audio cela fait des années que j’utilise Clementine. Par rapport à ses nombreux concurrents, il présente le gros avantage de proposer des listes de lecture intelligentes et c’est bien pour ça que mon choix s’est porté vers lui. En effet, quand on dispose d’un catalogue de plusieurs milliers de titres, c’est souvent laborieux et chronophage de créer ses propres listes de lecture, autant laisser le système le faire à votre place. Clementine propose ainsi les modes de lecture intelligents suivants :

  • 50 pistes aléatoires ;
  • déjà joués ;
  • dernières écoutes ;
  • jamais joués ;
  • les plus joués ;
  • mix aléatoire dynamique ;
  • nouvelles pistes ;
  • pistes favorites ;
  • pistes les moins aimées ;
  • toutes les pistes.

Pour que ça soit efficace, il faut bien sûr utiliser régulièrement Clementine pour qu’il constitue une base de données des goûts musicaux.

Capture d’écran de Clementine en Qt5

Suivant le mode choisi, après un premier choix de liste réalisé par le système, on peut repeupler ou agrandir la liste de lecture comme bon nous semble. Sinon Clementine, comme d’autres, propose un mode parole des chansons, un mode d’information sur l’artiste et l’affichage des pochettes d’album.

Continuer la lecture de Lecteurs audio sous linux

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 :

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