<?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="pt_BR">

  <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>Como o <app>Programas</app> usa metadados</desc>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Rafael Fontenelle</mal:name>
      <mal:email>rafaelff@gnome.org</mal:email>
      <mal:years>2024</mal:years>
    </mal:credit>
  </info>

  <title>Metadados dos programas</title>
  <links type="section"/>

  <section id="screenshots">
    <title>Capturas de tela</title>
    <media type="image" src="figures/app-screenshot.png" style="floatend floatright" mime="image/png" its:translate="no"/>
    <p>O <app>Programas</app> exibe as capturas de tela na página de detalhes de um aplicativo. Isso normalmente deve incluir capturas de tela de várias janelas/diálogos do aplicativo, para que o usuário tenha uma noção rápida dos recursos do aplicativo, aparência e comportamento, etc.</p>
    <p>Quando mais de uma captura de tela estiver presente no arquivo de metainfo do aplicativo, o <app>Programas</app> mostrará as capturas de tela em um carrossel.</p>
    <p>Nos casos em que o arquivo de metainfo do aplicativo não contiver nenhuma captura de tela, um ícone de preenchimento de espaço como o abaixo com <code>Sem capturas de tela</code> será exibido:</p>
    <media type="image" src="figures/scalable/symbolic/image-missing-symbolic.svg" width="96" mime="image/svg" its:translate="no"/>
    <note>
      <p>O ícone de preenchimento de espaço pode parecer diferente se você estiver usando um tema de ícone personalizado.</p>
    </note>
    <p>As capturas de tela podem ficar desatualizadas conforme a UI do aplicativo muda. Então, mesmo que o <app>Programas</app> mostre capturas de tela para um aplicativo, é importante verificar se essas capturas de tela estão atualizadas ou desatualizadas.</p>
    <p>Você pode melhorar as informações de captura de tela do aplicativo:</p>
    <list>
      <item>
	<p><link xref="#how-to-add-missing-app-screenshots">Como adicionar capturas de tela ausentes do aplicativo</link></p>
      </item>
    </list>
  </section>

  <section id="app-context-bar">
    <title>Barra de contexto do aplicativo</title>
    <p>A barra de contexto do aplicativo no <app>Programas</app> é uma coleção de blocos na página de detalhes de um aplicativo, que exibe os seguintes detalhes.</p>
    <list>
      <item>
	<p><link xref="#storage">Armazenamento</link></p>
      </item>
      <item>
	<p><link xref="#safety">Segurança</link></p>
      </item>
      <item>
	<p><link xref="#hardware-support">Suporte a hardware</link></p>
      </item>
      <item>
	<p><link xref="#age-rating">Classificação por idade</link></p>
      </item>
    </list>

    <p its:locNote="Translators: Refer below steps to localize 'figures/app-context-bar.png' image:              1. Run 'gnome-software --details=org.gnome.Software.desktop' in console (as normal user).              2. This should launch the Software app and automatically switch to Software app's details page.              3. It may take some time if some background tasks are running. Wait for the app's details page to load.              4. Scroll down to take the screenshot of the app context bar.">Isso mostra a barra de contexto do aplicativo para o aplicativo <app>Programas</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.">Os blocos são exibidos na ordem listada acima (começando com o bloco <code>Armazenamento</code> à esquerda).</p>
    <p>Cada bloco é abordado em detalhes abaixo.</p>
  </section>

  <section id="storage">
    <title>Armazenamento</title>
    <p>O <app>Programas</app> exibe um bloco de armazenamento na página de detalhes de um aplicativo. Se o aplicativo não estiver instalado, isso exibe o tamanho estimado de download necessário para instalá-lo. Se o aplicativo estiver instalado, ele exibirá o espaço de armazenamento usado pelo aplicativo.</p>
    <p>Os tamanhos são calculados a partir de dados fornecidos pelo backend do <app>Programas</app> (como flatpak ou um RPM) e não são especificados nos metadados fornecidos pelo aplicativo. Não há nada que você possa fazer para afetar este bloco editando o arquivo metainfo de um aplicativo. Ele está listado aqui para fins de integridade.</p>
  </section>

  <section id="safety">
    <title>Segurança</title>
    <p><app>Programas</app> exibe um bloco de segurança na página de detalhes de um aplicativo. Isso resume as informações sobre se o aplicativo pode ser considerado seguro para instalar e executar, ou se é necessário ter cuidado antes de confiar nele.</p>
    <p>Este bloco combina informações sobre as permissões que o aplicativo solicita quando é executado (como permissão para ler seus arquivos), com informações sobre como o aplicativo foi desenvolvido. Aplicativos de software livre, onde o código-fonte é publicamente legível, podem ser mais seguros do que os privativofs, pois podem ser auditados.</p>
    <p>A caixa de diálogo que aparece quando o bloco é clicado lista as diferentes permissões que o aplicativo solicita, além de algumas informações sobre sua licença e tempo de execução.</p>
    <p>Você pode melhorar as informações de segurança:</p>
    <list>
      <item>
	<p><link xref="#how-to-fix-incorrect-safety-and-permissions-information">Como corrigir informações incorretas de segurança e permissões</link></p>
      </item>
    </list>
  </section>

  <section id="hardware-support">
    <title>Suporte a hardware</title>
    <p><app>Programas</app> exibe um bloco de suporte a hardware na página de detalhes de um aplicativo. Isso combina informações sobre os requisitos de hardware do aplicativo e os recursos de hardware do computador, com o objetivo de destacar incompatibilidades ou requisitos ausentes — ou para indicar que o aplicativo deve funcionar corretamente sem incompatibilidades.</p>

    <p>O código analisa o seguinte hardware. Mais pode ser suportado no futuro.</p>
    <list>
      <item><p>Se um touchpad, mouse ou teclado está presente/é necessário</p></item>
      <item><p>Se um gamepad é necessário</p></item>
      <item><p>O tamanho mínimo e recomendado de exibição para o qual o aplicativo pode ser dimensionado</p></item>
    </list>

    <p>Não é possível detectar com segurança se um gamepad está <em>presente</em>, pois eles geralmente são deixados desconectados por não serem necessários para o uso normal do computador.</p>
    <p>A caixa de diálogo que aparece quando o bloco é clicado lista os diferentes requisitos de hardware do aplicativo e se algum deles não foi atendido.</p>
    <p>Você pode melhorar as informações de hardware:</p>
    <list>
      <item>
	<p><link xref="#how-to-add-missing-hardware-information">Como adicionar informações de hardware ausentes</link></p>
      </item>
    </list>
  </section>

  <section id="age-rating">
    <title>Classificação por idade</title>
    <p><app>Programas</app> exibe um bloco de classificação por idade na página de detalhes de um aplicativo. Isso mostra para qual faixa etária o aplicativo deve ser adequado, com base em diferentes tipos de conteúdo que o aplicativo declarou conter. Essas informações são resumidas em um formato semelhante aos certificados de classificação de jogos ou filmes do seu país.</p>
    <p>Por exemplo, isso destacará se um jogo contém violência ou se um aplicativo contém publicidade no aplicativo.</p>
    <p>A caixa de diálogo que aparece quando o bloco é clicado lista os diferentes tipos de conteúdo no aplicativo e quão grave esse conteúdo é.</p>
    <p>Você pode melhorar as informações de classificação por idade:</p>
    <list>
      <item>
	<p><link xref="#how-to-add-missing-content-rating-information">Como adicionar informações de classificação de conteúdo ausentes</link></p>
      </item>
    </list>
  </section>

  <section id="license">
    <title>Licença</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>Programas</app> exibe um bloco indicando se um aplicativo é <link href="https://pt.wikipedia.org/wiki/Software_livre_e_de_código_aberto">software livre</link> ou se sua licença é proprietária, especial ou desconhecida. Este bloco inclui informações mais detalhadas sobre a licença do projeto. Este bloco também lista alguns dos benefícios do software livre. <link xref="software-licensing#introduction">Saiba mais</link></p>
    <p>Às vezes, as informações de licença não estão corretas para um aplicativo e, portanto, um aplicativo que é realmente software livre será mostrado como ‘privativo’. Da mesma forma, às vezes as informações da licença são desconhecidas.</p>
    <p><app>Programas</app> realça licenças livres e de código aberto em verde, licenças privativas e especiais em amarelo, como mostrado aqui. Licenças desconhecidas são destacadas em cinza.</p>
    <p>Você pode adicionar ou melhorar as informações da licença:</p>
    <list>
      <item>
	<p><link xref="#how-to-fix-incorrect-licensing-information">Como corrigir informações incorretas de licenciamento</link></p>
      </item>
    </list>
  </section>

  <section id="links">
    <title>Links</title>
    <media type="image" src="figures/scalable/links.svg" style="floatend floatright" mime="image/svg" its:translate="no"/>
    <p><app>Programas</app> exibe uma lista de links de recursos do aplicativo no bloco de links. Eles são os seguintes:</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>Link do site</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>Link de doação</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>Link de contribuição com tradução</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>Link de relatório de bug</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>Link de ajuda</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>Link de contato</p></td>
      </tr>
    </table>
    <p>Alguns ou todos esses links podem estar presentes, dependendo se estão listados no arquivo de metainfo do aplicativo.</p>
    <p>Nos casos em que o arquivo de metainfo do aplicativo não contém nenhum link, o seguinte bloco com um ponto de interrogação será exibido.</p>
    <media type="image" src="figures/scalable/no-links.svg" style="floatend floatright" mime="image/svg" its:translate="no"/>
    <p>Você pode melhorar os links:</p>
    <list>
      <item>
	<p><link xref="#how-to-add-missing-links">Como adicionar links ausentes</link></p>
      </item>
    </list>
  </section>

  <section id="carousel-tile">
    <title>Bloco de Carrossel</title>
    <media type="image" src="figures/carousel.png" style="floatend floatright" mime="image/png" its:translate="no"/>
    <p>Aplicativos que são postos em destaque no <app>Programas</app> são exibidos em um carrossel na parte superior da janela principal como mostrado aqui. Cada bloco de carrossel tem uma cor de fundo que é automaticamente extraída do ícone do aplicativo. Às vezes, essa cor de fundo não é muito adequada para o aplicativo e precisa ser especificada explicitamente pelo desenvolvedor do aplicativo.</p>
    <p>O conjunto de aplicativos que são apresentados é decidido pelos mantenedores da distribuição Linux.</p>
    <p>Você pode melhorar o bloco de carrossel:</p>
    <list>
      <item>
	<p><link xref="#how-to-set-the-carousel-tile-background-colour">Como definir a cor de fundo do bloco de carrossel</link></p>
      </item>
    </list>
  </section>

  <section id="where-metadata-comes-from">
    <title>De onde vêm os metadados</title>
    <p>Os metadados usados ​​para especificar qual hardware um software requer, para quais idades de usuários ele é adequado e os fatores que contribuem para o quão seguro ele pode ser para instalar, todos vêm do arquivo metainfo para esse software.</p>
    <p>O arquivo metainfo é um arquivo XML. Seu formato de arquivo é especificado na <link href="https://www.freedesktop.org/software/appstream/docs/">especificação AppStream</link>.</p>
    <p>Veja o <link href="https://gitlab.gnome.org/GNOME/nautilus/-/blob/main/data/org.gnome.Nautilus.metainfo.xml.in.in">arquivo metainfo para o aplicativo Arquivos do GNOME</link>.</p>
    <note style="tip">
      <p><em>appdata</em> é o termo mais antigo para <em>metainfo</em>.</p>
    </note>
  </section>

  <section id="what-happens-if-metadata-is-missing">
    <title>O que acontece se metadados estiverem ausentes</title>
    <p>Se alguns metadados estiverem ausentes em um aplicativo, <app>Programas</app> só pode adivinhar o que pode ser e, portanto, não consegue apresentar muitas informações em suas interfaces. Os palpites que <app>Programas</app> faz são baseados no fato de que a maioria dos softwares é projetada para computadores desktop.</p>
    <p><em style="strong">Você pode ajudar a melhorar os metadados de um aplicativo!</em></p>
  </section>

  <section id="how-to-contribute-missing-information">
    <title>Como contribuir com informações ausentes</title>
    <p>Se você descobrir que a página de um aplicativo está faltando informações ou tem informações incorretas, você pode contribuir de uma das duas maneiras:</p>
    <list type="numbered">
      <item>
	<p>Você pode relatar os metadados ausentes/incorretos ao rastreador de bugs do respectivo aplicativo, para que o desenvolvedor do aplicativo possa corrigi-los.</p>
      </item>
      <item>
	<p>Você pode corrigir os metadados ausentes/incorretos você mesmo. Veja o aba <em style="strong">Como fazer</em> abaixo sobre como fazer isso.</p>
      </item>
    </list>

    <p>Para ambos, primeiro você precisa encontrar a página do projeto do aplicativo. O link para a página do projeto normalmente deve estar disponível na página do aplicativo <link xref="#links">conforme mostrado aqui</link>. Caso contrário, você precisará encontrá-lo com uma simples pesquisa no Google.</p>

    <p>Os aplicativos são normalmente hospedados no <link href="https://gitlab.com/explore?sort=stars_desc">GitLab</link> ou <link href="https://github.com/explore">GitHub</link>. Por exemplo, os aplicativos GNOME são hospedados em <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>Como adicionar capturas de tela de aplicativos ausentes</title>
    <p>As informações de captura de tela de um aplicativo são armazenadas no elemento <link href="https://www.freedesktop.org/software/appstream/docs/sect-Metadata-Application.html#tag-dapp-screenshots"><code>&lt;screenshots&gt;</code></link> dentro do <code>&lt;component&gt;</code> do aplicativo em seu arquivo metainfo.</p>
    <p>O número recomendado de capturas de tela para um aplicativo é entre 5 e 10. As capturas de tela devem estar idealmente no formato PNG com proporção de 16:9 e largura mínima de 620 pixels.</p>
    <p>Por exemplo, aqui estão as entradas de captura de tela para o aplicativo <app>Programas</app>:</p>
    <code mime="application/xml">
