Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 5 Aug 2020 22:13:02 +0000 (UTC)
From:      "Danilo G. Baio" <dbaio@FreeBSD.org>
To:        doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org
Subject:   svn commit: r54410 - head/pt_BR.ISO8859-1/books/porters-handbook
Message-ID:  <202008052213.075MD2ot084896@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dbaio (ports committer)
Date: Wed Aug  5 22:13:01 2020
New Revision: 54410
URL: https://svnweb.freebsd.org/changeset/doc/54410

Log:
  pt_BR/books/porters-handbook: Sync with en_US r54372
  
  Approved by:	ebrandi
  Obtained from:	https://translate-dev.freebsd.org
  Differential Revision:	https://reviews.freebsd.org/D25827

Modified:
  head/pt_BR.ISO8859-1/books/porters-handbook/book.xml
  head/pt_BR.ISO8859-1/books/porters-handbook/pt_BR.po

Modified: head/pt_BR.ISO8859-1/books/porters-handbook/book.xml
==============================================================================
--- head/pt_BR.ISO8859-1/books/porters-handbook/book.xml	Wed Aug  5 22:09:20 2020	(r54409)
+++ head/pt_BR.ISO8859-1/books/porters-handbook/book.xml	Wed Aug  5 22:13:01 2020	(r54410)
@@ -345,7 +345,7 @@ lib/X11/oneko/mouse.xpm</programlisting>
       <para>Nós não precisamos do diretório <filename>work</filename> ou do pacote <filename>pkgname.tgz</filename>, então exclua-os agora.</para>
     </important>
 
-    <para>Em seguida, crie um <citerefentry><refentrytitle>patch</refentrytitle><manvolnum>1</manvolnum></citerefentry> ou um arquivo <citerefentry><refentrytitle>shar</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Assumindo que o port é chamado <literal>oneko</literal> e está na categoria <literal>games</literal>.</para>
+    <para>Em seguida, crie um <citerefentry><refentrytitle>patch</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Assumindo que o port é chamado <literal>oneko</literal> e está na categoria <literal>games</literal>.</para>
 
     <example xml:id="porting-submitting-diff">
       <title>Criando um <filename>.diff</filename> para um Novo Port</title>
@@ -361,17 +361,8 @@ lib/X11/oneko/mouse.xpm</programlisting>
       </important>
     </example>
 
-    <example xml:id="porting-submitting-shar">
-      <title>Criando um <filename>.shar</filename> para um Novo Port</title>
+    <para>Envie o <filename>oneko.diff</filename> com o <link xlink:href="https://bugs.freebsd.org/submit/">formulário de submissão de bugs</link>. Use product <quote>Ports &amp; Packages</quote>, component <quote>Individual Port(s)</quote> e siga as diretrizes mostradas lá. Adicione uma breve descrição do programa ao campo Description do PR (talvez uma versão curta do <varname>COMMENT</varname>), e lembre-se de adicionar o <filename>oneko.diff</filename> como um anexo.</para>
 
-      <para>Utilize o <command>cd</command> e vá para o diretório acima de onde o diretório do port está localizado e use <command>shar</command> para criar o arquivo:</para>
-
-      <screen><prompt>%</prompt> <userinput>cd ..</userinput>
-<prompt>%</prompt> <userinput>shar `find <replaceable>oneko</replaceable>` &gt; <replaceable>oneko</replaceable>.shar</userinput></screen>
-    </example>
-
-    <para>Envie um dos <filename>oneko.shar</filename> ou <filename>oneko.diff</filename> com o <link xlink:href="https://bugs.freebsd.org/submit/">; formulário de submissão de bugs</link>. Use product <quote>Ports &amp; Packages</quote>, component <quote>Individual Port(s)</quote> e siga as diretrizes mostradas lá. Adicione uma breve descrição do programa ao campo Description do PR (talvez uma versão curta do <varname>COMMENT</varname>), e lembre-se de adicionar o <filename>oneko.shar</filename> ou <filename>oneko.diff</filename> como um anexo.</para>
-
     <note>
       <para>Dar uma boa descrição no resumo do relatório de problema facilita muito o trabalho dos commiters de ports. Preferimos algo como <quote>New port: <replaceable>category</replaceable>/<replaceable>portname</replaceable> <replaceable>breve descrição do port</replaceable></quote> para novos ports. Usar este esquema torna mais fácil e rápido começar o trabalho para fazer o commit de um novo port.</para>
     </note>
@@ -381,6 +372,18 @@ lib/X11/oneko/mouse.xpm</programlisting>
     <para>Para obter uma listagem dos <acronym>PR</acronym>s <emphasis>abertos</emphasis> para os ports, selecione <emphasis>Open</emphasis> e <emphasis>Ports &amp; Packages</emphasis> no formulário de pesquisa, clique em <guibutton>[ Search ]</guibutton>.</para>
 
     <para>Depois de analisar o novo port, nós responderemos se necessário, e iremos adicioná-lo a árvore. O nome do remetente também será adicionado à lista de <link xlink:href="@@URL_RELPREFIX@@/doc/pt_BR.ISO8859-1/articles/contributors/contrib-additional.html">Contribuidores Adicionais do FreeBSD</link> e outros arquivos.</para>
+
+    <para>Também é possível enviar ports usando um arquivo <citerefentry><refentrytitle>shar</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Usando o exemplo anterior com o port <literal>oneko</literal> acima.</para>
+
+    <example xml:id="porting-submitting-shar">
+    <title>Criando um <filename>.shar</filename> para um Novo Port</title>
+
+      <para>vá para o diretório acima, onde o diretório do port está localizado, e use <command>tar</command> para criar o arquivo shar:</para>
+
+        <screen><prompt>%</prompt> <userinput>cd ..</userinput>
+<prompt>%</prompt> <userinput>tar cf <replaceable>oneko</replaceable>.shar --format shar <replaceable>oneko</replaceable></userinput></screen>
+    </example>
+    <para><filename>oneko.shar</filename> pode ser enviado da mesma maneira que <filename>oneko.diff</filename> acima.</para>
   </sect1>
 </chapter>
 
@@ -6685,7 +6688,7 @@ CMAKE_OFF=	VAR3</programlisting>
 	    <row>
 	      <entry><varname>CARGO_FEATURES</varname></entry>
 	      <entry/>
-	      <entry>Lista de recursos da aplicação para compilar (lista separada por espaço).</entry>
+	      <entry>Lista de recursos do aplicativo a serem compilados (lista separada por espaço). Para desativar todos os recursos padrão, adicione o token especial <literal>--no-default-features</literal> para <varname>CARGO_FEATURES</varname>. Passar manualmente para <varname>CARGO_BUILD_ARGS</varname>, <varname>CARGO_INSTALL_ARGS</varname>, e <varname>CARGO_TEST_ARGS</varname> não é necessário.</entry>
 	    </row>
 
 	    <row>
@@ -6906,6 +6909,26 @@ rust/crates/atty-0.2.9.tar.gz                 100% of 
 	<programlisting>CARGO_FEATURES=	json yaml</programlisting>
       </example>
 
+      <example xml:id="cargo-ex4">
+	<title>Features de Codificação de Aplicativos como Opções de Port</title>
+
+	<para>Um exemplo de seção <literal>[features]</literal> no <filename>Cargo.toml</filename> pode parecer assim:</para>
+
+	<programlisting>[features]
+pulseaudio_backend = ["librespot-playback/pulseaudio-backend"]
+portaudio_backend = ["librespot-playback/portaudio-backend"]
+default = ["pulseaudio_backend"]</programlisting>
+
+	<para><literal>pulseaudio_backend</literal> é uma feature padrão. Ela está sempre ativada, a menos que desativemos explicitamente os recursos padrão adicionando <literal>--no-default-features</literal> para o <varname>CARGO_FEATURES</varname>. Aqui nós mudamos as features <literal>portaudio_backend</literal> e <literal>pulseaudio_backend</literal> em opções de port:</para>
+
+	<programlisting>CARGO_FEATURES=	--no-default-features
+
+OPTIONS_DEFINE=	PORTAUDIO PULSEAUDIO
+
+PORTAUDIO_VARS=		CARGO_FEATURES+=portaudio_backend
+PULSEAUDIO_VARS=	CARGO_FEATURES+=pulseaudio_backend</programlisting>
+      </example>
+
       <example xml:id="cargo-ex3">
 	<title>Listando Licenças Crate</title>
 
@@ -7067,6 +7090,87 @@ daviddengcn-go-colortext-186a3d44e920_GH0.tar.        
 	<para>irá instalar <literal>dnscrypt-proxy</literal> em <literal>${PREFIX}/sbin</literal>.</para>
       </example>
     </sect2>
