Vue normale

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
À partir d’avant-hierFlux principal

Sortie de GIMP 2.99.18 (version de développement)

Note : cette dépêche est une traduction de l'annonce officielle de la sortie de GIMP 2.99.18 du 21 février 2024 (en anglais).

Voici enfin la dernière version de développement avant GIMP 3 ! Bien que la sortie de la version 2.99.18 soit un peu en retard par rapport au planning espéré, celle-ci contient un certain nombre de fonctionnalités et d'améliorations que nous sommes ravis de pouvoir partager avec vous.

⚠️ ☢️ Nous vous rappelons qu'une version de développement sert à présenter les travaux en cours, mais vous permet aussi de détecter et signaler les problèmes au plus tôt. En d'autres termes, cette version est instable et nous ne recommandons pas son usage en production. Utilisez-là parce que vous voulez aider à améliorer GIMP en signalant des bogues.

En particulier, cette version 2.99.18 est peut-être l'une des versions les plus instables de la série 2.99 à cause du projet « space invasion » (NDT : « invasion venue de l'espace », un jeu de mots avec l'anglais colorspace signifiant espace de couleurs). Cela est parfaitement attendu et normal. ⚠️ ☢️

    Sommaire

    Cette dépêche présente les changements les plus notables et les plus visibles. En particulier, elle ne contient pas de liste exhaustive des correctifs de bogues ou des améliorations un peu moins importantes. Pour une liste plus complète des changements, nous vous invitons à consulter le fichier NEWS ou à jeter un coup d’œil à l'historique du dépôt Git.

    L'invasion de l'espace (des couleurs) !

    Nous avons travaillé dur sur le projet Space Invasion, qui est — comme vous vous en rappelez peut-être — le nom de code que nous avons donné au projet visant à rendre GIMP plus correct en ce qui concerne les couleurs.

    Ces derniers temps, nous avons réalisé le portage des anciennes structures de couleurs utilisées en interne (GimpRGB, GimpCMYK, GimpHSV…) dont nous nous servions pour stocker les informations de couleurs vers GeglColor. Cet objet générique peut contenir n'importe quelle donnée de couleur, quel que soit le modèle colorimétrique, la précision ou l'espace, du moment que ceux-ci sont pris en charge par babl, notre moteur pour l'encodage des pixels.

    En ce qui concerne la justesse des couleurs, cela signifie que nous ferons maintenant les conversions de couleurs uniquement si cela est nécessaire (conversions à la dernière minute), ce qui permettra de ne pas perdre d'information lorsque cela peut être évité. Par exemple, imaginons que vous utilisiez la pipette à couleurs sur une image : si nous convertissions cette couleur vers un format intermédiaire avant de l'utiliser sur une autre image (qui peut avoir le même format de couleurs ou un format différent), deux conversions auraient lieu. Cela augmente les possibilités de perte de précision. Ce problème est encore plus flagrant si les formats d'entrée et de sortie sont les mêmes (autrement dit, lorsqu'aucune conversion n'est nécessaire). Et cela sera encore plus problématique lorsque le modèle CMJN sera pris en charge nativement (nous voulons éviter à tout prix de faire un aller-retour entre un format intermédiaire et le CMJN, qui n'a pas de relation bijective avec la plupart des autres modèles de couleurs, même en travaillant sans bornes et en ignorant les problèmes de précision).

    Définition d'un espace non borné (ajout par rapport à la dépêche originelle) : lorsque la précision est entière, l'espace est toujours borné (par exemple [0-255] en 8-bit). Par contre, en flottant, où l'espace de travail standard est [0, 1], on peut décider d'accepter les valeurs négatives et supérieures à 1. Cela rend les conversions entre beaucoup d'espaces de couleurs bijectives, aux erreurs de précisions près. Notamment, les conversions entre deux espaces RVB, ou même un espace RVB et divers autres modèles, deviennent bijectives. Ce n'est pas le cas entre RVB et CMJN, même en espace de couleurs infini.

    Nous sommes également en train de migrer le stockage des données de couleur vers ce type d'objet générique. Cela signifie entre autres que les palettes de couleurs pourront comporter des couleurs au format CMJN, CIELAB ou bien encore dans tout autre modèle pris en charge (et pas seulement ces couleurs après une étape de conversion vers le sRVB non borné - « unbounded sRGB »).

    Une conséquence pour la maintenance logicielle est qu'il sera beaucoup plus facile de gérer les conversions de couleurs au sein de notre code, étant donné que cette structure comprend à la fois les données et leur « signification ». Cela rend la gestion des couleurs beaucoup moins susceptible d'introduire des bogues par rapport à l'approche précédente, qui consistait à faire suivre les deux types d'information séparément.

    Finalement, nous travaillons à faire apparaître l'information concernant l'espace de couleurs à plusieurs endroits de l'interface où cela est pertinent, par exemple lorsque des données RVB, CMJN, TSL ou TSV sont affichées ou peuvent être choisies. Les valeurs brutes dans ces modèles de couleurs en l'absence de la connaissance de l'espace de couleurs associé n'ont pratiquement aucun sens. L'affichage dans l'interface de valeurs RVB sans autre précision est un reliquat du passé, lorsque cela signifait le plus souvent sRVB. Cela n'est plus vrai dans un contexte graphique moderne et l'interface devrait être claire à ce sujet.

    La vidéo ci-dessous montre quelques aspects de ce travail sur l'interface, par exemple le fait que les modèles RVB, TSV ou CMJN affichent à tout instant l'espace de couleurs dans lequel les valeurs sont considérées (ce qui très souvent correspond au nom du profil ICC). Cela est déjà fait pour la pipette à couleurs, les échantillons de couleurs, l'ancrable des couleurs de premier/d'arrière plan, la boîte de dialogue « Changer la couleur de premier/d'arrière plan », ainsi qu'à d'autres endroits.

    Non seulement cela, mais lorsque les gens sélectionnent un profil d’épreuve sur écran et activent l'épreuve sur écran (par exemple grâce à la nouvelle bascule de simulation qui a été ajoutée dans GIMP 2.99.12), nous afficherons également non seulement la zone hors gamme de l'espace colorimétrique de l'image, mais également celle de l'espace d’épreuve.

    Invasion de l'espace dans l'interface - GIMP 2.99.18
    Invasion de l'espace dans l'interface - GIMP 2.99.18 (cliquez sur l'image pour voir la vidéo sur le compte Peertube de GIMP)

    Avertissement très important : il s'agit encore une fois d'un portage énorme dans notre base de code, ce qui a impacté littéralement des milliers de lignes de code. Ce travail est inachevé mais il devra être terminé avant la première version candidate. Des instabilités ou des bugs sont à prévoir dans cette mise à jour donc si vous rencontrez un problème, nous recommandons de le rapporter.

    Amélioration des algorithmes de couleur

    Øyvind Kolås a amélioré quelques algorithmes internes :

    • Les pixels achromatiques de l'outil Teinte-Saturation sont désormais un cas spécial afin que les pixels en niveaux de gris (saturation de 0) ne soient modifiés que par le réglage principal, pas par le réglage rouge.
    • Les dégradés en niveaux de gris restent désormais achromatiques même avec "Tramage" coché dans l'outil Dégradé.

    Au fur et à mesure que le projet space invasion avance, obtenir des résultats cohérents devient plus facile dans divers algorithmes liés aux couleurs, nous permettant ainsi de découvrir rapidement les problèmes et de les résoudre.

    Édition non-destructive, première mouture

    Un domaine dans lequel nous sommes « en avance sur le planning » est l'édition non destructive, qui était très demandée ! Les fondations de ces fonctionnalités ont été mises en place par de nombreux développeurs au cours de nombreuses années, depuis l'introduction de GEGL dans GIMP. Bien qu'initialement prévue pour la feuille de route de la version 3.2, une première implémentation a vu le jour en tant que continuation d'un projet Google Summer of Code. Si vous n'êtes pas familier avec ce terme, « édition non destructive » implique notamment que des effets de filtres tels qu'un effet de flou sont stockés séparément des pixels du calque. Cela signifie que si vous désirez plus tard modifier un réglage, réarranger ou même retirer le filtre, vous pouvez le faire très facilement sans affecter le reste de l'image. Jusqu'à présent, GIMP utilisait une procédure d'édition destructive où les effets étaient immédiatement appliqués sur le calque, c'est donc un changement majeur !

    Toute opération GEGL munie d'une interface graphique est désormais appliquée aux calques de manière non destructive. (Les effets non destructifs pour les masques de calques et les canaux sont prévus pour les versions ultérieures.) Cela inclut les greffons GEGL tiers et les opérations personnalisées créées avec notre outil GEGL Graph. Ces effets peuvent être sauvegardés et chargés via les fichiers de projet .xcf, bien que toutes les propriétés GEGL ne soient pas encore prises en charge dans la version actuelle.

    Une fois qu'un filtre a été appliqué, vous pouvez continuer à interagir avec lui en cliquant sur l'icône de filtre dans l'ancrable des calques. Cela ouvrira une boîte de dialogue montrant tous les filtres actuellement appliqués au calque. À partir de là, vous pouvez alterner l'état de visibilité du filtre, modifier ses réglages, réordonner les filtres et retirer les effets un à un. Vous pouvez aussi fusionner tous les filtres et les appliquer à l'image pour retrouver une procédure d'édition destructive.

    Effets non destructifs - GIMP 2.99.18
    Effets non destructifs - GIMP 2.99.18 (cliquez sur l'image pour voir la vidéo sur le compte Peertube de GIMP)

    Notez bien que tout cela est seulement une première implémentation, et beaucoup de travail reste à faire pour disposer d'une édition non destructive complète et riche. Nous allons continuer à affiner les fonctionnalités existantes pour la sortie de la version 3.0 en nous basant sur les tests et les retours des utilisateurs, et nous les développerons davantage par la suite. L'interface elle-même ne correspond pas à notre vision idéale de cette fonctionnalité, et un premier jet de spécifications a été écrit pour définir un processus d'édition bien plus intégré.

    La capture d'écran ci-dessous est une maquette réalisée à partir de ces premières spécifications. Elle montre les effets de calque placés au sein de la liste principale des calques, partageant les mêmes boutons « œil » et « cadenas », mais également avec leurs propres masques faciles à éditer :

    Maquette des spécifications pour l'application non-destructive d'effets de calque

    Maquette des spécifications : les effets de calque sont visibles directement dans la liste des calques, avec leur propres masques

    Néanmoins, l'implémentation de cette nouvelle interface sera un défi en elle-même et nous avons donc décidé de la remettre à après la sortie de GIMP 3 et de proposer cette première mouture en premier lieu.

    N'hésitez pas à partager vos opinions dans les forums de discussion et dans le suivi des incidents !

    Amélioration de la prise en charge des polices de caractères

    Idriss Fekir, un autre étudiant du GSoC 2023, a travaillé avec Liam Quinn, un développeur de longue date, sur l'amélioration de la prise en charge des polices de caractères par GIMP. Une grande partie de ce travail concerne le code interne de GIMP afin d'améliorer sa capacité à gérer les futures mises à jour de polices et de texte. Certains changements plus visibles sont par exemple :

    • GIMP n'a plus besoin que les noms des polices de caractères soient uniques pour pouvoir les distinguer les unes des autres. Cela signifie qu'il n'ajoutera plus « #1 », « #2 » et ainsi de suite, mais gardera à présent les noms originaux dans la liste de sélection des polices. Malgré des noms apparemment identiques, deux polices avec le même nom fonctionneront désormais correctement.
    • GIMP peut maintenant charger des polices avec des styles personnalisés (en contournant l'utilisation de Pango qui n'est pas capable de les charger).
    • Nous pouvons à présent charger davantage de types de polices qu'auparavant. Si jamais nous ne prenons pas encore en charge une police donnée (ou si elle est inexistante), nous sommes mieux à même de le détecter et nous pouvons nous replier sur une police par défaut. Cela permet d'améliorer la prise en charge d'un fichier .xcf créé sur un autre ordinateur avec différentes polices disponibles.
    • Sous Windows, nous forçons le moteur Pango à toujours utiliser l'anticrénelage. Cela augmente la lisibilité du texte des menus sous ce système d'exploitation, en particulier lorsqu'un thème sombre est utilisé.
    • Le code pour la sauvegarde au format XCF stocke désormais les informations concernant les polices de manière bien plus précise, ce qui aide à éviter de charger une police incorrecte lors de la réouverture d'un fichier XCF.
    • L'alignement du texte dans les calques de texte pour les langues écrites de la droite vers la gauche est maintenant plus cohérent avec la manière dont cela fonctionne dans d'autres programmes (par exemple LibreOffice et Scribus).

    Ces changements sont beaucoup moins voyants que certaines autres fonctionnalités et pourraient sembler moins importants, mais ils constituent en fait les fondations qui permettront d'avoir une gestion du texte bien plus fiable dans GIMP. Notre vision pour le futur est d'avoir une édition de texte plus simple tout en étant plus puissante et plus riche en fonctionnalités (en particulier les fonctionnalités OpenType qui sont quelques-unes des améliorations majeures que nous espérons ajouter un jour ou l'autre).

    Expansion automatique des calques

    Le troisième projet GSoC de l'été dernier par l'étudiant Shubham Daule a apporté une fonctionnalité demandée depuis longtemps : l'expansion automatique de calques ! Les outils de peinture ont désormais une option supplémentaire « Étendre les calques ». Lorsque cette case est cochée, peindre au-delà des limites des calques les fera s'étendre automatiquement afin que vous n'ayez pas à gérer vous-même la taille du calque. Si vous souhaitez étendre le calque au-delà de la taille actuelle du canevas, vous devrez également cocher l'option « Afficher tout » dans le menu Affichage.

    Calques à expansion automatique - démonstration de GIMP 2.99.18
    Calques à expansion automatique - GIMP 2.99.18 (cliquez sur l'image pour voir la vidéo sur le compte Peertube de GIMP)

    L'option d'expansion des calques comporte également des paramètres supplémentaires lorsqu'elle est sélectionnée. Vous pouvez décider dans quelle mesure vous souhaitez que les limites du calque s'étendent chaque fois que le pinceau les atteint. Il existe également des options pour spécifier comment les nouvelles zones du calque et du masque de calque doivent être remplies une fois étendues.

    Nouvelles options d'alignement

    Le nouveau contributeur mr. fantastic a développé deux nouvelles options pour aligner les calques sur le canevas. Avec « Snap to Bounding Boxes » (« Aligner sur les boîtes englobantes ») activé, des guides dynamiques s'afficheront désormais pour vous montrer quand le calque que vous déplacez est aligné avec le centre ou les côtés des autres. Le calque actif s'alignera également sur ces bordures pour vous aider à les organiser correctement. La deuxième option, « Snap to Equidistance » (« Aligner à équidistance »), vous permet un alignement entre trois calques équidistants les uns des autres.

    Aligner sur les boîtes englobantes et Aligner à équidistance - démonstration de GIMP 2.99.18
    Nouvelles options d'alignement automatique - GIMP 2.99.18 (cliquez sur l'image pour voir la vidéo sur le compte Peertube de GIMP)

    Thèmes

    Nous avons continué à améliorer l'interface utilisateur et le style de cette version. L’une des améliorations les plus importantes concernait la gestion des « fuites de thèmes système ». Il existe des styles qui n'ont pas été spécifiquement définis dans nos thèmes, donnant ainsi l'opportunité aux règles de style du thème système de "fuiter" de manière conflictuelle dans notre interface. Avec l’aide et les retours de plusieurs contributeurs et utilisateurs, nous avons beaucoup progressé dans la définition de ces styles afin que tous aient une expérience cohérente !

    Récemment, Jehan a travaillé sur la réorganisation et la simplification de notre système de thèmes. Dans les versions de développement précédentes, nous avions cinq thèmes différents : Par Défaut, Gris, Système, Plus Sombre et Compact (chacun avec des options claires et sombres). Ceux-ci ont été simplifiés dans le thème Système et un seul thème par défaut avec trois états possibles : clair, foncé et gris. De même, nos quatre thèmes d'icônes distincts ont été condensés dans l'ensemble Legacy et un thème d'icôns par défaut avec des variantes couleur et symbolique. Nous pensons que ces changements réduiront la confusion des utilisateurs et leur permettront de trouver plus facilement leur apparence d'interface préférée.

    De plus, sous Windows, la barre de titre principale (et la plupart des barres de titre des boîtes de dialogue) s'ajuste désormais au mode clair ou sombre en fonction du thème sélectionné.

    Boîte de dialogue de bienvenue

    La boîte de dialogue de bienvenue a été étendue pour fournir un accès rapide à un certain nombre de fonctionnalités et d'options utiles. Elle comporte ainsi quatre nouvelles sections :

    • Personnaliser : Plusieurs options de personnalisation nécessitent de fouiller dans la boîte de dialogue des Préférences pour être modifiées. À présent, vous pouvez facilement modifier les thèmes de couleurs et d'icônes, la langue et la taille de la police de l'interface utilisateur, ainsi que certains réglages en fonction du système d'exploitation.
    • Créer : Cette section affiche les huit images que vous avez ouvertes en dernier et vous permet de les rouvrir rapidement. Des boutons pour créer une nouvelle image ou pour en charger une existante sont également présents. À l'instar d'autres programmes, vous pouvez demander à ce que cet écran apparaisse automatiquement au démarrage de GIMP pour un accès direct à ces fonctionnalités.
    • Contribuer : Nous avons réuni ici quelques-unes des nombreuses façons dont vous pouvez participer au développement de GIMP. Cette section comporte des liens pour le signalement de bogues, pour écrire du code, pour aider aux traductions ou pour faire un don.
    • Notes de version : Précédemment, le lien vers ces notes étaient affichées dans la moitié inférieure de la boîte de dialogue de bienvenue. À présent, nous avons un onglet entier dédié à ces notes pour une lecture plus aisée.

    Formats de fichiers

    Comme cela était déjà le cas avec les versions précédentes, nous avons amélioré la prise en charge de formats de fichiers déjà existants et nous avons ajouté la prise en charge de l'importation et de l'exportation pour de nouveaux formats.

    DDS

    Stayd, un nouveau contributeur, a travaillé avec notre développeur Jacob Boerema pour apporter de nombreuses améliorations au greffon DDS. Pour commencer, les fonctions d'importation ont été écrites afin d'être plus simples et plus faciles à étendre dans le futur. Les mises à jour supplémentaires incluent également :

    • Le chargement d'images DDS RVBA 16 et 32 bits/canal est maintenant possible.
    • Le filtre cubique Catmull-Rom a été ajouté pour la génération de mipmaps, et tous les calculs pour générer les mipmaps sont effectués avec une précision de 32 bits.
    • Les images DDS aux formats R8G8, R16 et R16G16 peuvent maintenant également être chargées.
    • Une option pour renverser verticalement les images DDS lors de l'importation a été ajoutée pour faire écho à l'option d'exportation correspondante, étant donné que certaines images de jeux stockent leurs données de cette manière.

    GIF

    Par le passé, écraser un fichier GIF à la sauvegarde (plutôt que de l'exporter) le convertissait systématiquement en un fichier avec une seule image. Désormais nous vérifions lors du chargement si le fichier GIF est une animation, de manière à également sauvegarder une animation lors de l'écrasement.

    HEIF et JPEG-XL

    Les deux greffons utilisent maintenant leurs bibliothèques respectives (libheif et libjxl) pour le chargement des métadonnées. Cela nous a permis de retirer notre code maison chargé d'interpréter l'orientation des images et d'utiliser à la place les informations fournies par ces bibliothèques.

    OpenEXR

    Le format OpenEXR permet aux canaux d'avoir des noms personnalisés, outre le type de couleur. Dans ce cas, nous considérons maintenant toute image à un seul canal avec un nom non conventionnel comme étant en niveaux de gris. Lors de l'importation, nous affichons une notification afin que les utilisateurs soient prévenus de cette conversion.

    PDF

    L'option d'exportation « Calques en tant que pages » fonctionne maintenant même s'il y a un seul groupe de calques. Auparavant, cette option n'était pas disponible car le greffon vérifiait seulement s'il y avait plus d'un « calque » sans examiner s'il s'agissait d'un groupe de calques avec de multiples sous-calques.

    PNG

    Les fragments de fichiers PNG qui sont « copiables sans risque » (« safe-to-copy chunks ») sont maintenant préservés lors de l'importation et inclus dans l'image exportée. Un autre souci qui existait lors de l'exportation de PNGs indexés avec transparence (et qui nous avait été souvent signalé) a été résolu. Désormais les couleurs indexées devraient être affichées correctement après exportation.

    PSD

    Jacob Boerema a poursuivi son travail d'amélioration du greffon PSD. En plus d'avoir résolu des bogues, par exemple dans l'ordre des calques lors de l'importation, il a aussi clarifié l'avertissement présenté lors de l'exportation et concernant la compatibilité des modes de calques entre GIMP et Photoshop.

    PSP

    Le greffon Paintshop Pro peut maintenant importer davantage de caractéristiques depuis un fichier projet, comme par exemple le profil de couleurs ICC, les guides, les grilles, et la sélection active lors de la sauvegarde. Les failles de sécurité ZDI-CAN-22096 et ZDI-CAN-22097 ont également été corrigées dans cette version.

    Nouveaux formats d'image pris en charge : Farbfeld, Esm Software PIX, HEJ2

    Nous avons récemment ajouté la prise en charge de l'importation et de l'exportation pour le format Farbfeld, un format d'image sRVB conçu pour être facile à lire, à envoyer dans des pipes et à compresser avec des outils tiers.

    Nous avons aussi ajouté la prise en charge de l'importation seule pour les nouveaux formats suivants :

    • Esm Software PIX : Un format JPEG modifié utilisé exclusivement par l'entreprise Esm Software pour stocker leurs images propres. Cela a été implementé en réponse à un signalement de bogue qui avait confondu ce format avec le format Alias PIX que nous prenions déjà en charge.
    • HEJ2 : Un ajout à notre greffon HEIF déjà existant fourni par Daniel Novomeský qui permet d'importer des images JPEG 2000 compressées.

    Nouveau format de palette pris en charge : Swatchbooker

    Swatchbooker est un programme libre de création et de conversion de palettes de couleurs qui prend en charge de nombreux formats. Bien que le programme lui-même n'ait pas été mis à jour depuis de nombreuses années, son format de palette propre .sbz est le plus complet de tous ceux que nous prenons en charge actuellement. Parmi ses nombreuses fonctionnalités, on peut citer la possibilité de définir des couleurs dans plusieurs modèles de couleurs pour chaque entrée d'une palette, des noms et des descriptions régionalisables, et la prise en charge de profils de couleurs ICC différents pour chaque entrée.

    Via notre travail sur la prise en charge de son importation, nous avons pu fournir des informations qui ont conduit à un correctif de bogue dans la prise en charge de Swatchbooker par Krita. C'est toujours sympa quand des projets peuvent collaborer et s'entraider !

    Interactions avec les pads de tablettes graphiques sous Wayland

    Carlos Garnacho, un contributeur GNOME de longue date, a ajouté la prise en charge de l'interaction directe des boutons de tablettes graphiques (pad) avec GIMP. Quand une tablette est branchée, vous pouvez désormais assigner différentes actions aux contrôles de la tablette depuis la boîte de dialogue « Périphériques d'entrée » dans le menu Édition.

    Assigner des actions aux boutons d'une tablette graphique
    Assigner des actions aux boutons d'une tablette graphique - GIMP 2.99.18

    Ce travail a aussi impliqué le portage de fonctionnalités vers GTK 3, la boîte à outils utilisée par GIMP pour son interface graphique. Notez que cette fonctionnalité est seulement disponible sous Wayland pour le moment.

    Mise à jour de l'API

    L'interface de programmation d'application (API), destinée aux créateurs de greffons, est régulièrement retravaillée dans le cadre de la refonte de GIMP 3. Une partie de ce travail est de migrer l'API vers l'utilisation de GeglColor lorsque les couleurs sont impliquées, ce qui entre dans le cadre plus général du projet Space Invasion. Malgré tout, ce n’est qu’une petite partie de l’ensemble des améliorations de l’API.

    Nous nous orientons également vers plus de classes pour représenter les différentes ressources gérées par GIMP (pinceaux, polices, motifs, etc.) au lieu de les représenter uniquement par des noms (ce qui était une limitation historique alors qu'il est tout à fait possible à 2 créateurs de ressources de choisir le même nom et le fait est que nous voyons de tels cas dans la nature — par exemple, 2 polices créées indépendamment peuvent avoir le même nom).

    Un autre grand pas consiste à remplacer le GimpValueArray représentant les arguments ordonnés d'une procédure d'un greffon par un GimpProcedureConfig qui contient les arguments par nom plutôt que par ordre. Cela permet une utilisation beaucoup plus sémantique des procédures de greffon (surtout lorsqu'elles ont une longue liste d'arguments) et facilitera également l'amélioration des greffons à l'avenir, avec des arguments nouveaux ou réorganisés sans créer de nouvelles procédures, car l'ordre et le nombre des arguments comptent beaucoup moins. Cela signifie que l'ajout de nouveaux arguments dans le futur ne brisera plus les scripts déjà existants qui dépendaient des versions antérieures de ces greffons (les auteurs de greffons devront toujours choisir des valeurs par défaut appropriées pour les nouveaux arguments afin que cela soit vrai, bien sûr).

    En parallèle, nous continuons d'améliorer la capacité de création automatique d'interfaces graphiques offerte aux greffons, rendant la création de boîtes de dialogue plus simple que jamais. Cela inclut (parmi de nombreuses autres améliorations) un nouveau type d'argument de procédure nommé GimpChoice qui est une liste de choix sous forme de chaînes de caractères qui peut être présentée aux créateurs sous forme de widgets de liste déroulante dans la boîte de dialogue de votre greffon.

    Nous prévoyons d'écrire et de publier un didacticiel pour les rédacteurs de greffons dans la section Développement de ressources de notre site Web pour développeur en même temps que la sortie de GIMP 3, ou peu de temps après.

    GEGL et babl

    Cette version de GIMP est accompagnée de nouvelles versions de GEGL et babl, qui contribuent toutes deux au projet (Color) Space Invasion.

    babl 0.1.108 apporte une nouvelle fonction babl_space_is_rgb pour nous aider à confirmer directement qu'un espace colorimétrique est RVB (plutôt que de faire plusieurs tests pour voir s'il n'est pas CMJN ou niveaux de gris). Plusieurs améliorations ont également été apportées au processus de compilation et à l'outil d'interface de ligne de commande de babl.

    GEGL 0.4.48 fournit plusieurs mises à jour de l'objet GeglColor qui prend désormais en charge une grande partie des opérations de couleur de GIMP. Les améliorations spécifiques incluent la possibilité d'obtenir et de définir directement les valeurs de couleur CMJN, ainsi que l'attribution de l'espace colorimétrique lors de la définition des couleurs RVB(A).

    Un crash dans le filtre gegl:voroni existant a été corrigé, et un bogue de longue date avec le filtre gegl:dropshadow qui empêchait l'effet de rétrécir a également été corrigé.

    Enfin, un nouveau filtre gegl:shuffle-search a été ajouté à l'atelier. Il mélange les pixels voisins pour créer un effet de tramage plus optimisé.

    Statistiques de sortie

    Hormis la première version de la série (2.99.2), GIMP 2.99.18 est clairement la plus grosse mise à jour à bien des égards. Depuis la version 2.99.16 :

    • 238 rapports ont été clôturés comme CORRIGÉS.
    • 201 demandes de fusion ont été acceptées.
    • 1358 commits ont été poussés.
    • 26 traductions ont été mises à jour : allemand, basque, biélorusse, portugais brésilien, bulgare, catalan, chinois (Chine), danois, espagnol, espéranto, finnois, géorgien, grec, hongrois, islandais, italien, lituanien, norvégien nynorsk, persan, polonais, russe , slovène, suédois, turc, ukrainien, vietnamien.

    60 personnes ont apporté des modifications ou des correctifs à la base de code de GIMP 2.99.18 (l'ordre est déterminé par le nombre de commits; certaines personnes apparaissent dans plusieurs groupes) :

    • 23 développeurs pour le code principal : Jehan, Alx Sa, Shubham, Jacob Boerema, Idriss Fekir, bootchk, Anders Jonsson, Carlos Garnacho, mr.fantastic, Stanislav Grinkov, lillolollo, Øyvind Kolås, Sabri Ünal, programmer_ceds, Lukas Oberhuber, programmer-ceds, James Golden, Luca Bacci, Massimo Valentini, Niels De Graef, Zander Brown, psykose, sonia.
    • 17 développeurs de greffons ou de modules : Jehan, Alx Sa, Jacob Boerema, bootchk, Anders Jonsson, Stayd, Zander Brown, Bruno Lopes, Daniel Novomeský, Sabri Ünal, programmer_ceds, Kamil Burda, Mark, Michael Schumacher, Stanislav Grinkov, programmer-ceds, sonia.
    • 31 traducteurs : Yuri Chornoivan, Martin, Ekaterine Papava, Luming Zh, Sabri Ünal, Anders Jonsson, Rodrigo Lledó, Jordi Mas, Alan Mortensen, Vasil Pupkin, Asier Sarasua Garmendia, Kolbjørn Stuestøl, Boyuan Yang, Víttor Paulo Vieira da Costa, dimspingos, Alexander Shopov, Alexandre Prokoudine, Aurimas Černius, Balázs Úr, Marco Ciampa, Sveinn í Felli, Danial Behzadi, Ngọc Quân Trần, Jürgen Benvenuti, Piotr Drąg, Timo Jyrinki, Andre Klapper, Kristjan SCHMIDT, MohammadSaleh Kamyab, Rafael Fontenelle, Tim Sabsch.
    • 9 créateurs de ressources (icônes, thèmes, curseurs, splash screen, métadonnées…) : Alx Sa, Jehan, Ferry Jérémie, Stanislav Grinkov, Anders Jonsson, Bruno Lopes, Jacob Boerema, Sabri Ünal, mr.fantastic.
    • 5 contributeurs à la documentation : Jehan, Bruno Lopes, Jacob Boerema, Alx Sa, Anders Jonsson.
    • 14 contributeurs pour la compilation, l'empaquetage ou l'intégration continue : Jehan, Bruno Lopes, bootchk, Alx Sa, Zander Brown, Jacob Boerema, Jacob Boerema, Stayd, Carlos Garnacho, Heiko Becker, mr.fantastic, Daniel Novomeský, U-YGGDRASIL\ender, lillolollo.

    Contributions à d'autres dépôts du GIMPverse (l'ordre est déterminé par le nombre de commits) :

    • babl 0.1.108 est composé de 17 commits par 6 contributeurs : Jehan, Øyvind Kolås, John Marshall, Andre Klapper, John, sid.
    • GEGL 0.4.48 est composé de 77 commits par 20 contributeurs : Øyvind Kolås, Jehan, Anders Jonsson, Jacob Boerema, Yuri Chornoivan, Alan Mortensen, Sabri Ünal, Andre Klapper, Ekaterine Papava, Jan Tojnar, Jordi Mas, Luming Zh, Martin , Piotr Drąg, Víttor Paulo Vieira da Costa, Asier Sarasua Garmendia, Marco Ciampa, Rodrigo Lledó, dimspingos, woob.
    • ctx a eu 308 commits depuis la version 2.99.14 par 1 contributeur : Øyvind Kolås.
    • La version gimp-macos-build (scripts d'empaquetage macOS) est composée de 32 commits par 1 contributeur : Lukas Oberhuber.
    • La version flatpak est composée de 15 commits par 3 contributeurs : Jehan, Daniel Novomeský et Hubert Figuière.
    • Notre site Web principal a eu 31 commits depuis la sortie du 2.10.36 par 6 contributeurs : Jehan, Alx Sa, Sabri Ünal, Anders Jonsson, Bruno Lopes, Jonathan Demeyer.
    • Notre site Web des développeurs a eu 30 commits depuis la version 2.10.36 par 5 contributeurs : Bruno Lopes, Jehan, Alx Sa, bootchk, Robin Swift.
    • Notre documentation 3.0 a enregistré 247 commits depuis la version 2.99.16 par 17 contributeurs : Andre Klapper, Jacob Boerema, Yuri Chornoivan, Alx Sa, Jordi Mas, Alan Mortensen, Dimspingos, Anders Jonsson, Boyuan Yang, Sabri Ünal, Víttor Paulo Vieira da Costa, Juliano de Souza Camargo, Rodrigo Lledó, Kolbjørn Stuestøl, Marco Ciampa, Danial Behzadi, Emin Tufan Çetin.

    N'oublions pas de remercier toutes les personnes qui nous aident à faire le tri dans Gitlab, rapportent des bogues et discutent avec nous d'éventuelles améliorations. Notre communauté est également profondément reconnaissante envers les guerriers d'Internet qui gèrent nos différents canaux de discussion ou comptes de réseaux sociaux tels que Ville Pätsi, Liam Quin, Michael Schumacher et Sevenix !

    Remarque : compte tenu du nombre de pièces qui composent GIMP et son environnement, et de la manière dont nous obtenons des statistiques via des scripts git, des erreurs peuvent se glisser dans ces statistiques. N'hésitez pas à nous dire si nous avons manqué ou mal catégorisé certains contributeurs ou contributions.

    Nouvelles de l'équipe et procédure de sortie

    Les droits d'accès au dépôt git ont été récemment accordés à Bruno Lopes (qui a été très actif dans l'amélioration de notre processus de compilation et de l'empaquetage pour Windows).

    Plusieurs développeurs ou empaqueteurs de longue date ou plus récents qui ont commencé à contribuer au nouveau site Web des développeurs ont également reçu l'accès au dépôt git associé.

    De plus en plus de contributeurs participent désormais activement aux tests des versions et du processus d'empaquetage, et c'est la première dépêche depuis des années (NDT : cela désigne la news originale sur le site de GIMP) que Jehan n'a pas écrite presque entièrement ! Merci beaucoup à Alx Sa (alias Nikc ou CmykStudent) d'avoir entamé la rédaction collaborative de la nouvelle !

    Il est clair que nous consolidons jour après jour une solide équipe de contributeurs et cela se voit dans notre processus de publication, avec de plus en plus de retours à chaque version.

    Nous sommes également particulièrement heureux et fiers que les 4 projets GSoC que nous avons eus, depuis que nous avons recommencé à souscrire à ce programme de mentorat, aient tous été couronnés de succès et ont fini par être fusionnés avec la branche principale du code au plus tard six mois après la fin du stage.

    Autour de GIMP

    Des nouvelles des miroirs

    Depuis la dernière dépêche, un nouveau miroir a été apporté à GIMP par :

    • Sahil Dhiman, à Nuremberg, en Allemagne, comme projet personnel.

    Cela nous amène à un total de 46 miroirs répartis dans le monde.

    Les miroirs sont importants car ils aident le projet en partageant la charge de dizaines de milliers de téléchargements quotidiens. De plus, en disposant de miroirs répartis à travers le monde, nous garantissons que tout le monde puisse avoir un accès rapide au téléchargement de GIMP.

    GIMP sous Windows/ARM

    Depuis notre annonce d'une version expérimentale sur Windows pour l'architecture ARM 64 bits (en anglais), nous avons reçu l'aide de Hernan Martinez, contributeur bien connu du projet MSYS2, qui a hébergé notre tout premier runner pour l'intégration continue (CI) pour Windows sur l'architecture Aarch64. Bien que cela n'ait été qu'une configuration temporaire (littéralement une machine de compilation dans le salon de quelqu'un) en attendant une situation plus stable, nous sommes extrêmement reconnaissants envers Hernan qui nous a aidés à faire notre deuxième pas sur cette plateforme (la première étape a été effectuée par Jernej, qui a créé notre premier installateur expérimental), s'est assuré que notre processus de compilation automatique fonctionne sur cette machine, et plus encore.

    Depuis lors, la situation plus stable est arrivée : Arm Ltd. eux-mêmes se sont mobilisés et ont officiellement contribué trois runners pour notre processus d'intégration continue dans Gitlab ! Arm Ltd. a également sponsorisé un kit de développement Windows pour l'un de nos développeurs.

    Bien que nous considérions toujours cette version comme expérimentale, en raison du manque de tests et du fait que seuls 2 contributeurs disposent actuellement d'une machine capable de l'exécuter, le plus gros facteur bloquant a été supprimé et nous sommes heureux d'annoncer que notre programme d'installation Windows universel pour GIMP 2.99.18 contient GIMP pour les 3 plates-formes (x86 32 et 64 bits, et maintenant ARM 64 bits) !

    Télécharger GIMP 2.99.18

    Vous trouverez toutes nos versions officielles sur le site officiel de GIMP (gimp.org) :

    • Flatpaks Linux pour x86 et ARM (64 bits)
    • Installateur Windows universel pour x86 (32 et 64 bits) et pour ARM (64 bits)
    • Paquets macOS DMG pour le matériel Intel
    • Paquets macOS DMG pour le matériel Apple Silicon

    D'autres paquets réalisés par des tiers devraient évidemment suivre (paquets des distributions Linux ou *BSD, etc.).

    Et ensuite ?

    Alors que nous sommes maintenant entrés dans un gel des fonctionnalités, notre attention s'est déplacée vers la correction des bogues, le nettoyage et la préparation de la première version candidate 3.0.

    Nous pensons en effet qu'il s'agit de la dernière version de développement puisqu'aucune nouvelle fonctionnalité ne sera introduite désormais, du moins au niveau de l'interface utilisateur (l'API est encore en évolution jusqu'à la première version candidate). Donc, ce que vous voyez maintenant est essentiellement ce que vous devriez obtenir dans GIMP 3.0.0, en termes de fonctionnalités.

    C'est pourquoi nous avons sorti cette version même si nous savons qu'elle est assez instable. C'est l'heure des commentaires de dernière minute ! C'est aussi le moment de signaler et de corriger les bogues comme si demain n'existait pas. Nous espérons pouvoir bientôt livrer une RC1 et elle devrait être aussi dépourvue de bogue que possible.

    Nous espérons actuellement pouvoir publier GIMP pour le prochain Libre Graphics Meeting du 9 au 12 mai. Pour être honnête, ce n’est pas un objectif facile et nous ne sommes donc pas sûrs de pouvoir l’atteindre. Ce qui est sûr, c'est que même si nous n'y parvenons pas à temps, cela ne devrait pas arriver trop longtemps après. En particulier, nous ne publierons pas simplement parce que nous avons fixé une date limite. Nous voulons offrir la meilleure expérience possible, ce qui signifie que si nous découvrons des bogues bloquants de dernière minute, nous retarderons la sortie jusqu'à ce qu'ils soient corrigés.

    N'oubliez pas que vous pouvez faire un don et financer personnellement les développeurs de GIMP, c'est un moyen de donner en retour et d'accélérer le développement de GIMP. L’engagement communautaire permet au projet de se renforcer ! 💪🥳

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    Appel à présentation pour le LibreGraphicsMeeting 2024

    26 janvier 2024 à 06:38

    Depuis 2006, le LibreGraphicsMeeting réuni une fois par an divers équipes et utilisateurs avancés des logiciels de créations graphiques. Nous parlons ici de Gimp, Krita, Inkscape, Scribus pour les équipes les plus régulières mais d’autres projets viennent régulièrement contribuer au groupe ou se faire connaître, présenter des projets moins visibles, plus ciblés voire des bibliothèques d’outils. Le but de ces rencontres est multiple : permettre aux contributeurs de se retrouver une fois l’an pour définir des objectifs annuels, définir des stratégies interlogicielles afin de favoriser l’interopérabilité comme cela a pu être le cas avec la création de format comme le OpenRaster…

    Les effets du LibreGraphicsMeeting ont été importants dans le workflow de la création graphique mais cela n’est pas fini car le domaine évolue beaucoup en termes de besoin mais aussi en termes d’application avec de nouvelles pratiques et de nouvelles priorités.

    2024 signe le retour du LibreGraphicsMeeting en présentiel, ce qui était l’objectif initial. Il se déroulera à Rennes du 9 au 12 mai dans les locaux d’Activdesign et sera organisé cette année par l’Association francophone des graphistes libres (AFGRAL) en remplacement du Grafik Labor avant de reprendre éventuellement sa mobilité internationale.

    S’agissant d’une édition de reprise, l’objectif est de pouvoir faire un point sur les évolutions et nouveautés de ces dernières années par des conférences, et de permettre les rencontres lors d’atelier ou réunions de travail. Si vous souhaitez participer au LGM, n’hésitez pas à proposer une conférence avant le 2 février 2024, après quoi le comité de programmation se réunira.

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    Piwigo, la photo en liberté

    Par : Framasoft
    28 mars 2023 à 02:08

    Nous avons profité de la sortie d’une nouvelle version de l’application mobile pour interroger l’équipe de Piwigo, et plus particulièrement Pierrick, le créateur de ce logiciel libre qui a fêté ses vingt ans et qui est, c’est incroyable, rentable.

     

     

     

    Salut l’équipe de Piwigo ! Nous avons lu avec intérêt la page https://fr.piwigo.com/qui-sommes-nous

    Moi je note que « Piwigo » c’est plus sympa que « PhpWebGallery », comme nom de logiciel. Enfin, un logiciel libre qui n’a pas un nom trop tordu. Qu’est-ce que vous pouvez nous apprendre sur Piwigo, le logiciel ?

    Piwigo est un logiciel libre de gestion de photothèque. Il s’agit d’une application web, donc accessible depuis un navigateur web, que l’on peut également consulter et administrer avec des applications mobiles. Au-delà des photos, Piwigo permet d’organiser et indexer tout type de média : images, vidéos, documents PDF et autres fichiers de travail des graphistes. Originellement conçu pour les particuliers, il s’est au fil des ans trouvé un public auprès des organisations de toutes tailles.

     

    Le logo de Piwigo, le logiciel

     

    La gestation du projet PhpWebGallery démarre fin 2001 et la première version sortira aux vacances de Pâques 2002. Pendant les vacances, car j’étais étudiant en école d’ingénieur à Lyon et j’ai eu besoin de temps libre pour finaliser la première version. Le logiciel a tout de suite rencontré un public et des contributeurs ont rejoint l’aventure. En 2009, « PhpWebGallery » est renommé « Piwigo » mais seul le nom a changé, il s’agit du même projet.

    Les huit premières années, le projet était entièrement bénévole, avec des contributeurs (de qualité) qui donnaient de leur temps libre et de leurs compétences. Le passage d’étudiant à salarié m’a donné du temps libre, vraiment beaucoup. Je faisais pas mal d’heures pour mon employeur mais en comparaison avec le rythme prépa/école, c’était très tranquille : pas de devoirs à faire le soir ! Donc Piwigo a beaucoup avancé durant cette période. Devenu parent puis propriétaire d’un appartement, avec les travaux à faire… mon temps libre a fondu et il a fallu faire des choix. Soit j’arrêtais le projet et il aurait été repris par la communauté, soit je trouvais un modèle économique viable et compatible avec le projet pour en faire mon métier. Si je suis ici pour en parler douze ans plus tard, c’est que cette deuxième option a été retenue.

    En 2010 vous lancez le service piwigo.com ; un logiciel libre dont les auteurs ne crèvent pas de faim, c’est plutôt bien. Est-ce que c’est vrai ? Avez-vous trouvé votre modèle économique ?

     

    Le logo de Piwigo, le service

     

    Pour ce qui me concerne, je ne crève pas du tout de faim. J’ai pu rapidement retrouver des revenus équivalents à mon ancien salaire. Et davantage aujourd’hui. J’estime vivre très confortablement et ne manquer de rien. Ceci est très subjectif et mon mode de vie pourrait paraître « austère » pour certains et « extravagant » pour d’autres. En tout cas moi cela me convient :-)

    Notre modèle économique a un peu évolué en 12 ans. Si l’objectif est depuis le départ de se concentrer sur la vente d’abonnements, il a fallu quelques années pour que cela couvre mon salaire. J’ai eu l’opportunité de réaliser des prestations de dev en parallèle de Piwigo les premières années pour compenser la croissance lente des ventes d’abonnements.

    Ce qui a beaucoup changé c’est notre cible : on est passé d’une cible B2C (à destination des individus) à une cible B2B (à destination des organisations). Et cela a tout changé en terme de chiffre d’affaires. Malheureusement ou plutôt « factuellement » nous plafonnons depuis longtemps sur les particuliers. Nos offres Entreprise quant à elles sont en croissance continue, sans que l’on atteigne encore de plafond. Nous avons donc décidé de communiquer vers cette cible. Piwigo reste utilisable pour des particuliers bien sûr, mais ce sont prioritairement les organisations qui vont orienter notre feuille de route.

    Grâce à la réorientation de notre modèle économique, il a été possible de faire grossir l’équipe.

    Donc on a Piwigo.org qui fournit le logiciel libre que chacun⋅e peut installer à condition d’en avoir les compétences, et Piwigo.com, service commercial géré par ton équipe et toi. Vous vous chargez de la maintenance, des mises à jour, des sauvegardes.

    Qui est vraiment derrière Piwigo.com aujourd’hui ? Et combien de gens est-ce que ça fait vivre ?

    Une petite équipe mêlant des salariés, dont plusieurs alternants, des freelances dans les domaines du support, de la communication, du design ou encore de la gestion administrative. Cela représente 8 personnes, certaines à temps plein, d’autres à temps partiel. J’exclus le cabinet comptable, même s’il y passe du temps compte tenu du nombre de transactions que les abonnements représentent…

    Qu’est-ce qui est lourd ?

    Certains aspects purement comptables de l’activité. La gestion de la TVA par exemple. Non pas le principe de la TVA mais les règles autour de la TVA. Nous vendons en France, dans la zone Euro et hors zone Euro : à chaque situation sa règle d’application des taxes. Les PCA (produits constatés d’avance) sont aussi une petite source de tracas qu’il a fallu gérer proprement. Jamais je n’aurais imaginé passer autant de temps sur ce genre de sujets en lançant le projet commercial.

    Qu’est-ce qui est cool ?
    Constater que Piwigo est leur principal outil de travail de nombreux clients. On comprend alors que certains choix de design, certaines optimisations de performances font pour eux une grande différence au quotidien.

     

    Création d’un⋅e utilisateur⋅ice

     

    Nous avons lancé depuis quelques semaines une série d’entretiens utilisateurs durant lesquels des clients nous montrent comment ils utilisent Piwigo et c’est assez génial de les voir utiliser voire détourner les fonctionnalités que l’on a développées.

    D’un point de vue vraiment personnel, ce que je trouve cool c’est qu’un projet démarré sur mon temps libre pendant mes études soit devenu créateur d’emplois. Et j’espère un emploi « intéressant » pour les personnes concernées. Qu’elles soient participantes à l’aventure ou utilisatrices dans leur métier. Je crois vraiment au rôle social de l’entreprise et je suis particulièrement fier que Piwigo figure dans le parcours professionnel de nombreuses personnes.

    Votre liste de clients https://fr.piwigo.com/clients est impressionnante…

    Oui, je suis d’accord : ça claque ! et bien sûr tout est absolument authentique. Évidemment on n’affiche qu’une portion microscopique de notre liste de clients.

    Recevez-vous des commandes spécifiques des gros clients pour développer certaines fonctionnalités ?

    Pourquoi des « gros » ? Certaines entreprises « pas très grosses » ont des demandes spécifiques aussi. Bon, en pratique c’est vrai que certains « gros » ont l’habitude que l’outil s’adapte à leur besoin et pas le contraire. Donc parfois on adapte : en personnalisant l’interface quasiment toujours, en développant des plugins parfois. C’est moins de 5 % de nos clients qui vont payer une prestation de développement. Vendre ce type de prestation n’est pas au cœur de notre modèle économique mais ne pas le proposer pourrait nuire à la vente d’abonnements, donc on est ouverts aux demandes.

    Est-ce que vous refusez de faire certaines choses ?

    D’un point de vue du développement ? Pas souvent. Je n’ai pas souvenir de demandes suffisamment farfelues… pardon « spécifiques » pour qu’on les refuse a priori. En revanche il y a des choses qu’on refuse systématiquement : répondre à des appels d’offre et autre « marchés publics ». Quand une administration nous contacte et nous envoie des « dossiers » avec des listes de questions à rallonge, on s’assure qu’il n’y a pas d’appel d’offre derrière car on ne rentrera pas dans le processus. Nous ne vendons pas assez cher pour nous permettre de répondre à des appels d’offre. Je comprends que les entreprises qui vendent des tickets à 50k€+ se permettent ce genre de démarche administrative, mais avec notre ticket entre 500€ et 4 000€, on serait perdant à tous les coups. Le « coût administratif » d’un appel d’offre est plus élevé que le coût opérationnel de la solution proposée. C’est aberrant et on refuse de rentrer là-dedans.

    Bien que nous refusions de répondre à cette complexité administrative (très française), nous avons de nombreuses administrations comme clients : ministère, mairies, conseils départementaux, offices de tourisme… Comme quoi c’est possible (et légal) de ne pas gaspiller de l’énergie et du temps à remplir des dossiers.

    Y a-t-il beaucoup de particuliers qui, comme moi, vous confient leurs photos ? Faites péter les chiffres qui décoiffent !

    Environ 2000 particuliers sont clients de notre offre hébergée. Ils sont bien plus nombreux à confier leurs photos à Piwigo, mais ils ne sont pas hébergés sur nos serveurs. Notre dernière enquête en 2020 indiquait qu’environ un utilisateur sur dix était client de Piwigo.com [donc 90% des gens qui utilisent le logiciel Piwigo s’auto-hébergent ou s’hébergent ailleurs, NDLR] .

    Si on élargit un peu le champ de vision, on estime qu’il y a entre 50 000 et 500 000 installations de Piwigo dans le monde. Avec une énorme majorité d’installations hors Piwigo.com donc. Difficile à chiffrer précisément car Piwigo ne traque pas les installations.

     

    La page d’administration de Piwigo

     

    Pour des chiffres qui « décoiffent », je dirais qu’on a fait 30 % de croissance en 2020. Puis encore 30 % de croissance en 2021 (merci les confinements…) et qu’on revient à notre rythme de croisière de +15 % par an en 2022. Dans le contexte actuel de difficulté des entreprises, je trouve qu’on s’en sort bien !

    Autre chiffre qui décoiffe : on n’a pas levé un seul euro. Aucun business angel, aucune levée de fonds auprès d’investisseurs. Notre croissance est douce mais sereine. Attention pour autant : je ne dénigre pas le principe de lever des fonds. Cela permet d’aller beaucoup plus vite. Vers le succès ou l’échec, mais beaucoup plus vite ! Rien ne dit que si c’était à refaire, je n’essaierais pas de lever des fonds.

    Encore un chiffre respectable : Piwigo a soufflé sa vingtième bougie en 2022. Le projet a connu plusieurs phases et nous vivons actuellement celle de la professionnalisation. Beaucoup de projets libres s’arrêtent avant et disparaissent car ils ne franchissent pas cette étape. Si certains voient dans l’arrivée de l’argent une « trahison » de la communauté, je trouve au contraire que c’est sain et gage de pérennité. Lorsque les fondateurs d’un projet ont besoin d’un modèle économique viable pour payer leurs propres factures, vous pouvez être sûrs que le projet ne va pas être abandonné sur un coup de tête.

    Est-ce que les réseaux sociaux axés sur la photographie concurrencent Piwigo ? On pense à Instagram mais aussi à Pixelfed, évidemment.

    J’ai regardé rapidement ce qu’était Pixelfed. Ma conclusion au bout de quelques minutes : c’est un clone opensource à Instagram, en mode décentralisé.

    Piwigo n’est pas un réseau social. Pour certains utilisateurs, Piwigo a perdu de son intérêt dès lors que Facebook et ses albums photos sont arrivés. Pour d’autres, Piwigo constitue au contraire une solution pour ceux qui refusent la centralisation/uniformisation telle que proposée par Facebook ou Google. Enfin pour de nombreux clients pro (photographes ou entreprises) Piwigo est un outil à usage interne de l’équipe communication pour organiser les ressources média qui seront ensuite utilisées sur les réseaux sociaux. Il faut comprendre que pour les chargés de communication d’un office de tourisme, mettre sa photothèque sur Facebook n’a aucun sens. Ils ou elles publient quelques photos sur Facebook, sur Instagram ou autres, mais leur photothèque est organisée sur leur Piwigo.

    Bref, même si les premières années je me suis demandé si Piwigo était encore pertinent face à l’émergence de ces nouvelles formes de communication, je sais aujourd’hui que Piwigo n’est pas en concurrence frontale avec ces derniers mais qu’au contraire, l’existence de ces réseaux nécessite pour les marques/entreprises qu’elles organisent leurs photothèques. Piwigo est là pour les y aider.

    Quelles sont les différences ?

    La toute première des choses, c’est la temporalité. Les réseaux sociaux sont excellents pour obtenir une exposition forte et éphémère de votre « actualité ». À l’inverse, Piwigo va exceller pour vous permettre de retrouver un lot de photos parmi des centaines de milliers, organisées au fil des années. Piwigo permet de gérer son patrimoine photo (et autres médias) sur le temps long.

    L’autre aspect important c’est le travail en équipe. Un réseau social est généralement conçu autour d’une seule personne qui administre le compte. Dans Piwigo, plusieurs administrateurs collaborent (à un instant T ou dans la durée) pour construire la photothèque : classification, indexation (tags, titre, descriptions…)

    Enfin, certaines fonctionnalités n’ont tout simplement rien à voir. Par exemple, dans un réseau social le cœur de métier va être d’obtenir des likes. Dans un Piwigo, vous allez pouvoir mettre en place un moteur de recherche multicritères avec vos propres critères. Par exemple on a un client qui fabrique des matériaux acoustiques. Ses critères de recherche sont collection, coloris, lieu d’implantation… Cela n’aurait aucun sens sur l’interface uniformisée d’un Instagram.

    Qui apporte des contributions à Piwigo ? Est-ce que c’est surtout la core team ?

    Cela a beaucoup changé avec le temps. Et même ce qu’on appelle aujourd’hui « équipe » n’est plus la même chose que ce qu’on appelait « équipe » il y a 10 ans. Aujourd’hui, l’équipe c’est essentiellement celle du projet commercial. Pas uniquement mais quand même pas mal.

    On a donc beaucoup de contributions « internes » mais ce serait trop simplificateur d’ignorer l’énorme apport de la communauté de contributeurs au sens large. Déjà parce que l’état actuel de Piwigo repose sur les fondations créées par une communauté de développeurs bénévoles. Ensuite parce qu’on reçoit bien sûr des contributions sous forme de rapports de bugs, des pull-requests mais aussi grâce à des bénévoles qui aident des utilisateurs sur les forums communautaires, les bêta-testeurs… sans oublier les centaines de traducteurs.

    Petite anecdote dont je suis fier : Rasmus Lerdorf, créateur de PHP (le langage de programmation principalement utilisé dans Piwigo) nous a plusieurs fois envoyé des patches pour que Piwigo soit compatibles avec les dernières versions de PHP.

     

    Quel est votre lien avec le monde du Libre ? (<troll>y a-t-il un monde du Libre ?</troll>)

    Je ne sais pas s’il y a un « monde du libre ». Historiquement Les contributeurs sont d’abord des utilisateurs du logiciel qui ont voulu le faire évoluer. Je ne suis pas certain qu’il s’agisse de fervents défenseurs du logiciel libre.

    Franchement je ne sais pas trop comment répondre à cette question. Je sais que Piwigo est une brique de ce monde du libre mais je ne suis pas sûr que l’on conscientise le fait de faire partie d’un mouvement global. Je pense qu’on est pragmatique plutôt qu’idéologique.

     

    En tant que client, je viens de recevoir le mail qui annonce le changement de tarif. Pouvez-vous nous expliquer l’origine de cette décision ?

    Là on est vraiment sur l’actualité « à chaud ». Le changement de tarif pour les nouveaux/futurs clients a fait l’objet d’une longue réflexion et préparation. Je dirais qu’on le prépare depuis 18 mois.

     

    Si j’ai bien compris la clientèle particulière est un tout petit pourcentage de la clientèle de Piwigo.com ?

    Les clients de l’ancienne offre « individuelle » représentent 30 % du chiffre d’affaires des abonnements pour 91 % des clients. J’exclus les prestations de dev, qui sont exclusivement ordonnées par des entreprises. Donc « tout petit pourcentage », ça dépend du point de vue :-)

    Est-ce que l’offre de stockage illimité devient trop chère ?

    En moyenne sur l’ensemble des clients individuels, on est à ~30 Go de stockage utilisé. La médiane est quant à elle de 5Go. Si la marge financière dégagée n’est pas folle, on ne perd pas d’argent pour autant, car nous avons réussi à ne pas payer le stockage trop cher. Pour faire simple : on n’utilise pas de stockage cloud type Amazon Web Services, Google Cloud ou Microsoft Azure. Sinon on serait clairement perdant.

    Ceci est vrai tant qu’on propose de l’illimité sur les photos. Sauf que la première demande au support, devant toutes les autres, c’est : « puis-je ajouter mes vidéos ? », et cela change la donne. Hors de question de proposer de l’illimité sur les vidéos. De l’autre côté, on entend et on comprend la demande des utilisateurs concernant les vidéos. Donc on veut proposer les vidéos, mais il faut en parallèle introduire un quota de stockage.

    Ensuite nous avions un souci de cohérence entre l’offre individuelle (stockage illimité mais photos uniquement) et les offres entreprise (quota de stockage et tout type de fichiers). La solution qui nous paraît la meilleure est d’imposer un quota pour toutes les offres, mais un quota généreux. L’offre « Perso » est à 50 Go de stockage, donc largement au-delà de la conso moyenne.

    Enfin la principe de l’illimité est problématique. En 12 ans, la perception du grand public sur le numérique a évolué. Je parle spécifiquement de la consommation de ressources que le numérique représente. Le cloud, ce sont des serveurs dans des centres de données qui consomment de l’électricité, etc. En 2023, je pense que tout le monde a intégré le fait que nous vivons dans un monde fini. Ceci n’est pas compatible avec la notion de stockage infini. Je peux vous assurer que certains utilisateurs n’ont pas conscience de cette finitude.

    Est-ce que des pros ont utilisé cette offre destinée aux particuliers pour « abuser » ?

    Il y a des abus sur l’utilisation de l’espace de stockage, mais pas spécialement par des pros. On a des particuliers qui scannent des documents en haute résolution par dizaine de milliers pour des téraoctets stockés… On a des particuliers qui sont fans de telle ou telle star de cinéma et qui font des captures d’écran chaque seconde de chaque film de cet acteur. Ne rigolez pas, cela existe.

    En revanche on avait un soucis de positionnement : l’offre « individuelle » n’était pas très appropriée pour les photographes pros mais l’offre entreprise était trop chère. On a maintenant des offres mieux étagées et on espère que cela sera plus pertinent pour ce type de client.

    Enfin on a des entreprises qui essaient de prendre l’offre individuelle en se faisant passer pour des particuliers. Et là on est obligés de faire les gendarmes. On a même détecté des « patterns » de ses entreprises et on annulait les commandes « individuelles » de ces clients. J’en avais personnellement un petit peu ras le bol :-)

    Les nouvelles offres, même « Perso » sont accessibles même à des multinationales. Évidemment, les limites qu’on a fixées devraient naturellement les orienter vers nos offres Entreprise (nouvelle génération) voire VIP.

     

    Est-ce qu’il s’agissait d’une offre qui se voulait temporaire et que vous avez laissé filer parce que vous étiez sur autre chose ?

     

    Pendant 12 ans ? Non non, le choix de proposer de l’illimité en 2010 était réfléchi et « à durée indéterminée ». Les besoins et les possibilités et surtout les demandes ont changé. On s’adapte. On espère ne pas se tromper et si c’est le cas on fera des ajustements.

    L’important c’est de pas mettre nos clients au pied du mur : ils peuvent renouveler sur leur offre d’origine. On a toujours proposé cela et on ne compte pas changer cette règle. C’est assez unique dans notre secteur d’activité mais on y tient.

    Nous avons vu que votre actualité c’était la nouvelle version de Piwigo NG. Je crois que vous avez besoin d’aide. Vous pouvez nous en parler ?

    Nous avons plusieurs actualités et effectivement côté logiciel, c’est la sortie de la version 2 de l’application mobile pour Android. Piwigo NG (comme Next Generation) est le résultat du travail de Rémi, qui travaille sur Piwigo depuis deux ans. Après avoir voulu faire évoluer l’application « native » sans succès, il a créé en deux semaines un prototype d’application mobile en Flutter. Ce qu’il avait fait en deux semaines était meilleur que ce que l’on galérait à obtenir avec l’application native en plusieurs mois. On a donc décidé de basculer sur cette nouvelle technologie. Un an après la sortie de Piwigo NG, Rémi sort une version 2 toujours sur Flutter mais avec une nouvelle architecture « plus propice aux évolutions ». Le fameux « il faut refactorer tous les six mois », devise des développeurs Java.

    En effet nous avons besoin d’aide pour bêta-tester cette version 2 de Piwigo NG. Plus nous avons de retours, plus nous pouvons la stabiliser.

    Pour aller plus loin

    ❌
    ❌