&lt;screenshots&gt;
  &lt;screenshot type="default"&gt;
    &lt;image&gt;https://gitlab.gnome.org/GNOME/gnome-software/raw/HEAD/data/metainfo/ss-overview.png&lt;/image&gt;
    &lt;caption&gt;Overview panel&lt;/caption&gt;
  &lt;/screenshot&gt;
  &lt;screenshot&gt;
    &lt;image&gt;https://gitlab.gnome.org/GNOME/gnome-software/raw/HEAD/data/metainfo/ss-details.png&lt;/image&gt;
    &lt;caption&gt;Details panel&lt;/caption&gt;
  &lt;/screenshot&gt;
&lt;/screenshots&gt;</code>
</section>

  <section id="how-to-fix-incorrect-safety-and-permissions-information">
    <title>Como corrigir informações incorretas de segurança e permissões</title>
    <p>As informações de segurança e permissões para um aplicativo vêm de diferentes fontes, dependendo de como o aplicativo é empacotado. Para aplicativos empacotados tradicionalmente, por exemplo, no formato RPM ou DEB, não há informações de segurança ou permissões disponíveis e nada pode ser feito para adicioná-las a um aplicativo.</p>
    <p>Para aplicativos flatpak, as informações vêm do <link href="https://docs.flatpak.org/pt-br/latest/manifests.html">manifesto flatpak</link> do aplicativo, especificando quais buracos no isolamento (sandbox) o aplicativo requer. Cada um desses buracos normalmente contribui para diminuir o nível de segurança exibido do aplicativo em <app>Programas</app> — movendo-o de ‘seguro’ para ‘potencialmente inseguro’ para ‘inseguro’.</p>
    <p>Para melhorar o nível de segurança de um aplicativo, seu isolamento de sandbox deve ser tornado o mais fechado possível, removendo <link href="https://docs.flatpak.org/pt-br/latest/sandbox-permissions.html">permissões de sandbox</link> onde elas não são necessárias, e usando <link href="https://docs.flatpak.org/pt-br/latest/desktop-integration.html#portals">portais</link> em vez de permissões de sandbox quando possível. O uso de portais não diminui o nível de segurança exibido de um aplicativo no <app>Programas</app>.</p>
    <p>Por exemplo, se o aplicativo solicitar acesso de leitura/gravação ao sistema de arquivos completo (<code>--filesystem=host</code>), ele realmente precisa disso ou precisa acessar arquivos apenas em alguns locais específicos? Se sim, o <link href="https://docs.flatpak.org/pt-br/latest/desktop-integration.html#portals">portal de arquivos</link> pode ser usado, ou <link href="https://docs.flatpak.org/pt-br/latest/sandbox-permissions.html#filesystem-access">permissões do sistema de arquivos</link> mais específicas podem ser especificadas.</p>
    <p>Se o aplicativo funciona no Wayland e precisar funcionar no X11 apenas como fallback, sem usar recursos especiais do X11, ele pode usar <code>--socket=fallback-x11</code> em vez de <code>--socket=x11</code>?</p>
    <p>Orientações sobre permissões específicas ou outros formatos de empacotamento podem ser adicionadas aqui no futuro.</p>
    <p>Leitura adicional:</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>Como adicionar informações de hardware ausentes</title>
    <p>As informações de hardware de um aplicativo são armazenadas nos elementos <link href="https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-relations"><code>&lt;requires&gt;</code>, <code>&lt;recommends&gt;</code> e <code>&lt;supports&gt;</code></link> dentro do <code>&lt;component&gt;</code> do aplicativo em seu arquivo metainfo.</p>
    <p><app>Programas</app> entende os elementos <link href="https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-relations-control"><code>&lt;control&gt;</code></link> e <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>Consulte <link href="https://tecnocode.co.uk/2021/07/12/add-metadata-to-your-app-to-say-what-inputs-and-display-sizes-it-supports/">esta postagem de blog</link> ou <link href="https://blogs.gnome.org/tbernard/2021/09/07/ready-for-software-41/#device-support">esta postagem de blog</link> para obter exemplos de metadados.</p>
  </section>

  <section id="how-to-add-missing-content-rating-information">
    <title>Como adicionar informações de classificação de conteúdo ausentes</title>
    <p>As informações de classificação de conteúdo para um aplicativo são armazenadas no elemento <link href="https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-content_rating"><code>&lt;content_rating&gt;</code></link> dentro do <code>&lt;component&gt;</code> do aplicativo em seu arquivo metainfo.</p>
    <p>Os aplicativos devem usar o padrão OARS 1.1 para preencher este elemento. Se o elemento <code>&lt;content_rating&gt;</code> não for especificado, a classificação de conteúdo do aplicativo será desconhecida. Se for especificado, mas estiver vazio, o aplicativo não terá conteúdo que possa ser inadequado para qualquer público.</p>
    <p>Use <link href="https://hughsie.github.io/oars/">o gerador de OARS</link> para produzir informações de classificação de conteúdo adequadas para um aplicativo.</p>
  </section>

  <section id="how-to-fix-incorrect-licensing-information">
    <title>Como corrigir informações de licenciamento incorretas</title>
    <p>As informações de licenciamento de um aplicativo são armazenadas no elemento <link href="https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-project_license"><code>&lt;project_license&gt;</code></link> dentro do <code>&lt;component&gt;</code> do aplicativo em seu arquivo metainfo.</p>
    <p>O conteúdo neste elemento deve ser uma <link href="https://spdx.org/specifications">expressão SPDX</link> que descreve a licença ‘principal’ para o projeto. Normalmente, deve ser a licença do código e não incluir a licença da documentação ou conteúdo auxiliar.</p>
    <p>Se a expressão SPDX for uma licença única, ou uma combinação de várias licenças, que são todas <link href="https://spdx.org/licenses/">aprovadas pela FSF ou OSI</link>, o aplicativo é considerado ‘software livre’ e o bloco de licença diz isso. Caso contrário, é considerado ‘privativo’.</p>
    <p>Se um aplicativo estiver sendo exibido como ‘privativo’ quando você acha que não deveria ser, é provável que o elemento <code>&lt;project_license&gt;</code> inclua a licença de documentação para o projeto. Remova-o.</p>
    <p><link href="https://gitlab.gnome.org/GNOME/meld/-/issues/579">Por exemplo</link>, altere os metadados da licença de:</p>
    <code mime="application/xml">&lt;project_license&gt;GPL-2.0+ and CC-BY-SA-3.0&lt;/project_license&gt;</code>
    <p>para</p>
    <code mime="application/xml">&lt;project_license&gt;GPL-2.0+&lt;/project_license&gt;</code>
    <p>Leitura adicional:</p>
    <list>
      <item>
	<p><link href="https://tecnocode.co.uk/2021/07/05/dont-generally-put-cc-by-sa-in-appdata/">Não coloque (de forma geral) a licença de documentação no appdata</link></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>Como adicionar links ausentes</title>
    <p>Os links para um aplicativo são armazenados como elementos <link href="https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-url"><code>&lt;url&gt;</code></link> dentro do <code>&lt;component&gt;</code> do aplicativo em seu arquivo metainfo.</p>
    <p>Adicione quantos tipos de link documentados na <link href="https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-url">especificação do appstream</link> estiverem disponíveis para o aplicativo. Se nenhuma página adequada existir para um determinado tipo de link, ele não precisa ser incluído.</p>
    <p>Por exemplo, aqui estão os links de recursos para o aplicativo <app>Programas</app>:</p>
    <code mime="application/xml">