+
+    <sect2 xml:id="using-cabal">
+      <title>Compilando Aplicações <application>Haskell</application> com <command>cabal</command></title>
+
+      <para>Para ports que usam <application>Cabal</application>, defina o sistema de compilação <literal>USES=cabal</literal>. Consulte <xref linkend="uses-cabal"/> para obter a lista de variáveis que podem ser configuradas para controlar o processo de compilação.</para>
+
+      <example xml:id="cabal-ex1">
+	<title>Criando um Port para uma Aplicação Hackage-hosted Haskell</title>
+
+	<para>Ao preparar um port Haskell Cabal, o programa <package role="port">devel/hs-cabal-install</package> é necessário, portanto, certifique-se de que esteja instalado previamente. Primeiro, precisamos definir variáveis de ports comuns que permitem ao cabal-install buscar o arquivo de distribuição de pacotes:</para>
+
+	<programlisting>PORTNAME=	ShellCheck
+DISTVERSION=	0.6.0
+CATEGORIES=	devel
+
+MAINTAINER=	haskell@FreeBSD.org
+COMMENT=	Shell script analysis tool
+
+USES=		cabal
+
+.include &lt;bsd.port.mk&gt;</programlisting>
+
+	<para>Esse Makefile mínimo nos permite baixar o arquivo de distribuição:</para>
+
+	<screen><prompt>%</prompt> <userinput>make cabal-extract</userinput>
+[...]
+Downloading the latest package list from hackage.haskell.org
+cabal get ShellCheck-0.6.0
+Downloading  ShellCheck-0.6.0
+Downloaded   ShellCheck-0.6.0
+Unpacking to ShellCheck-0.6.0/</screen>
+
+	<para>Agora, temos o arquivo de descrição do pacote ShellCheck.cabal, que permite baixar todas as dependências do pacote, incluindo as transitivas:</para>
+
+	<screen><prompt>%</prompt> <userinput>make cabal-extract-deps</userinput>
+[...]
+Resolving dependencies...
+Downloading  base-orphans-0.8.2
+Downloaded   base-orphans-0.8.2
+Downloading  primitive-0.7.0.0
+Starting     base-orphans-0.8.2 (lib)
+Building     base-orphans-0.8.2 (lib)
+Downloaded   primitive-0.7.0.0
+Downloading  dlist-0.8.0.7
+[...]</screen>
+
+	<para>Como efeito colateral, as dependências do pacote também são compiladas, portanto, o comando pode levar algum tempo. Uma vez feito, uma lista de dependências necessárias pode ser gerada:</para>
+
+	<screen><prompt>%</prompt> <userinput>make make-use-cabal</userinput>
+USE_CABAL=QuickCheck-2.12.6.1 \
+hashable-1.3.0.0 \
+integer-logarithms-1.0.3 \
+[...]</screen>
+
+	<para>Pacotes Haskell podem conter revisões, assim como nos ports do FreeBSD. As revisões podem afetar apenas os arquivos <filename>.cabal</filename>, mas ainda é importante extraí-los. Para verificar os itens <varname>USE_CABAL</varname> quanto a atualizações de revisão disponíveis, execute o seguinte comando:</para>
+
+	<screen><prompt>%</prompt> <userinput>make make-use-cabal-revs</userinput>
+USE_CABAL=QuickCheck-2.12.6.1_1 \
+hashable-1.3.0.0 \
+integer-logarithms-1.0.3_2 \
+[...]</screen>
+
+	<para>Observe os números de versão adicionais após o símbolo <literal>_</literal>. Coloque a lista <varname>USE_CABAL</varname> recém-gerada em vez de uma antiga.</para>
+
+	<para>Finalmente, o <filename>distinfo</filename> precisa ser gerado novamente para conter todos os arquivos de distribuição:</para>
+
+	<screen><prompt>%</prompt> <userinput>make makesum</userinput>
+=&gt; ShellCheck-0.6.0.tar.gz doesn't seem to exist in /usr/local/poudriere/ports/git/distfiles/cabal.
+=&gt; Attempting to fetch https://hackage.haskell.org/package/ShellCheck-0.6.0/ShellCheck-0.6.0.tar.gz
+ShellCheck-0.6.0.tar.gz                                136 kB  642 kBps    00s
+=&gt; QuickCheck-2.12.6.1/QuickCheck-2.12.6.1.tar.gz doesn't seem to exist in /usr/local/poudriere/ports/git/distfiles/cabal.
+=&gt; Attempting to fetch https://hackage.haskell.org/package/QuickCheck-2.12.6.1/QuickCheck-2.12.6.1.tar.gz
+QuickCheck-2.12.6.1/QuickCheck-2.12.6.1.tar.gz          65 kB  361 kBps    00s
+[...]</screen>
+
+	<para>O port está agora pronto para uma compilação de teste e ajustes adicionais, como criar um plist, escrever uma descrição, adicionar informações de licença, opções, etc. como é normal.</para>
+
+	<para>Se você não estiver testando seu port em um ambiente limpo, como com o <application>Poudriere</application>, lembre-se de executar <command>make clean</command> antes de qualquer teste.</para>
+      </example>
+
+    </sect2>
   </sect1>
 
   <sect1 xml:id="using-autotools">
@@ -7130,7 +7234,7 @@ PLIST_SUB+=		NLS="@comment "
 
 .include &lt;bsd.port.mk&gt;</programlisting>
 
-      <para>O próximo item na lista de tarefas a fazer é organizar de forma condicional os arquivos do catálogo de mensagens na lista de pacotes. A parte do <filename>Makefile</filename> desta tarefa já é fornecida pela expressão idiomática. Isto é explicado na seção sobre <link linkend="plist-sub">práticas avançadas de <filename>pkg-plist</filename></link>. Em poucas palavras, cada ocorrência de <literal>%%NLS%%</literal> dentro de <filename>pkg-plist</filename> será substituído por <quote><literal>@Comment</literal></quote> se o NLS estiver desativado ou por uma cadeia nula se o NLS estiver ativado. Consequentemente, as linhas prefixadas por <literal>%%NLS%%</literal> se tornarão meros comentários na lista de empacotamento final se o NLS estiver desativado; caso contrário, o prefixo será deixado de fora. Em seguida, insira <literal>%%NLS%%</literal> antes de cada caminho para um arquivo de catálogo de mensagens em <filename>pkg-plist</filename>. Por exemplo:</p
 ara>
+      <para>O próximo item na lista de tarefas a fazer é organizar de forma condicional os arquivos do catálogo de mensagens na lista de pacotes. A parte do <filename>Makefile</filename> desta tarefa já é fornecida pela expressão idiomática. Isto é explicado na seção sobre <link linkend="plist-sub">práticas avançadas de <filename>pkg-plist</filename></link>. Em poucas palavras, cada ocorrência de <literal>%%NLS%%</literal> dentro de <filename>pkg-plist</filename> será substituído por <quote><literal>@comment</literal></quote> se o NLS estiver desativado ou por uma cadeia nula se o NLS estiver ativado. Consequentemente, as linhas prefixadas por <literal>%%NLS%%</literal> se tornarão meros comentários na lista de empacotamento final se o NLS estiver desativado; caso contrário, o prefixo será deixado de fora. Em seguida, insira <literal>%%NLS%%</literal> antes de cada caminho para um arquivo de catálogo de mensagens em <filename>pkg-plist</filename>. Por exemplo:</p
 ara>
 
       <programlisting>%%NLS%%share/locale/fr/LC_MESSAGES/foobar.mo
 %%NLS%%share/locale/no/LC_MESSAGES/foobar.mo</programlisting>
@@ -11342,7 +11446,7 @@ WANT_PGSQL=	server</programlisting>
 
     <para>Vários scripts podem ser listados e serão instalados. Os scripts devem ser colocados no subdiretório <filename>files</filename> e um sufixo <literal>.in</literal> deve ser adicionado ao nome do arquivo. Expansões padrões <varname>SUB_LIST</varname> serão executadas neste arquivo. Usar as expansões <literal>%%PREFIX%%</literal> e <literal>%%LOCALBASE%%</literal> também é fortemente encorajado. Veja mais sobre a <varname>SUB_LIST</varname> na <link linkend="using-sub-files">seção relevante</link>.</para>
 
