<?xml version="1.0" encoding="utf-8"?>
<!--
  SPDX-License-Identifier: CC-BY-SA-3.0
  SPDX-FileCopyrightText: 2021, 2022, 2023 Philip Withnall <philip@tecnocode.co.uk>
  SPDX-FileCopyrightText: 2021, 2022, 2024 Will Thompson <wjt@endlessos.org>
  SPDX-FileCopyrightText: 2024 Milan Crha <mcrha@redhat.com>
  SPDX-FileCopyrightText: 2024 Sid <sidtosh4@gmail.com>
-->
<page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" type="topic" id="software-metadata" xml:lang="fr">

  <info>
    <link type="guide" xref="index"/>

    <credit type="author">
      <name>Philip Withnall</name>
      <email its:translate="no">philip@tecnocode.co.uk</email>
    </credit>
    <credit type="author">
      <name>Will Thompson</name>
      <email its:translate="no">wjt@endlessos.org</email>
    </credit>
    <credit type="author">
      <name>Milan Crha</name>
      <email its:translate="no">mcrha@redhat.com</email>
    </credit>

    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>

    <desc>Utilisation des métadonnées par <app>Logiciels</app></desc>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Vincent Chatelain</mal:name>
      <mal:email>vincent_chatelain@proton.me</mal:email>
      <mal:years>2024, 2025</mal:years>
    </mal:credit>
  </info>

  <title>Métadonnées logicielles</title>
  <links type="section"/>

  <section id="screenshots">
    <title>Captures d’écran</title>
    <media type="image" src="figures/app-screenshot.png" style="floatend floatright" mime="image/png" its:translate="no"/>
    <p><app>Logiciels</app> affiche les captures d’écran sur la page détaillée d’une application. Celle-ci devrait généralement contenir des captures d’écran des différentes fenêtres de l’application, pour que l’utilisateur puisse avoir un aperçu rapide des fonctionnalités de l’application, du rendu visuel, etc.</p>
    <p>Lorsque plusieurs captures d’écran sont présentes dans le fichier de métadonnées de l’application, <app>Logiciels</app> les affichera dans un carrousel.</p>
    <p>Dans les cas où le fichier de métadonnées de l’application ne contient aucune capture d’écran, une icône de remplacement sera affichée à la place avec <code>Aucune capture d’écran</code>  :</p>
    <media type="image" src="figures/scalable/symbolic/image-missing-symbolic.svg" width="96" mime="image/svg" its:translate="no"/>
    <note>
      <p>L’icône de remplacement pourrait avoir une apparence différente si vous utilisez un thème d’icônes personnalisé.</p>
    </note>
    <p>Les captures d’écran pourraient devenir obsolètes au gré des changements de l’interface de l’application. Donc, même si <app>Logiciels</app> affiche des captures d’écrans pour une application, il est important de vérifier si ces captures d’écran sont à jour ou obsolètes.</p>
    <p>Vous pouvez améliorer les informations de capture d’écran de l’application :</p>
    <list>
      <item>
	<p><link xref="#how-to-add-missing-app-screenshots">Ajouter des captures d’écran d’application manquantes</link></p>
      </item>
    </list>
  </section>

  <section id="app-context-bar">
    <title>Zone contextuelle d’application</title>
    <p>La zone contextuelle d’application dans <app>Logiciels</app> est une collection de tuiles sur la page de détails d’une application, qui contient les informations suivantes.</p>
    <list>
      <item>
	<p><link xref="#storage">Stockage</link></p>
      </item>
      <item>
	<p><link xref="#safety">Sécurité</link></p>
      </item>
      <item>
	<p><link xref="#hardware-support">Prise en charge du matériel</link></p>
      </item>
      <item>
	<p><link xref="#age-rating">Évaluation par âge</link></p>
      </item>
    </list>

    <p its:locNote="Translators: Refer https://gitlab.gnome.org/GNOME/gnome-software/-/wikis/Help-Translation-Notes for steps to localize 'figures/app-context-bar.png' image.">Voici la barre contextuelle d’application pour <app>Logiciels</app> :</p>
    <p><media type="image" src="figures/app-context-bar.png" mime="image/png" its:translate="yes"/></p>


    <p its:locNote="Translators: This text needs to be adjusted for RTL languages as the tiles will be reversed in the UI.">Les tuiles sont affichées dans l’ordre ci-dessus (en commençant par la tuile <code>Stockage</code> sur la gauche).</p>
    <p>Chaque tuile est présentée en détails ci-dessous.</p>
  </section>

  <section id="storage">
    <title>Stockage</title>
    <p><app>Logiciels</app> affiche une tuile concernant le stockage sur la page détaillée d’une application. Si l’application n’est pas installée, cette tuile affiche la taille du téléchargement estimée pour l’installer. Si l’application est installée, elle affiche l’espace mémoire utilisé par celle-ci.</p>
    <p>Les tailles sont calculées à partir de données fournies par le moteur de <app>Logiciels</app> (tel que flatpak ou rpm), et ne sont pas spécifiées dans les métadonnées de l’application. Modifier le fichier de métadonnées de l’application n’a aucune influence sur cette tuile. Il est mentionné ici par souci d’exhaustivité.</p>
  </section>

  <section id="safety">
    <title>Sécurité</title>
    <p><app>Logiciels</app> affiche une tuile concernant la sécurité sur la page de détails d’une application. Cette tuile résume les informations indiquant si l’application peut être considérée comme sûre à installer et exécuter, ou s’il faut prendre des précautions avant de lui faire confiance.</p>
    <p>Cette tuile combine des informations sur les autorisations requises par l’application pendant son exécution (par exemple l’autorisation de lecture de vos fichiers), avec des informations sur la façon dont l’application a été développée. Les applications libres peuvent être plus sûres que les applications propriétaires, car elles peuvent être vérifiées lorsque leur code source est publiquement accessible.</p>
    <p>La fenêtre apparaissant lorsque vous cliquez sur la tuile liste les différentes autorisations requises par l’application, ainsi que certaines informations sur sa licence et son moteur d’exécution.</p>
    <p>Vous pouvez améliorer les informations de sécurité :</p>
    <list>
      <item>
	<p><link xref="#how-to-fix-incorrect-safety-and-permissions-information">Corriger des informations incorrectes de sécurité et d’autorisations</link></p>
      </item>
    </list>
  </section>

  <section id="hardware-support">
    <title>Prise en charge matérielle</title>
    <p><app>Logiciels</app> affiche une tuile concernant la prise en charge matérielle sur la page de détails d’une application. Cette tuile combine les informations sur les exigences matérielles requises par l’application et les capacités matérielles de l’ordinateur, afin de mettre en valeur des incompatibilités ou des configurations matérielles manquantes — ou indiquer que l’application devrait fonctionner correctement et sans incompatibilité.</p>

    <p>Le code demande le matériel suivant. D’autres matériels pourraient être pris en charge dans le futur.</p>
    <list>
      <item><p>Indique si un pavé tactile, une souris ou un clavier est présent ou requis</p></item>
      <item><p>Indique si une manette de jeu est requise</p></item>
      <item><p>La taille minimale et recommandée pour la mise à l’échelle de l’application</p></item>
    </list>

    <p>Il est impossible de déterminer avec certitude si une manette de jeu est <em>présente</em>, puisqu’elle est souvent déconnectée car non utile pendant l’utilisation normale de l’ordinateur.</p>
    <p>La fenêtre apparaissant lorsque vous cliquez sur la tuile liste les différentes configurations matérielles requises par l’application, et indique si l’une d’entre elles n’est pas satisfaite.</p>
    <p>Vous pouvez améliorer les informations matérielles :</p>
    <list>
      <item>
	<p><link xref="#how-to-add-missing-hardware-information">Ajouter des informations manquantes sur le matériel</link></p>
      </item>
    </list>
  </section>

  <section id="age-rating">
    <title>Limite d’âge</title>
    <p><app>Logiciels</app> affiche une tuile concernant l’évaluation par âge sur la page de détails d’une application. Cette tuile montre la tranche d’âge pour laquelle l’application est adaptée, à partir des différents types de contenus que l’application a déclaré contenir. Cette information est résumée dans un format similaire à celui utilisé pour la classification des films et des jeux dans votre pays.</p>
    <p>Par exemple, cette tuile indiquera si un jeu contient de la violence, ou si une application contient de la publicité intégrée.</p>
    <p>La fenêtre apparaissant lorsque vous cliquez sur la tuile liste les différents types de contenu de l’application et leur degré de gravité.</p>
    <p>Vous pouvez améliorer les informations de limite d’âge :</p>
    <list>
      <item>
	<p><link xref="#how-to-add-missing-content-rating-information">Ajouter des informations manquantes sur l’évaluation par âge</link></p>
      </item>
    </list>
  </section>

  <section id="license">
    <title>Licence</title>
    <media type="image" src="figures/scalable/license-community-built.svg" style="floatend floatright" mime="image/svg" its:translate="no"/>
    <media type="image" src="figures/scalable/license-proprietary-and-special.svg" style="floatend floatright" mime="image/svg" its:translate="no"/>
    <p><app>Logiciels</app> affiche une tuile indiquant si une application est un <link href="https://fr.wikipedia.org/wiki/Free/Libre_Open_Source_Software">logiciel libre</link> ou si elle utilise une licence propriétaire spéciale ou inconnue. Cette tuile intègre des informations plus détaillées sur la licence du projet. Elle liste également certains des atouts d’un logiciel libre. <link xref="software-licensing#introduction">En apprendre davantage</link>.</p>
    <p>Parfois, les informations de licence sont incorrectes, et une application peut être affichée comme « propriétaire » alors qu’il s’agit en réalité d’un logiciel libre. De la même façon, les informations de licence sont parfois inconnues.</p>
    <p><app>Logiciels</app> met en valeur les licences libres et open-source en vert, les licences propriétaires et spéciales étant en jaune comme montré ici. Les licences inconnues sont indiquées en gris.</p>
    <p>Vous pouvez ajouter ou améliorer les informations de licence :</p>
    <list>
      <item>
	<p><link xref="#how-to-fix-incorrect-licensing-information">Corriger des informations de licence incorrectes</link></p>
      </item>
    </list>
  </section>

  <section id="links">
    <title>Liens</title>
    <media type="image" src="figures/scalable/links.svg" style="floatend floatright" mime="image/svg" its:translate="no"/>
    <p><app>Logiciels</app> affiche une liste de liens vers des ressources de l’application dans la tuile de liens, dont :</p>
    <table>
      <tr>
	<td><p><media type="image" src="figures/scalable/symbolic/webpage-symbolic.svg" mime="image/svg" its:translate="no"/></p></td>
	<td><p>Lien du site internet</p></td>
      </tr>
      <tr>
	<td><p><media type="image" src="figures/scalable/symbolic/donate-symbolic.svg" mime="image/svg" its:translate="no"/></p></td>
	<td><p>Lien de don</p></td>
      </tr>
      <tr>
	<td><p><media type="image" src="figures/scalable/symbolic/translations-symbolic.svg" mime="image/svg" its:translate="no"/></p></td>
	<td><p>Lien de contribution à la traduction</p></td>
      </tr>
      <tr>
	<td><p><media type="image" src="figures/scalable/symbolic/computer-fail-symbolic.svg" mime="image/svg" its:translate="no"/></p></td>
	<td><p>Lien de signalement des bogues</p></td>
      </tr>
      <tr>
	<td><p><media type="image" src="figures/scalable/symbolic/help-link-symbolic.svg" mime="image/svg" its:translate="no"/></p></td>
	<td><p>Lien d’aide</p></td>
      </tr>
      <tr>
	<td><p><media type="image" src="figures/scalable/symbolic/contact-symbolic.svg" mime="image/svg" its:translate="no"/></p></td>
	<td><p>Lien de contact</p></td>
      </tr>
    </table>
    <p>Tout ou partie de ces liens peuvent être présents, en fonction de leur présence dans le fichier de métadonnées de l’application.</p>
    <p>Dans les cas où le fichier de métadonnées de l’application ne contient aucun lien, la tuile ci-contre avec un point d’interrogation sera affichée.</p>
    <media type="image" src="figures/scalable/no-links.svg" style="floatend floatright" mime="image/svg" its:translate="no"/>
    <p>Vous pouvez améliorer les liens :</p>
    <list>
      <item>
	<p><link xref="#how-to-add-missing-links">Ajouter des liens manquants</link></p>
      </item>
    </list>
  </section>

  <section id="carousel-tile">
    <title>Tuile de carrousel</title>
    <media type="image" src="figures/carousel.png" style="floatend floatright" mime="image/png" its:translate="no"/>
    <p>Les applications mises en avant par <app>Logiciels</app> sont affichées dans un carrousel en haut de la fenêtre principale, comme indiqué ici. La couleur d’arrière-plan de chaque tuile est extraite automatiquement à partir de l’icône de l’application. Parfois, cet arrière-plan ne correspond pas tout à fait à l’application et doit être spécifié explicitement par les développeurs de l’application.</p>
    <p>La mise en avant des applications est décidée par les responsables de la distribution Linux.</p>
    <p>Vous pouvez améliorer la tuile de carrousel :</p>
    <list>
      <item>
	<p><link xref="#how-to-set-the-carousel-tile-background-colour">Modifier modifier la couleur d’arrière-plan de la tuile de carrousel</link></p>
      </item>
    </list>
  </section>

  <section id="where-metadata-comes-from">
    <title>Origine des métadonnées</title>
    <p>Les métadonnées viennent toutes du fichier de métadonnées du logiciel concerné, que ce soit pour décrire les équipements matériels requis, pour l’âge le plus adapté pour un utilisateur, ou pour connaître les facteurs permettant de déterminer si l’application est sûre à installer.</p>
    <p>Le fichier de métadonnées est un fichier XML. Son format est décrit dans la <link href="https://www.freedesktop.org/software/appstream/docs/">spécification AppStream</link>.</p>
    <p>Aller voir le <link href="https://gitlab.gnome.org/GNOME/nautilus/-/blob/main/data/org.gnome.Nautilus.metainfo.xml.in.in">fichier de métadonnées pour l’application Fichiers de GNOME</link>.</p>
    <note style="tip">
      <p><em>appdata</em> est le plus ancien terme de <em>métadonnées</em>.</p>
    </note>
  </section>

  <section id="what-happens-if-metadata-is-missing">
    <title>Conséquence d’un manque de métadonnées</title>
    <p>Si une partie des métadonnées manquent pour une application, <app>Logiciels</app> peut seulement essayer de les deviner, et ne peut donc pas afficher beaucoup d’information sur son interface. Les suppositions faites par <app>Logiciels</app> partent du principe que la plupart des logiciels sont conçus pour des ordinateurs de bureau.</p>
    <p><em style="strong">Vous pouvez améliorer les métadonnées d’une application !</em></p>
  </section>

  <section id="how-to-contribute-missing-information">
    <title>Contribuer à des informations manquantes</title>
    <p>Si vous pensez qu’une page d’application a des informations manquantes ou incorrectes, vous pouvez contribuer de deux façons :</p>
    <list type="numbered">
      <item>
	<p>Signaler les métadonnées manquantes ou incorrectes dans l’outil de suivi des bogues de l’application, pour que le développeur puisse corriger le problème.</p>
      </item>
      <item>
	<p>Corriger les métadonnées manquantes ou incorrectes vous-même. Référez-vous au <em style="strong">guide</em> ci-dessous pour savoir comment procéder.</p>
      </item>
    </list>

    <p>Pour chacune, vous devez d’abord trouver la page du projet de l’application. Le lien vers la page du projet devrait généralement être disponible sur la page de l’application comme <link xref="#links">montré ici</link>. Si ce n’est pas le cas, vous devrez la trouver avec une recherche sur internet.</p>

    <p>Les applications sont généralement hébergées sur <link href="https://gitlab.com/explore?sort=stars_desc">GitLab</link> ou <link href="https://github.com/explore">GitHub</link>. Par exemple, les applications GNOME sont hébergées sur <link href="https://gitlab.gnome.org/GNOME?sort=stars_desc">gitlab.gnome.org</link>.</p>
  </section>

  <section id="how-to-add-missing-app-screenshots">
    <title>Ajouter des captures d’écran d’application manquantes</title>
    <p>Les informations de capture d’écran d’une application sont stockées dans l’élément <link href="https://www.freedesktop.org/software/appstream/docs/sect-Metadata-Application.html#tag-dapp-screenshots"><code>&lt;screenshots&gt;</code></link> à l’intérieur de <code>&lt;component&gt;</code> dans le fichier de métadonnées de l’application.</p>
    <p>Il est recommandé d’avoir entre 5 et 10 captures d’écran pour une application. Idéalement, les captures doivent être au format PNG avec un ratio 16:9 et une largeur minimale de 620 pixels.</p>
    <p>Voici par exemple les captures d’écran pour l’application <app>Logiciels</app> :</p>
    <code its:translate="no" mime="application/xml"><![CDATA[
<screenshots>
  <screenshot type="default">
    <image>https://gitlab.gnome.org/GNOME/gnome-software/raw/HEAD/data/metainfo/ss-overview.png</image>
    <caption>Overview panel</caption>
  </screenshot>
  <screenshot>
    <image>https://gitlab.gnome.org/GNOME/gnome-software/raw/HEAD/data/metainfo/ss-details.png</image>
    <caption>Details panel</caption>
  </screenshot>
</screenshots>]]></code>
</section>

  <section id="how-to-fix-incorrect-safety-and-permissions-information">
    <title>Corriger des informations incorrectes de sécurité et d’autorisations</title>
    <p>Les informations de sécurité et d’autorisation pour une application proviennent de différentes sources, en fonction du format de paquet l’application. Pour les formats de paquet traditionnels, par exemple RPM ou DEB, il n’y a aucune information de sécurité ou d’autorisation disponible, et rien ne peut être fait pour en ajouter à une application.</p>
    <p>Pour les applications flatpak, les informations proviennent du <link href="https://docs.flatpak.org/en/latest/manifests.html">manifeste flatpak</link>de l’application, qui décrit les portails ouverts requis par l’application dans son environnement isolé. Chacun de ces portails contribue généralement à diminuer le niveau de sécurité affiché dans <app>Logiciels</app> — le faisant passer de « fiable » à « potentiellement non fiable » à « non fiable ».</p>
    <p>Afin d’améliorer le niveau de sécurité d’une application, son mode bac à sable doit être aussi restreint que possible, en enlevant les <link href="https://docs.flatpak.org/en/latest/sandbox-permissions.html">autorisations bac à sable</link> non nécessaires et en utilisant les <link href="https://docs.flatpak.org/en/latest/desktop-integration.html#portals">portails</link>à la place des autorisations lorsque c’est possible. L’utilisation de portails ne diminuent pas le niveau de sécurité d’une application affiché dans <app>Logiciels</app>.</p>
    <p>Par exemple, si une application demande un accès en lecture et écriture sur l’ensemble du système de fichiers (<code>--filesystem=host</code>), en a-t’elle vraiment besoin ? Un accès aux fichiers de certains emplacements ne serait-il pas suffisant ? Si oui, le <link href="https://docs.flatpak.org/en/latest/desktop-integration.html#portals">portail fichier</link> pourrait être utilisé, ou des <link href="https://docs.flatpak.org/en/latest/sandbox-permissions.html#filesystem-access">autorisations du système de fichiers</link> pourraient être spécifiés.</p>
    <p>Si l’application fonctionne sous Wayland, et n’a besoin de travailler sous X11 qu’en solution de repli, sans utiliser de fonctionnalités X11 spécifiques, pourrait-elle utiliser <code>--socket=fallback-x11</code> plutôt que <code>--socket=x11</code> ?</p>
    <p>Des conseils sur des autorisations spécifiques, ou des formats de paquet, pourraient être ajoutés ici dans le futur.</p>
    <p>Pour poursuivre la lecture :</p>
    <list>
      <item>
	<p><link href="https://docs.flatpak.org/en/latest/sandbox-permissions.html"/></p>
      </item>
      <item>
	<p><link href="https://docs.flatpak.org/en/latest/manifests.html"/></p>
      </item>
      <item>
	<p><link href="https://docs.flatpak.org/en/latest/desktop-integration.html#portals"/></p>
      </item>
    </list>
  </section>

  <section id="how-to-add-missing-hardware-information">
    <title>Ajouter des informations manquantes sur le matériel</title>
    <p>Les informations matérielles d’une application sont stockées dans les éléments <link href="https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-relations"><code>&lt;requires&gt;</code>, <code>&lt;recommends&gt;</code> et <code>&lt;supports&gt;</code></link> à l’intérieur de <code>&lt;component&gt;</code> dans le fichier de métadonnées de l’application.</p>
    <p><app>Logiciels</app> sait interpréter les élements <link href="https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-relations-control"><code>&lt;control&gt;</code></link> et <link href="https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-relations-display_length"><code>&lt;display_length&gt;</code></link>.</p>
    <p>Lire <link href="https://tecnocode.co.uk/2021/07/12/add-metadata-to-your-app-to-say-what-inputs-and-display-sizes-it-supports/">cet article de blog</link> (en anglais) ou <link href="https://blogs.gnome.org/tbernard/2021/09/07/ready-for-software-41/#device-support">celui-ci</link> (en anglais) pour avoir des exemples de métadonnées.</p>
  </section>

  <section id="how-to-add-missing-content-rating-information">
    <title>Ajouter des informations manquantes sur l’évaluation par âge</title>
    <p>Les informations d’évaluation par âge pour une application sont stockées dans l’élément <link href="https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-content_rating"><code>&lt;content_rating&gt;</code></link> à l’intérieur de <code>&lt;component&gt;</code> dans le fichier de métadonnées de l’application.</p>
    <p>Les applications doivent utiliser le standard OARS 1.1 pour remplir cet élément. Si l’élément <code>&lt;content_rating&gt;</code> n’est pas indiqué, l’évaluation par âge de l’application reste inconnue. Si l’élement est indiqué mais vide, cela signifie que l’application ne contient aucun contenu inapproprié.</p>
    <p>Utiliser <link href="https://hughsie.github.io/oars/">le générateur OARS</link> pour produire une information d’évaluation par âge pour une application.</p>
  </section>

  <section id="how-to-fix-incorrect-licensing-information">
    <title>Corriger des information de licence incorrectes</title>
    <p>Les informations de licence d’une application sont stockées dans l’élément <link href="https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-project_license"><code>&lt;project_license&gt;</code></link> à l’intérieur de <code>&lt;component&gt;</code> dans le fichier de métadonnées de l’application.</p>
    <p>Le contenu pour cet élément doit être une <link href="https://spdx.org/specifications">expression SPDX</link> décrivant la licence « principale » du projet. Celle-ci correspond typiquement à la licence du code source, et ne pas inclure la licence de la documentation ou de contenu annexe.</p>
    <p>Si l’expression SPDX correspond à une seule licence, ou une combinaison « ou » de plusieurs licences, qui sont toutes <link href="https://spdx.org/licenses/">approuvées par la FSF or l’OSI</link>, alors l’application est considérée comme « logiciel libre » et la tuile de licence l’indique. Sinon, l’application est considérée « propriétaire ».</p>
    <p>Si vous pensez qu’une application n’est pas « propriétaire » alors qu’elle est affichée comme telle, c’est probablement car l’élément <code>&lt;project_license&gt;</code> inclut la licence de documentation du projet. Veuillez l’enlever.</p>
    <p><link href="https://gitlab.gnome.org/GNOME/meld/-/issues/579">Par exemple</link>, changez les métadonnées de licence de :</p>
    <code its:translate="no" mime="application/xml"><![CDATA[<project_license>GPL-2.0+ and CC-BY-SA-3.0</project_license>]]></code>
    <p>en</p>
    <code its:translate="no" mime="application/xml"><![CDATA[<project_license>GPL-2.0+</project_license>]]></code>
    <p>Pour poursuivre la lecture :</p>
    <list>
      <item>
	<p><link href="https://tecnocode.co.uk/2021/07/05/dont-generally-put-cc-by-sa-in-appdata/">Éviter (la plupart du temps) d’indiquer la licence de documentation dans appdata</link> (en anglais)</p>
      </item>
      <item>
	<p><link href="https://github.com/ximion/appstream/issues/312"/></p>
      </item>
    </list>
  </section>

  <section id="how-to-add-missing-links">
    <title>Ajouter des liens manquants</title>
    <p>Les liens d’une application sont stockés en tant qu’élement <link href="https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-url"><code>&lt;url&gt;</code></link> à l’intérieur de <code>&lt;component&gt;</code> dans le fichier de métadonnées de l’application.</p>
    <p>Ajoutez autant de types de lien pour l’application que ceux documentés dans la <link href="https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-url">spécification appstream</link>. S’il n’existe aucune page correspondant à un type de lien, il n’a pas besoin d’être inclus.</p>
    <p>Par exemple, voci les liens de ressource pour l’application <app>Logiciels</app> :</p>
    <code its:translate="no" mime="application/xml"><![CDATA[
<url type="bugtracker">https://gitlab.gnome.org/GNOME/gnome-software/-/issues</url>
<url type="contact">https://discourse.gnome.org/tag/gnome-software</url>
<url type="contribute">https://welcome.gnome.org/app/Software/</url>
<url type="donation">https://www.gnome.org/donate/</url>
<url type="homepage">https://apps.gnome.org/Software</url>
<url type="translate">https://l10n.gnome.org/module/gnome-software/</url>
<url type="vcs-browser">https://gitlab.gnome.org/GNOME/gnome-software/</url>]]></code>
  </section>

  <section id="how-to-set-the-carousel-tile-background-colour">
    <title>Définir la couleur d’arrière-plan de la tuile du carrousel</title>
    <p>La couleur d’arrière-plan de la tuile du carrousel est habituellement extraite automatiquement à partir de l’icône de l’application. Cependant, si cette couleur n’est pas satisfaisante, elle peut être remplacée en utilisant l’<link href="https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-branding">élément <code>&lt;branding/&gt;</code> d’appstream</link> avec les couleurs prédéfinies (depuis la série 47.x). L’avantage est de permettre à davantage de clients d’utiliser les couleurs.</p>
    <p>Par exemple, voici quelques entrées de « branding » :</p>
    <code its:translate="no" mime="application/xml"><![CDATA[
<branding>
  <color type="primary" scheme_preference="light">#ff00ff</color>
  <color type="primary" scheme_preference="dark">#993d3d</color>
</branding>]]></code>
    <note>
      <p>Notez que l’attribut <code>scheme_preference</code> est ignoré, <app>Logiciels</app> choisit elle-même la couleur la plus adaptée au thème.</p>
    </note>
    <p>Il est encore possible, pour des raisons de rétro-compatibilité, d’ajouter les XML suivants à l’élément <code>&lt;component&gt;</code> des métadonnées de l’application :</p>
    <code its:translate="no" mime="application/xml"><![CDATA[
<custom>
  <value key="GnomeSoftware::key-colors">[(124, 53, 77), (99, 16, 0)]</value>
</custom>]]></code>
    <p>mais l’élément <code>&lt;branding/&gt;</code> a la priorité.</p>
    <p>La valeur de <code>GnomeSoftware::key-colors</code> est une GVariant au format texte avec le type <code>a(yyy)</code>, et représente un ensemble non ordonné de couleurs pour l’application. Chaque élément de l’ensemble est une couleur au format RVB allant de <code>(0, 0, 0)</code> à <code>(255, 255, 255)</code>.</p>
    <p>Les couleurs devraient être choisies pour :</p>
    <list>
      <item>
	<p>Être identifiable en correspondant à la charte graphique de l’application, si possible.</p>
      </item>
      <item>
	<p>Contraster avec les bords de l’icône d’application, afin de pouvoir distinguer l’icône si les couleurs sont utilisées en arrière-plan.</p>
      </item>
      <item>
	<p>Contraster avec la couleur de premier plan du texte dans le theme Adwaita (<code>#2e3436</code>) et sa variant sombre (<code>#eeeeec</code>). Cela signifie généralement choisir une couleur avec un niveau moyen de luminosité.</p>
      </item>
      <item>
	<p>Le contraste peut être vérifié avec <link href="https://flathub.org/apps/org.gnome.design.Contrast/">l’application Contraste</link>.</p>
      </item>
    </list>
    <p>Au moins une couleur doit être définie. D’autres peuvent être définies si une seule couleur ne permet pas de répondre aux contraintes ci-dessus, et <app>Logiciels</app> choisira la couleur la plus appropriée pour la tuile de carrousel. Si une seule couleur est définie, sa luminosité et sa saturation peuvent être modifiées pour améliorer le contraste avec la couleur de premier plan. Si plusieurs couleurs sont définies, celle avec le meilleur contraste par rapport à la couleur de premier plan sera choisie, et sa luminosité et saturation ne seront pas modifiées.</p>
  </section>

  <section id="how-to-test-carousel-tile-background-colour-changes">
    <title>Tester les modifications de couleur d’arrière-plan pour la tuile de carrousel</title>
    <p>Modifier le fichier de métadonnées pour votre application, puis exécuter <app>Logiciels</app> avec :</p>
    <p><cmd>gnome-software --show-metainfo=<var>/chemin/vers/appli.metainfo.xml</var>,icon=<var>/chemin/vers/appli/icon.png</var></cmd></p>
    <p>La page détaillée de votre application sera affichée. Si vous revenez sur la page d’accueil de <app>Logiciels</app>, votre application sera la seule dans le carrousel de « mise en avant ».</p>
  </section>


</page>