&lt;url type="bugtracker"&gt;https://gitlab.gnome.org/GNOME/gnome-software/-/issues&lt;/url&gt;
&lt;url type="contact"&gt;https://discourse.gnome.org/tag/gnome-software&lt;/url&gt;
&lt;url type="contribute"&gt;https://welcome.gnome.org/app/Software/&lt;/url&gt;
&lt;url type="donation"&gt;https://www.gnome.org/donate/&lt;/url&gt;
&lt;url type="homepage"&gt;https://apps.gnome.org/Software&lt;/url&gt;
&lt;url type="translate"&gt;https://l10n.gnome.org/module/gnome-software/&lt;/url&gt;
&lt;url type="vcs-browser"&gt;https://gitlab.gnome.org/GNOME/gnome-software/&lt;/url&gt;</code>
  </section>

  <section id="how-to-set-the-carousel-tile-background-colour">
    <title>Como definir a cor de fundo do bloco de carrossel</title>
    <p>A cor de fundo do bloco de carrossel normalmente é extraída automaticamente do ícone do aplicativo. Se essa cor for insatisfatória, no entanto, ela pode ser substituída usando o <link href="https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-branding">elemento <code>&lt;branding/&gt;</code> do appstream</link> com cores declaradas (desde a série 47.x). A vantagem é que mais clientes podem usar as cores.</p>
    <p>Por exemplo, aqui estão algumas entradas de “branding”:</p>
    <code mime="application/xml">