-    <para>A partir do FreeBSD 6.1-RELEASE, scripts locais <filename>rc.d</filename>  (incluindo aqueles instalados pelos ports) estão incluídos no <citerefentry><refentrytitle>rcorder</refentrytitle><manvolnum>8</manvolnum></citerefentry> do sistema base.</para>
+    <para>A partir do FreeBSD 6.1-RELEASE, scripts locais <filename>rc.d</filename> (incluindo aqueles instalados pelos ports) estão incluídos no <citerefentry><refentrytitle>rcorder</refentrytitle><manvolnum>8</manvolnum></citerefentry> do sistema base.</para>
 
     <para>Um exemplo simples de script <filename>rc.d</filename> para iniciar o daemon doormand:</para>
 
@@ -11530,6 +11634,12 @@ GROUPS=	pulse pulse-access pulse-rt</programlisting>
     </itemizedlist>
   </sect1>
 
+  <sect1 xml:id="haskell-libs">
+    <title>Bibliotecas Haskell</title>
+
+    <para>Assim como na linguagem Go, Ports não devem empacotar ou instalar as bibliotecas Haskell. Os ports Haskell devem vincular estaticamente a suas dependências e buscar todos os arquivos de distribuição no estágio fetch.</para>
+  </sect1>
+
   <sect1 xml:id="shell-completion">
     <title>Arquivos Shell Completion</title>
 
@@ -12583,7 +12693,7 @@ EOD</programlisting>
 	<term>raw</term>
 
 	<listitem>
-	  <para>Um arquivo de texto simples. Sua mensagem é sempre exibida, na instalação e na atualização.</para>
+	  <para>Um arquivo de texto simples comum. Sua mensagem é exibida apenas na instalação.</para>
 	</listitem>
       </varlistentry>
 
@@ -12641,18 +12751,10 @@ EOD</programlisting>
 
       <para>As palavras-chave <literal>maximum_version</literal> e <literal>minimum_version</literal> podem ser combinadas.</para>
 
-      <para>A palavra-chave <literal>type</literal> pode ter quatro valores:</para>
+      <para>A palavra-chave <literal>type</literal> pode ter três valores:</para>
 
       <variablelist>
 	<varlistentry>
-	  <term>(nenhum tipo especificado)</term>
-
-	  <listitem>
-	    <para>A mensagem é sempre exibida.</para>
-	  </listitem>
-	</varlistentry>
-
-	<varlistentry>
 	  <term><literal>install</literal></term>
 
 	  <listitem>