&lt;branding&gt;
  &lt;color type="primary" scheme_preference="light"&gt;#ff00ff&lt;/color&gt;
  &lt;color type="primary" scheme_preference="dark"&gt;#993d3d&lt;/color&gt;
&lt;/branding&gt;</code>
    <note>
      <p>Observe que o atributo <code>scheme_preference</code> é ignorado, o <app>
Programas</app> escolhe a melhor cor para o tema por conta própria.</p>
    </note>
    <p>Resta, para compatibilidade com versões anteriores, a possibilidade de adicionar o seguinte XML ao elemento metainfo <code>&lt;component&gt;</code> do aplicativo:</p>
    <code mime="application/xml">
&lt;custom&gt;
  &lt;value key="GnomeSoftware::key-colors"&gt;[(124, 53, 77), (99, 16, 0)]&lt;/value&gt;
&lt;/custom&gt;</code>
    <p>mas o elemento <code>&lt;branding/&gt;</code> tem precedência.</p>
    <p>O valor de <code>GnomeSoftware::key-colors</code> é um GVariant de formato de texto com o tipo <code>a(yyy)</code> e representa um conjunto não ordenado de cores-chave para o aplicativo. Cada elemento do conjunto é uma cor no formato RGB variando de <code>(0, 0, 0)</code> a <code>(255, 255, 255)</code>.</p>
    <p>As cores devem ser escolhidas de modo que:</p>
    <list>
      <item>
	<p>Sejam identificáveis ​​ao aplicativo, combinando com a marca do aplicativo de alguma forma, se possível.</p>
      </item>
      <item>
	<p>Contraste com a borda do ícone do aplicativo, para que, quando forem usadas como plano de fundo atrás dele, o ícone possa ser distinguido.</p>
      </item>
      <item>
	<p>Contraste com a cor do texto em primeiro plano no tema Adwaita (<code>#2e3436</code>) e em sua variante escura (<code>#eeeeec</code>). Isso geralmente significa escolher uma cor com um nível médio de brilho.</p>
      </item>
      <item>
	<p>O contraste pode ser verificado usando o <link href="https://flathub.org/apps/org.gnome.design.Contrast/">aplicativo Contraste</link>.</p>
      </item>
    </list>
    <p>Pelo menos uma cor deve ser especificada. Mais podem ser especificadas se uma cor não puder satisfazer todos os requisitos acima, e o <app>Programas</app> escolherá a mais apropriada para uso no bloco do carrossel. Se exatamente uma cor for especificada, seu brilho e saturação podem ser modificados para melhorar o contraste com a cor de primeiro plano. Se mais de uma cor for especificada, aquela com o melhor contraste com a cor de primeiro plano será escolhida, e seu brilho e saturação não serão modificados.</p>
  </section>

  <section id="how-to-test-carousel-tile-background-colour-changes">
    <title>Como testar as alterações de cor de fundo do bloco de carrossel</title>
    <p>Modifique o arquivo metainfo para seu aplicativo e execute o <app>Programas</app> com:</p>
    <p><cmd>gnome-software --show-metainfo=<var>/caminho/do/app.metainfo.xml</var>,icon=<var>/caminho/do/ícone/do/aplicativo.png</var></cmd></p>
    <p>A página de detalhes do seu aplicativo será exibida. Se você navegar de volta para a página de visão geral de <app>Programas</app>, seu aplicativo será o único no carrossel de ‘em destaque’.</p>
  </section>


</page>