@@ -12687,7 +12789,7 @@ EOD</programlisting>
 	<para>A mensagem é delimitada por aspas duplas <literal>"</literal>, isto é utilizado em strings simples de linha única:</para>
 
 	<programlisting>[
-{
+{ type: install
   message: "Simple message"
 }
 ]</programlisting>
@@ -12699,7 +12801,7 @@ EOD</programlisting>
 	<para>Strings de múltiplas linhas utiliza o padrão here de documento de notação. O delimitador de múltiplas linhas  <emphasis>deve</emphasis> iniciar logo após os símbolos <literal>&lt;&lt;</literal> sem espaço em branco, e ele <emphasis>deve</emphasis> ser apenas em letras maiúsculas. Para finalizar uma sequência de múltiplas linhas, adicione o delimitador em uma linha única, sem nenhum espaço em branco. A mensagem de <xref linkend="porting-message-ucl-short-ex"/> pode ser escrita como:</para>
 
 	<programlisting>[
-{
+{ type: install
   message: &lt;&lt;EOM
 Simple message
 EOM
@@ -12707,28 +12809,6 @@ EOM
 ]</programlisting>
       </example>
 
-      <example xml:id="porting-message-ucl-ex1">
-	<title>Sempre Exibir uma Mensagem</title>
-
-	<para>Se um port tiver um <filename>pkg-message</filename> contendo texto simples, ele pode ser transformado em <acronym>UCL</acronym> facilmente. Veja este <filename>pkg-message</filename>:</para>
-
-	<programlisting>*   BIND requires configuration of rndc, including a "secret" key.   *
-*    The easiest, and most secure way to configure rndc is to run    *
-*   'rndc-confgen -a' to generate the proper conf file, with a new   *
-*            random key, and appropriate file permissions.           *</programlisting>
-
-	<programlisting>[
-{
-  message: &lt;&lt;EOD
-*   BIND requires configuration of rndc, including a "secret" key.   *
-*    The easiest, and most secure way to configure rndc is to run    *
-*   'rndc-confgen -a' to generate the proper conf file, with a new   *
-*            random key, and appropriate file permissions.           *
-EOD
-}
-]</programlisting>
-      </example>
-
       <example xml:id="porting-message-ucl-ex2">
 	<title>Exibir uma Mensagem na Instalação/Desinstalação</title>
 
@@ -12770,6 +12850,10 @@ EOD
   message: "Upgrading from &gt; 1.0 and &lt; 3.0 remove that file."
 }
 ]</programlisting>
+
+	<important>
+	  <para>Ao exibir uma mensagem na atualização, é importante limitar até quando ela será mostrada ao usuário. Na maioria das vezes, é usado o <literal>maximum_version</literal> para limitar seu uso a atualizações anteriores a uma certa versão, quando algo específico precisa ser feito.</para>
+	</important>
       </example>
     </sect2>
   </sect1>
@@ -13062,7 +13146,7 @@ SVN_HOST=svn.FreeBSD.org</programlisting>
 	  <term><varname>DISTFILES_CACHE</varname></term>
 
 	  <listitem>
-	    <para>Define onde os distfiles são armazenados. Neste exemplo, o <application>Poudriere</application> e o host compartilham o diretório de armazenamento dos distfiles. Isso evita o download de tarballs que já estão presentes no sistema.</para>
+	    <para>Define onde os distfiles são armazenados. Neste exemplo, o <application>Poudriere</application> e o host compartilham o diretório de armazenamento dos distfiles. Isso evita o download de tarballs que já estão presentes no sistema. Por favor, crie este diretório se ele ainda não existir, para que o <application>Poudriere</application> possa encontrá-lo.</para>
 	  </listitem>
 	</varlistentry>
 
@@ -13098,9 +13182,9 @@ SVN_HOST=svn.FreeBSD.org</programlisting>
 
       <para>Crie as jails de base que serão usadas pelo <application>Poudriere</application> para as compilações:</para>
 
-      <screen><prompt>#</prompt> <userinput>poudriere jail -c -j 111Ramd64 -v 11.1-RELEASE -a amd64</userinput></screen>
+      <screen><prompt>#</prompt> <userinput>poudriere jail -c -j 113Ramd64 -v 11.3-RELEASE -a amd64</userinput></screen>
 
-      <para>Busca a versão <literal>11.1-RELEASE</literal> para <literal>amd64</literal> do servidor <acronym>FTP</acronym> dado por <varname>FREEBSD_HOST</varname> dentro do <filename>poudriere.conf</filename>, crie o sistema de arquivos com zfs em <literal>tank/poudriere/jails/111Ramd64</literal>, monta-o em <filename>/poudriere/jails/111Ramd64</filename> e extrai os tarballs <literal>11.1-RELEASE</literal> neste sistema de arquivos.</para>
+      <para>Baixe a versão <literal>11.3-RELEASE</literal> para <literal>amd64</literal> do servidor <acronym>FTP</acronym> dado por <varname>FREEBSD_HOST</varname> dentro do <filename>poudriere.conf</filename>, crie o sistema de arquivos com zfs em <literal>tank/poudriere/jails/113Ramd64</literal>, monte-o em <filename>/poudriere/jails/113Ramd64</filename> e extrai os tarballs <literal>11.3-RELEASE</literal> neste sistema de arquivos.</para>
 
       <screen><prompt>#</prompt> <userinput>poudriere jail -c -j 11i386 -v stable/11 -a i386 -m svn+https</userinput></screen>
 
@@ -13113,15 +13197,15 @@ SVN_HOST=svn.FreeBSD.org</programlisting>
       </tip>
 
       <note>
-	<para>Embora seja possível compilar uma versão mais nova do FreeBSD em uma versão mais antiga, na maioria das vezes ela não irá executar. Por exemplo, se uma jail <literal>stable/11</literal> é necessária, o host terá que rodar <literal>stable/11</literal> também. Rodar <literal>11.0-RELEASE</literal> não é o suficiente.</para>
+	<para>Embora seja possível compilar uma versão mais nova do FreeBSD em uma versão mais antiga, na maioria das vezes ela não irá executar. Por exemplo, se uma jail <literal>stable/11</literal> é necessária, o host terá que rodar <literal>stable/11</literal> também. Rodar <literal>11.3-RELEASE</literal> não é o suficiente.</para>
       </note>
 
       <note>
 	<para>Para criar uma jail <application>Poudriere</application> para o <literal>13.0-CURRENT</literal>:</para>
 
-	    <screen><prompt>#</prompt> <userinput>poudriere jail -c -j 12amd64 -v head -a amd64 -m svn+https</userinput></screen>
+	    <screen><prompt>#</prompt> <userinput>poudriere jail -c -j 13amd64 -v head -a amd64 -m svn+https</userinput></screen>
 
-	  <para>Para executar uma jail <literal>13.0-CURRENT</literal> no <application>Poudriere</application> você deve estar rodando o <literal>13.0-CURRENT</literal>. Em geral, novos kernels podem ser compilados e executar jails mais antigas. Por exemplo, um kernel <literal>13.0-CURRENT</literal> pode compilar e executar uma jail <literal>11.1-STABLE</literal> no <application>Poudriere</application> se a opção de kernel <literal>COMPAT_FREEBSD11</literal> tiver sido compilada (habilitada por padrão na  configuração do kernel  <filename>GENERIC</filename> do <literal>13.0-CURRENT</literal>).</para>
+	  <para>Para executar uma jail <literal>13.0-CURRENT</literal> no <application>Poudriere</application> você deve estar rodando o <literal>13.0-CURRENT</literal>. Em geral, novos kernels podem ser compilados e executar jails mais antigas. Por exemplo, um kernel <literal>13.0-CURRENT</literal> pode compilar e executar uma jail <literal>11.3-STABLE</literal> no <application>Poudriere</application> se a opção de kernel <literal>COMPAT_FREEBSD11</literal> tiver sido compilada (habilitada por padrão na  configuração do kernel  <filename>GENERIC</filename> do <literal>13.0-CURRENT</literal>).</para>
 	</note>
 
       <caution>
@@ -13132,8 +13216,8 @@ SVN_HOST=svn.FreeBSD.org</programlisting>
 
       <screen><prompt>#</prompt> <userinput>poudriere jail -l</userinput>
 JAILNAME             VERSION              ARCH    METHOD
-111Ramd64             11.1-RELEASE          amd64   ftp
-11i386               11.0-STABLE          i386    svn+https</screen>
+113Ramd64            11.3-RELEASE         amd64   ftp
+11i386               11.3-STABLE          i386    svn+https</screen>
     </sect2>
 
 
@@ -13196,8 +13280,20 @@ subversive           svn+https  /poudriere/ports/subve
 
       <para>Dependendo do fluxo de trabalho, pode ser extremamente útil usar árvores de ports que são mantidas manualmente. Por exemplo, se houver uma cópia local da árvore de ports em <filename>/work/ports</filename>, aponte o <application>Poudriere</application> para o local:</para>
 
-      <screen><prompt>#</prompt> <userinput>poudriere ports -c -F -f none -M /work/ports -p development</userinput></screen>
+      <itemizedlist>
+	<listitem>
+      	  <para>Para o <application>Poudriere</application> anterior à versão 3.1.20:</para>
 
+	  <screen><prompt>#</prompt> <userinput>poudriere ports -c -F -f none -M /work/ports -p development</userinput></screen>
+	</listitem>
+
+	<listitem>
+	  <para>Para o <application>Poudriere</application> versão 3.1.20 e posterior:</para>
+
+	  <screen><prompt>#</prompt> <userinput>poudriere ports -c -m null -M /work/ports -p development</userinput></screen>
+	</listitem>
+      </itemizedlist>
+
       <para>Isto será listado na tabela de árvores conhecidas:</para>
 
       <screen><prompt>#</prompt> <userinput>poudriere ports -l</userinput>
@@ -13230,32 +13326,32 @@ development  -        /work/ports</screen>
 
       <para>Depois que as jails e as árvores de ports foram configuradas, o resultado das modificações de um colaborador na árvore de ports pode ser testado.</para>
 
-      <para>Por exemplo, modificações locais no port <package role="port">www/firefox</package> localizado em <filename>/work/ports/www/firefox</filename> pode ser testado na jail 11.1-RELEASE criada anteriormente:</para>
+      <para>Por exemplo, modificações locais no port <package role="port">www/firefox</package> localizado em <filename>/work/ports/www/firefox</filename> pode ser testado na jail 11.3-RELEASE criada anteriormente:</para>
 
-      <screen><prompt>#</prompt> <userinput>poudriere testport -j 111Ramd64 -p development -o www/firefox</userinput></screen>
+      <screen><prompt>#</prompt> <userinput>poudriere testport -j 113Ramd64 -p development -o www/firefox</userinput></screen>
 
       <para>Isso irá compilar todas as dependências do <application>firefox</application>. Se uma dependência foi criada anteriormente e ainda está atualizada, o pacote pré-criado é instalado. Se uma dependência não tiver um pacote atualizado, ela será compilada com opções padrão em uma jail. Depois disso o <application>firefox</application> será compilado.</para>
 
-      <para>A compilação completa de cada port será registrada em <filename>/poudriere/data/logs/bulk/111Ri386-development/<replaceable>build-time</replaceable>/logs</filename>.</para>
+      <para>A compilação completa de cada port será registrada em <filename>/poudriere/data/logs/bulk/113Ri386-development/<replaceable>build-time</replaceable>/logs</filename>.</para>
 
-      <para>O nome do diretório <literal>111Ri386-development</literal> é derivado dos argumentos para <literal>-j</literal> e <literal>-p</literal>, respectivamente. Por conveniência, um link simbólico <filename>/poudriere/data/logs/bulk/111Ri386-development/latest</filename> também é mantido. O link aponta para o mais recente diretório <replaceable>build-time</replaceable>. Neste diretório também se encontra um <filename>index.html</filename> para que possa ser possível observar o processo de compilação com um navegador web.</para>
+      <para>O nome do diretório <literal>113Ri386-development</literal> é derivado dos argumentos para <literal>-j</literal> e <literal>-p</literal>, respectivamente. Por conveniência, um link simbólico <filename>/poudriere/data/logs/bulk/113Ri386-development/latest</filename> também é mantido. O link aponta para o mais recente diretório <replaceable>build-time</replaceable>. Neste diretório também se encontra um <filename>index.html</filename> para que possa ser possível observar o processo de compilação com um navegador web.</para>
 
       <para>Por padrão, o <application>Poudriere</application> limpa as jails e deixa os arquivos de log nos diretórios mencionados acima. Para facilitar a investigação, as jails podem ser mantidas em execução após a compilação, adicionando a opção <option>-i</option> ao <command>testport</command>:</para>
 
-      <screen><prompt>#</prompt> <userinput>poudriere testport -j 111Ramd64 -p development -i -o www/firefox</userinput></screen>
+      <screen><prompt>#</prompt> <userinput>poudriere testport -j 113Ramd64 -p development -i -o www/firefox</userinput></screen>
 
       <para>Depois que a compilação é concluída, e independentemente de ter sido bem-sucedida, um shell é fornecido dentro da jail. O shell é usado para investigações adicionais. O <application>Poudriere</application> pode ser dito para deixar a jail em execução após a conclusão da compilação com <option>-i</option>. O <application>Poudriere</application> mostrará o comando para ser executado quando a jail não for mais necessária. E então é possível fazer um <citerefentry><refentrytitle>jexec</refentrytitle><manvolnum>8</manvolnum></citerefentry> para dentro dele:</para>
 
-      <screen><prompt>#</prompt> <userinput>poudriere testport -j 111Ramd64 -p development -I -o www/firefox</userinput>
+      <screen><prompt>#</prompt> <userinput>poudriere testport -j 113Ramd64 -p development -I -o www/firefox</userinput>
 [...]
 ====&gt;&gt; Installing local Pkg repository to /usr/local/etc/pkg/repos
-====&gt;&gt; Leaving jail 111Ramd64-development-n running, mounted at /poudriere/data/.m/111Ramd64-development/ref for interactive run testing
-====&gt;&gt; To enter jail: jexec 111Ramd64-development-n env -i TERM=$TERM /usr/bin/login -fp root
-====&gt;&gt; To stop jail: poudriere jail -k -j 111Ramd64 -p development
-<prompt>#</prompt> <userinput>jexec 111Ramd64-development-n env -i TERM=$TERM /usr/bin/login -fp root</userinput>
+====&gt;&gt; Leaving jail 113Ramd64-development-n running, mounted at /poudriere/data/.m/113Ramd64-development/ref for interactive run testing
+====&gt;&gt; To enter jail: jexec 113Ramd64-development-n env -i TERM=$TERM /usr/bin/login -fp root
+====&gt;&gt; To stop jail: poudriere jail -k -j 113Ramd64 -p development
+<prompt>#</prompt> <userinput>jexec 113Ramd64-development-n env -i TERM=$TERM /usr/bin/login -fp root</userinput>
 <prompt>#</prompt> <userinput><replaceable>[do some stuff in the jail]</replaceable></userinput>
 <prompt>#</prompt> <userinput>exit</userinput>
-<prompt>#</prompt> <userinput>poudriere jail -k -j 111Ramd64 -p development</userinput>
+<prompt>#</prompt> <userinput>poudriere jail -k -j 113Ramd64 -p development</userinput>
 ====&gt;&gt; Umounting file systems</screen>
 
       <para>Uma parte integral da infraestrutura de compilação de ports do FreeBSD é a capacidade de ajustar os ports as preferências pessoais por meio de opções. Elas podem ser testadas com o <application>Poudriere</application> também. Adicionando a opção <option>-c</option>:</para>
@@ -13276,21 +13372,21 @@ development  -        /work/ports</screen>
 
       <para>Para usar sets, o <application>Poudriere</application> espera uma estrutura de diretórios existente semelhante a <varname>PORT_DBDIR</varname>, o padrão é <filename>/var/db/ports</filename> no seu diretório de configuração. Este diretório é então <citerefentry><refentrytitle>nullfs</refentrytitle><manvolnum>5</manvolnum></citerefentry>-montado nas jails onde os ports e suas dependências são compilados. Normalmente, um ponto de partida adequado pode ser obtido copiando de forma recursiva o <varname>PORT_DBDIR</varname> para <filename>/usr/local/etc/poudriere.d/<replaceable>jailname</replaceable>-<replaceable>portname</replaceable>-<replaceable>setname</replaceable>-options</filename>. Isso é descrito em detalhes em <citerefentry vendor="ports"><refentrytitle>poudriere</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Por exemplo, para testar o <package role="port">www/firefox</package> em um conjunto específico chamado <literal>devset</literal>, adicion
 e o parâmetro <literal>-z devset</literal> ao comando testport:</para>
 
-      <screen><prompt>#</prompt> <userinput>poudriere testport -j 111Ramd64 -p development -z devset -o www/firefox</userinput></screen>
+      <screen><prompt>#</prompt> <userinput>poudriere testport -j 113Ramd64 -p development -z devset -o www/firefox</userinput></screen>
 
       <para>Isso irá procurar pela existência desses diretórios nesta ordem:</para>
 
       <itemizedlist>
 	<listitem>
-	  <para><filename>/usr/local/etc/poudriere.d/111Ramd64-development-devset-options</filename></para>
+	  <para><filename>/usr/local/etc/poudriere.d/113Ramd64-development-devset-options</filename></para>
 	</listitem>
 
 	<listitem>
-	  <para><filename>/usr/local/etc/poudriere.d/111Ramd64-devset-options</filename></para>
+	  <para><filename>/usr/local/etc/poudriere.d/113Ramd64-devset-options</filename></para>
 	</listitem>
 
 	<listitem>
-	  <para><filename>/usr/local/etc/poudriere.d/111Ramd64-development-options</filename></para>
+	  <para><filename>/usr/local/etc/poudriere.d/113Ramd64-development-options</filename></para>
 	</listitem>
 
 	<listitem>
@@ -13302,7 +13398,7 @@ development  -        /work/ports</screen>
 	</listitem>
 
 	<listitem>
-	  <para><filename>/usr/local/etc/poudriere.d/111Ramd64-options</filename></para>
+	  <para><filename>/usr/local/etc/poudriere.d/113Ramd64-options</filename></para>
 	</listitem>
 
 	<listitem>
@@ -13329,7 +13425,7 @@ development  -        /work/ports</screen>
 
       <para>Semelhante ao uso de conjuntos (sets), o <application>Poudriere</application> também usará um <filename>make.conf</filename> personalizado se for fornecido. Nenhum argumento de linha de comando especial é necessário. Em vez disso, o <application>Poudriere</application> procura por arquivos existentes que correspondam a um esquema de nomes derivado da linha de comando. Por exemplo:</para>
 
-      <screen><prompt>#</prompt> <userinput>poudriere testport -j 111Ramd64 -p development -z devset -o www/firefox</userinput></screen>
+      <screen><prompt>#</prompt> <userinput>poudriere testport -j 113Ramd64 -p development -z devset -o www/firefox</userinput></screen>
 
       <para>faz o <application>Poudriere</application> verificar a existência desses arquivos nesta ordem:</para>
 
@@ -13347,23 +13443,23 @@ development  -        /work/ports</screen>
 	</listitem>
 
 	<listitem>
-	  <para><filename>/usr/local/etc/poudriere.d/111Ramd64-make.conf</filename></para>
+	  <para><filename>/usr/local/etc/poudriere.d/113Ramd64-make.conf</filename></para>
 	</listitem>
 
 	<listitem>
-	  <para><filename>/usr/local/etc/poudriere.d/111Ramd64-development-make.conf</filename></para>
+	  <para><filename>/usr/local/etc/poudriere.d/113Ramd64-development-make.conf</filename></para>
 	</listitem>
 
 	<listitem>
-	  <para><filename>/usr/local/etc/poudriere.d/111Ramd64-devset-make.conf</filename></para>
+	  <para><filename>/usr/local/etc/poudriere.d/113Ramd64-devset-make.conf</filename></para>
 	</listitem>
 
 	<listitem>
-	  <para><filename>/usr/local/etc/poudriere.d/111Ramd64-development-devset-make.conf</filename></para>
+	  <para><filename>/usr/local/etc/poudriere.d/113Ramd64-development-devset-make.conf</filename></para>
 	</listitem>
       </itemizedlist>
 
-      <para>Ao contrário dos conjuntos, todos os arquivos encontrados serão anexados, <emphasis>naquela ordem</emphasis>, em um <filename>make.conf</filename> dentro das jails de compilação. Assim, é possível ter variáveis ​​gerais, destinadas a afetar todas as compilações <filename>/usr/local/etc/poudriere.d/make.conf</filename>. Variáveis ​​especiais, destinadas a afetar apenas determinadas jails ou conjuntos, podem ser setadas em arquivos especiais como <filename>make.conf</filename>, assim como <filename>/usr/local/etc/poudriere.d/111Ramd64-development-devset-make.conf</filename>.</para>
+      <para>Ao contrário dos conjuntos, todos os arquivos encontrados serão anexados, <emphasis>naquela ordem</emphasis>, em um <filename>make.conf</filename> dentro das jails de compilação. Assim, é possível ter variáveis gerais, destinadas a afetar todas as compilações <filename>/usr/local/etc/poudriere.d/make.conf</filename>. Variáveis especiais, destinadas a afetar apenas determinadas jails ou conjuntos, podem ser setadas em arquivos especiais como <filename>make.conf</filename>, assim como <filename>/usr/local/etc/poudriere.d/113Ramd64-development-devset-make.conf</filename>.</para>
 
       <example xml:id="testing-poudriere-sets-perl">
 	<title>Usando <filename>make.conf</filename> para Alterar o <application>Perl</application> Padrão</title>
@@ -13442,7 +13538,7 @@ TODO
 
   <para>Se o port não é mantido e você o utiliza ativamente, por favor, considere se voluntariar como o seu mantenedor. O FreeBSD tem mais de 4000 ports sem mantenedores, e esta é uma área onde mais voluntários são sempre necessários. (Para uma descrição detalhada das responsabilidades dos mantenedores, consulte a seção no <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/developers-handbook/policies.html#POLICIES-MAINTAINER">Developer's Handbook</link>.)</para>
 
-  <para>Para enviar o diff, use o <link xlink:href="https://bugs.freebsd.org/submit/">formulário de envio de bugs</link> (no produto <literal>Ports &amp; Packages</literal>, e no componente <literal>Individual Port(s)</literal>). Se o remetente também estiver mantendo o port, certifique-se de colocar <literal>[MAINTAINER]</literal> no início da linha de <literal>Summary</literal>. Sempre inclua a categoria com o nome do port, seguido por dois pontos e uma breve descrição do problema. Por exemplo: <literal><replaceable>category/portname</replaceable>: <replaceable>add FOO option</replaceable></literal>, ou se você for o mantenedor do port, <literal>[MAINTAINER] <replaceable>category/portname</replaceable>: <replaceable>Update to XY</replaceable></literal>. Por favor mencione quaisquer arquivos adicionados ou deletados na mensagem, pois eles devem ser explicitamente especificados no <citerefentry><refentrytitle>svn</refentrytitle><manvolnum>1</manvolnum></citerefentry> ao fazer 
 o commit. Não comprima ou codifique o diff.</para>
+  <para>Para enviar o diff, use o <link xlink:href="https://bugs.freebsd.org/submit/">formulário de envio de bugs</link> (no produto <literal>Ports &amp; Packages</literal>, e no componente <literal>Individual Port(s)</literal>). Sempre inclua a categoria com o nome do port, seguido por dois pontos e uma breve descrição do problema. Exemplos: <literal><replaceable>category/portname</replaceable>: <replaceable>add FOO option</replaceable></literal>; <literal><replaceable>category/portname</replaceable>: <replaceable>Update to XY</replaceable></literal>. Por favor mencione quaisquer arquivos adicionados ou deletados na mensagem, pois eles devem ser explicitamente especificados no <citerefentry><refentrytitle>svn</refentrytitle><manvolnum>1</manvolnum></citerefentry> ao fazer o commit. Não comprima ou codifique o diff.</para>
 
   <para>Antes de enviar o bug, revise a seção <link xlink:href="@@URL_RELPREFIX@@/doc/pt_BR.ISO8859-1/articles/problem-reports/pr-writing.html">Escrevendo um relatório de problema</link> no artigo Relatórios de Problemas. Ele contém muito mais informações sobre como escrever relatórios úteis de problemas.</para>
 
@@ -13734,7 +13830,7 @@ TODO
 
 	  <para>Em uma especificação de range, <literal>*</literal> (asterisco) indica o menor número de versão. Em particular, <literal>2.*</literal> é menor do que <literal>2.a</literal>. Portanto, um asterisco pode ser usado em um intervalo para corresponder todas as possíveis versões <literal>alfa</literal>, <literal>beta</literal> e <literal>RC</literal>. Por exemplo,<literal>&lt;ge&gt;2.*&lt;/ge&gt;&lt;lt&gt;3.*&lt;/lt&gt;</literal> irá seletivamente corresponder a cada versão <literal>2.x</literal> enquanto <literal>&lt;ge&gt;2.0&lt;/ge&gt;&lt;lt&gt;3.0&lt;/lt&gt;</literal> não irá, pois a versão <literal>2.r3</literal> será ignorada e a versão <literal>3.b</literal> estará dentro do range.</para>
 
-	  <para>O exemplo acima especifica que as versões afetadas vão de <literal>1.6</literal> até <literal>1.9</literal> inclusive, versões <literal>2.x</literal> antes de <literal>2.4_1</literal> e versão <literal>3.0b1</literal>.</para>
+	  <para>O exemplo acima especifica que as versões afetadas vão de <literal>1.6</literal> até menor que <literal>1.9</literal>, versões <literal>2.x</literal> antes de <literal>2.4_1</literal> e versão <literal>3.0b1</literal>.</para>
 	</callout>
 
 	<callout arearefs="co-vx-nm2">
@@ -14759,7 +14855,7 @@ post-install-DOCS-on:
 
 post-install-EXAMPLES-on:
       ${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
-      cd ${WRKSRC}/ex &amp;&amp; ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR}</programlisting>
+      cd ${WRKSRC}/ex &amp;&amp; ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR}</programlisting>
     </example>
   </sect1>
 
@@ -15046,6 +15142,86 @@ post-install-X11-off:
     <para>Utiliza <package role="port">devel/bison</package> por padrão, sem argumentos ou com o argumento <literal>build</literal>, isso implica que <command>bison</command> seja uma dependência de build-time, <literal>run</literal> implica como dependência de run-time e <literal>both</literal> implica em dependências build-time e run-time.</para>
   </sect1>
 
+  <sect1 xml:id="uses-cabal">
+    <title><literal>cabal</literal></title>
+
+    <important>
+      <para>Não devem ser criados Ports de bibliotecas Haskell, veja <xref linkend="haskell-libs"/> para maiores informações.</para>
+    </important>
+
+    <para>Argumentos possíveis: (none), <literal>hpack</literal></para>
+
+    <para>Define valores e targets padrões usados para compilar software <application>Haskell</application> usando o Cabal. Uma dependência de compilação no port do compilador Haskell (GHC) é adicionada. Se o argumento <literal>hpack</literal> for fornecido, uma dependência de compilação do <package role="port">devel/hs-hpack</package> será adicionada e o <command>hpack</command> será chamado na etapa de configuração para gerar o arquivo .cabal.</para>
+
+    <para>O framework fornece as seguintes variáveis:</para>
+
+    <variablelist>
+      <varlistentry>
+	<term><varname>USE_CABAL</varname></term>
+
+	<listitem>
+	  <para>Se o software usar dependências Haskell, liste-as nesta variável. Cada item deve estar presente no Hackage e ser listado no formato <literal>packagename-<replaceable>0.1.2</replaceable></literal>. As dependências podem ter revisões, especificadas após o símbolo <literal>_</literal>. A geração automática de lista de dependências é suportada, consulte <xref linkend="using-cabal"/>.</para>
+	</listitem>
+      </varlistentry>
+
+      <varlistentry>
+	<term><varname>CABAL_FLAGS</varname></term>
+
+	<listitem>
+	  <para>Lista de flags a serem passadas para o <command>cabal-install</command> durante o estágio de configuração e compilação. As flags são passadas sem alterações (verbatim).</para>
+	</listitem>
+      </varlistentry>
+
+      <varlistentry>
+	<term><varname>EXECUTABLES</varname></term>
+
+	<listitem>
+	  <para>Lista de arquivos executáveis instalados pelo port. Valor padrão: <varname>${PORTNAME}</varname>. Os itens desta lista são adicionados automaticamente ao pkg-plist.</para>
+	</listitem>
+      </varlistentry>
+
+      <varlistentry>
+	<term><varname>SKIP_CABAL_PLIST</varname></term>
+
+	<listitem>
+	  <para>Se definido, não adicione itens <varname>${EXECUTABLES}</varname> ao pkg-plist.</para>
+	</listitem>
+      </varlistentry>
+
+      <varlistentry>
+	<term><varname>opt_USE_CABAL</varname></term>
+
+	<listitem>
+	  <para>Adiciona itens ao <varname>${USE_CABAL}</varname>, dependendo da opção <literal>opt</literal>.</para>
+	</listitem>
+      </varlistentry>
+
+      <varlistentry>
+	<term><varname>opt_EXECUTABLES</varname></term>
+
+	<listitem>
+	  <para>Adiciona itens ao <varname>${EXECUTABLES}</varname>, dependendo da opção <literal>opt</literal>.</para>
+	</listitem>
+      </varlistentry>
+
+      <varlistentry>
+	<term><varname>opt_CABAL_FLAGS</varname></term>
+
+	<listitem>
+	  <para>Se a opção <option>opt</option> estiver ativada, acrescente o valor a <varname>${CABAL_FLAGS}</varname>. Caso contrário, anexe <literal>-value</literal> para desativar a flag.</para>
+	</listitem>
+      </varlistentry>
+
+      <varlistentry>
+	<term><varname>FOO_DATADIR_VARS</varname></term>
+
+	<listitem>
+	  <para>Para um executável chamado <literal>FOO</literal>, liste os pacotes Haskell, cujos arquivos de dados devem estar acessíveis pelo executável.</para>
+	</listitem>
+      </varlistentry>
+    </variablelist>
+  </sect1>
+
   <sect1 xml:id="uses-cargo">
     <title><literal>cargo</literal></title>
 
@@ -15231,7 +15407,7 @@ post-install-X11-off:
 
     <para>Argumentos possíveis: (none)</para>
 
-    <para>Altera alguns comportamentos padrão dos sistemas de compilação para permitir instalar como um usuário normal. Veja <link xlink:href="http://fakeroot.alioth.debian.org/"/>; para mais informações sobre <command>fakeroot</command>.</para>
+    <para>Altera alguns comportamentos padrão dos sistemas de compilação para permitir instalar como um usuário normal. Veja <link xlink:href="https://wiki.debian.org/FakeRoot"/>; para mais informações sobre <command>fakeroot</command>.</para>
   </sect1>
 
   <sect1 xml:id="uses-fam">
@@ -18371,6 +18547,125 @@ is spelled &amp;, < is &lt; and > is &gt;.
 	    <entry>10 de março de 2020</entry>
 	    <entry>13.0-CURRENT after updating llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to 10.0.0-rc3 c290cb61fdc.</entry>
 	  </row>
+
+	  <row>
+	    <entry>1300085</entry>
+	    <entry><revnumber>359261</revnumber></entry>
+	    <entry>23 de março de 2020</entry>
+	    <entry>13.0-CURRENT after the import of the kyua test framework.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1300086</entry>
+	    <entry><revnumber>359347</revnumber></entry>
+	    <entry>26 de março de 2020</entry>
+	    <entry>13.0-CURRENT after switching powerpc and powerpcspe to the lld linker.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1300087</entry>
+	    <entry><revnumber>359374</revnumber></entry>
+	    <entry>27 de março de 2020</entry>
+	    <entry>13.0-CURRENT after refactoring the driver and consumer interfaces for in-kernel cryptography.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1300088</entry>
+	    <entry><revnumber>359530</revnumber></entry>
+	    <entry>1 de abril de 2020</entry>
+	    <entry>13.0-CURRENT after removing support for procfs process debugging.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1300089</entry>
+	    <entry><revnumber>359727</revnumber></entry>
+	    <entry>8 de abril de 2020</entry>
+	    <entry>13.0-CURRENT after cloning the RCU interface into a sleepable and a non-sleepable part in the LinuxKPI.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1300090</entry>
+	    <entry><revnumber>359747</revnumber></entry>
+	    <entry>9 de abril de 2020</entry>
+	    <entry>13.0-CURRENT after removing the old NFS lock device driver that uses Giant.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1300091</entry>
+	    <entry><revnumber>359839</revnumber></entry>
+	    <entry>12 de abril de 2020</entry>
+	    <entry>13.0-CURRENT after implementing a close_range(2) syscall.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1300092</entry>
+	    <entry><revnumber>359920</revnumber></entry>
+	    <entry>14 de abril de 2020</entry>
+	    <entry>13.0-CURRENT after reworking unmapped mbufs in KTLS to carry ext_pgs in the mbuf itself.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1300093</entry>
+	    <entry><revnumber>360418</revnumber></entry>
+	    <entry>27 de abril de 2020</entry>
+	    <entry>13.0-CURRENT after adding support for kernel TLS receive offload.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1300094</entry>
+	    <entry><revnumber>360796</revnumber></entry>
+	    <entry>7 de maio de 2020</entry>
+	    <entry>13.0-CURRENT after linuxkpi changes.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1300095</entry>
+	    <entry><revnumber>361275</revnumber></entry>
+	    <entry>20 de maio de 2020</entry>
+	    <entry>13.0-CURRENT after adding HyperV socket support for FreeBSD guests.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1300096</entry>
+	    <entry><revnumber>361410</revnumber></entry>
+	    <entry>23 de maio de 2020</entry>
+	    <entry>13.0-CURRENT after updating llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to 10.0.1 rc1 f79cd71e145.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1300097</entry>
+	    <entry><revnumber>361724</revnumber></entry>
+	    <entry>2 de junho de 2020</entry>
+	    <entry>13.0-CURRENT after implementing __is_constexpr() function macro in the LinuxKPI.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1300098</entry>
+	    <entry><revnumber>362159</revnumber></entry>
+	    <entry>14 de junho de 2020</entry>
+	    <entry>13.0-CURRENT after changing the <literal>export_args ex_flags</literal> field so that is 64bits.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1300099</entry>
+	    <entry><revnumber>362453</revnumber></entry>
+	    <entry>20 de junho de 2020</entry>
+	    <entry>13.0-CURRENT after making liblzma use libmd implementation of SHA256.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1300100</entry>
+	    <entry><revnumber>362640</revnumber></entry>
+	    <entry>26 de junho de 2020</entry>
+	    <entry>13.0-CURRENT after changing the internal API between the NFS kernel modules.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1300101</entry>
+	    <entry><revnumber>363077</revnumber></entry>
+	    <entry>10 de julho de 2020</entry>
+	    <entry>13.0-CURRENT after implementing the array_size() function in the LinuxKPI.</entry>
+	  </row>
 	</tbody>
       </tgroup>
     </table>
@@ -19250,6 +19545,54 @@ is spelled &amp;, < is &lt; and > is &gt;.
 	    <entry>12-STABLE after recent LinuxKPI changes.</entry>
 	  </row>
 
+	  <row>
+	    <entry>1201513</entry>
+	    <entry><revnumber>359957</revnumber></entry>
+	    <entry>15 de abril de 2020</entry>
+	    <entry>12-STABLE after cloning the RCU interface into a sleepable and a non-sleepable part in the LinuxKPI.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1201514</entry>
+	    <entry><revnumber>360525</revnumber></entry>
+	    <entry>1 de maio de 2020</entry>
+	    <entry>12-STABLE after implementing full <citerefentry><refentrytitle>bus_dma</refentrytitle><manvolnum>9</manvolnum></citerefentry> support in the LinuxKPI and pulling in all dependencies.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1201515</entry>
+	    <entry><revnumber>360545</revnumber></entry>
+	    <entry>1 de maio de 2020</entry>
+	    <entry>12-STABLE after updating llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to 10.0.0 release.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1201516</entry>
+	    <entry><revnumber>360620</revnumber></entry>
+	    <entry>4 de maio de 2020</entry>
+	    <entry>12-STABLE after moving <literal>id_mapped</literal> to end of <literal>bus_dma_impl</literal> structure to preserve KPI.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1201517</entry>
+	    <entry><revnumber>361350</revnumber></entry>
+	    <entry>21 de maio de 2020</entry>
+	    <entry>12-STABLE after renaming <literal>vm.max_wired</literal> to <literal>vm.max_user_wired</literal> and changing its type.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1201518</entry>
+	    <entry><revnumber>362319</revnumber></entry>
+	    <entry>18 de junho de 2020</entry>
+	    <entry>12-STABLE after implementing __is_constexpr() function macro in the LinuxKPI.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1201519</entry>
+	    <entry><revnumber>362916</revnumber></entry>
+	    <entry>4 de julho de 2020</entry>
+	    <entry>12-STABLE after making liblzma use libmd implementation of SHA256.</entry>
+	  </row>
 	</tbody>
       </tgroup>
     </table>
@@ -20535,6 +20878,62 @@ is spelled &amp;, < is &lt; and > is &gt;.
 	    <entry>6 de fevereiro de 2020</entry>
 	    <entry>11-STABLE after recent LinuxKPI changes.</entry>
 	  </row>
+
+	  <row>
+	    <entry>1103509</entry>
+	    <entry><revnumber>359958</revnumber></entry>
+	    <entry>15 de abril de 2020</entry>
+	    <entry>11-STABLE after moving <literal>id_mapped</literal> to end of <literal>bus_dma_impl</literal> structure to preserve KPI.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1103510</entry>
+	    <entry><revnumber>360658</revnumber></entry>
+	    <entry>5 de maio de 2020</entry>
+	    <entry>11-STABLE after updating llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to 9.0.0 final release r372316.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1103511</entry>
+	    <entry><revnumber>360784</revnumber></entry>
+	    <entry>7 de maio de 2020</entry>
+	    <entry>11-STABLE after updating llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to 10.0.0 release.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1104000</entry>
+	    <entry><revnumber>360804</revnumber></entry>
+	    <entry>8 de maio de 2020</entry>
+	    <entry><literal>releng/11.4</literal> branched from <literal>stable/11</literal>.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1104001</entry>
+	    <entry><revnumber>360822</revnumber></entry>
+	    <entry>8 de maio de 2020</entry>
+	    <entry>11.4-BETA1 after updating llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to 10.0.0 release.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1104500</entry>
+	    <entry><revnumber>360805</revnumber></entry>
+	    <entry>8 de maio de 2020</entry>
+	    <entry>11-STABLE after releng/11.4 branched.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1104501</entry>
+	    <entry><revnumber>362320</revnumber></entry>
+	    <entry>18 de junho de 2020</entry>
+	    <entry>11-STABLE after implementing __is_constexpr() function macro in the LinuxKPI.</entry>
+	  </row>
+
+	  <row>
+	    <entry>1104502</entry>
+	    <entry><revnumber>362919</revnumber></entry>
+	    <entry>4 de julho de 2020</entry>
+	    <entry>11-STABLE after making liblzma use libmd implementation of SHA256.</entry>
+	  </row>
 	</tbody>
       </tgroup>
     </table>
@@ -20585,7 +20984,7 @@ is spelled &amp;, < is &lt; and > is &gt;.
 	    <entry>1000003</entry>
 	    <entry><revnumber>228571</revnumber></entry>
 	    <entry>16 de dezembro de 2011</entry>
-	    <entry>10-CURRENT after major changes to <citerefentry><refentrytitle>carp</refentrytitle><manvolnum>4</manvolnum></citerefentry>, changing size of struct in_aliasreq, struct in6_aliasreq (rev <revnumber>228571</revnumber>) and straitening arguments check of SIOCAIFADDR (rev <revnumber>228574</revnumber>).</entry>
+	    <entry>10-CURRENT after major changes to <citerefentry><refentrytitle>carp</refentrytitle><manvolnum>4</manvolnum></citerefentry>, changing size of struct in_aliasreq, struct in6_aliasreq (rev <revnumber>228571</revnumber>) and straitening arguments check of SIOCAIFADDR (rev <revnumber>228574</revnumber>).</entry>
 	  </row>
 
 	  <row>
@@ -21082,7 +21481,7 @@ is spelled &amp;, < is &lt; and > is &gt;.
 	    <entry>1000712</entry>
 	    <entry><revnumber>269400</revnumber></entry>
 	    <entry>1 de agosto de 2014</entry>
-	    <entry>10-STABLE after <citerefentry><refentrytitle>nfsd</refentrytitle><manvolnum>8</manvolnum></citerefentry> 4.1 merge (rev <revnumber>269398</revnumber>).</entry>
+	    <entry>10-STABLE after <citerefentry><refentrytitle>nfsd</refentrytitle><manvolnum>8</manvolnum></citerefentry> 4.1 merge (rev <revnumber>269398</revnumber>).</entry>
 	  </row>
 
 	  <row>

Modified: head/pt_BR.ISO8859-1/books/porters-handbook/pt_BR.po
==============================================================================
--- head/pt_BR.ISO8859-1/books/porters-handbook/pt_BR.po	Wed Aug  5 22:09:20 2020	(r54409)
+++ head/pt_BR.ISO8859-1/books/porters-handbook/pt_BR.po	Wed Aug  5 22:13:01 2020	(r54410)
@@ -4,8 +4,8 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2020-03-14 17:21-0300\n"
-"PO-Revision-Date: 2020-03-14 20:09+0000\n"
+"POT-Creation-Date: 2020-07-26 12:34-0300\n"
+"PO-Revision-Date: 2020-07-26 15:33+0000\n"
 "Last-Translator: Danilo G. Baio <dbaio@FreeBSD.org>\n"
 "Language-Team: Portuguese (Brazil) <https://translate-dev.freebsd.org/"
 "projects/freebsd-doc/boooks_porters-handbook/pt_BR/>\n"
@@ -14,7 +14,7 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Weblate 3.11.2\n"
+"X-Generator: Weblate 4.1.1\n"
 
 #. Put one translator per line, in the form NAME <EMAIL>, YEAR1, YEAR2
 msgctxt "_"
@@ -179,8 +179,8 @@ msgstr ""
 #. (itstool) path: chapter/title
 #. (itstool) path: sect2/title
 #. (itstool) path: sect1/title
-#: book.translate.xml:146 book.translate.xml:11198 book.translate.xml:15071
-#: book.translate.xml:15561 book.translate.xml:20123
+#: book.translate.xml:146 book.translate.xml:11340 book.translate.xml:15213
+#: book.translate.xml:15703 book.translate.xml:20262
 msgid "Introduction"
 msgstr "Introdução"
 
@@ -741,7 +741,7 @@ msgstr ""
 
 #. (itstool) path: sect1/title
 #. (itstool) path: chapter/title
-#: book.translate.xml:438 book.translate.xml:18357
+#: book.translate.xml:438 book.translate.xml:18483
 msgid "Testing the Port"
 msgstr "Testando o Port"
 
@@ -773,8 +773,8 @@ msgstr ""
 
 # auto translated by TM merge from project: RPM, version: master, DocId: rpm
 #. (itstool) path: para/buildtarget
-#: book.translate.xml:457 book.translate.xml:743 book.translate.xml:6675
-#: book.translate.xml:6728 book.translate.xml:8952 book.translate.xml:9901
+#: book.translate.xml:457 book.translate.xml:745 book.translate.xml:6677
+#: book.translate.xml:6730 book.translate.xml:8954 book.translate.xml:9903
 msgid "install"
 msgstr "install"
 
@@ -802,8 +802,8 @@ msgstr ""
 ">. Isso verifica se o script de desinstalação funciona corretamente."
 
 #. (itstool) path: para/buildtarget
-#: book.translate.xml:469 book.translate.xml:665 book.translate.xml:666
-#: book.translate.xml:669 book.translate.xml:6817
+#: book.translate.xml:469 book.translate.xml:667 book.translate.xml:668
+#: book.translate.xml:671 book.translate.xml:6819
 msgid "fetch"
 msgstr "fetch"
 
@@ -952,17 +952,15 @@ msgstr ""
 #. (itstool) path: sect1/para
 #: book.translate.xml:558
 msgid ""
-"Next, either create a <citerefentry><refentrytitle>patch</"
-"refentrytitle><manvolnum>1</manvolnum></citerefentry>, or a "
-"<citerefentry><refentrytitle>shar</refentrytitle><manvolnum>1</manvolnum></"
-"citerefentry> file. Assuming the port is called <literal>oneko</literal> and "
-"is in the <literal>games</literal> category."
+"Next, create a <citerefentry><refentrytitle>patch</"
+"refentrytitle><manvolnum>1</manvolnum></citerefentry>, file. Assuming the "
+"port is called <literal>oneko</literal> and is in the <literal>games</"
+"literal> category."
 msgstr ""
 "Em seguida, crie um <citerefentry><refentrytitle>patch</"
-"refentrytitle><manvolnum>1</manvolnum></citerefentry> ou um arquivo "
-"<citerefentry><refentrytitle>shar</refentrytitle><manvolnum>1</manvolnum></"
-"citerefentry>. Assumindo que o port é chamado <literal>oneko</literal> e "
-"está na categoria <literal>games</literal>."
+"refentrytitle><manvolnum>1</manvolnum></citerefentry>. Assumindo que o port "
+"é chamado <literal>oneko</literal> e está na categoria <literal>games</"
+"literal>."
 
 #. (itstool) path: example/title
 #: book.translate.xml:563
@@ -1005,54 +1003,27 @@ msgstr ""
 "trabalho da árvore de ports, por favor, gere o <filename>.diff</filename> da "
 "base da sua árvore de ports."
 
-#. (itstool) path: example/title
-#: book.translate.xml:585
-msgid "Creating a <filename>.shar</filename> for a New Port"
-msgstr "Criando um <filename>.shar</filename> para um Novo Port"
-
-#. (itstool) path: example/para
-#: book.translate.xml:588
-msgid ""
-"<command>cd</command> to the directory above where the port directory is "
-"located, and use <command>shar</command> to create the archive:"
-msgstr ""
-"Utilize o <command>cd</command> e vá para o diretório acima de onde o "
-"diretório do port está localizado e use <command>shar</command> para criar o "
-"arquivo:"
-
-#. (itstool) path: example/screen
-#: book.translate.xml:592
-#, no-wrap
-msgid ""
-"<prompt>%</prompt> <userinput>cd ..</userinput>\n"
-"<prompt>%</prompt> <userinput>shar `find <replaceable>oneko</replaceable>` &gt; <replaceable>oneko</replaceable>.shar</userinput>"
-msgstr ""
-"<prompt>%</prompt> <userinput>cd ..</userinput>\n"
-"<prompt>%</prompt> <userinput>shar `find <replaceable>oneko</replaceable>` &gt; <replaceable>oneko</replaceable>.shar</userinput>"
-
 #. (itstool) path: sect1/para
-#: book.translate.xml:596
+#: book.translate.xml:584
 msgid ""
-"Submit one of <filename>oneko.shar</filename> or <filename>oneko.diff</"
-"filename> with the <link xlink:href=\"https://bugs.freebsd.org/submit/\">bug "
-"submission form</link>. Use product <quote>Ports &amp; Packages</quote>, "
-"component <quote>Individual Port(s)</quote>, and follow the guidelines shown "
-"there. Add a short description of the program to the Description field of "
-"the PR (perhaps a short version of <varname>COMMENT</varname>), and remember "
-"to add <filename>oneko.shar</filename> or <filename>oneko.diff</filename> as "
-"an attachment."
+"Submit <filename>oneko.diff</filename> with the <link xlink:href=\"https://"
+"bugs.freebsd.org/submit/\">bug submission form</link>. Use product "
+"<quote>Ports &amp; Packages</quote>, component <quote>Individual Port(s)</"
+"quote>, and follow the guidelines shown there. Add a short description of "

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202008052213.075MD2ot084896>