Difference between pages "Adding an Ebuild to the Wiki" and "Install/pt-br/Portage"

(Difference between pages)
 
(Introduzindo o Portage)
 
Line 1: Line 1:
This page describes how to add an official entry for an ebuild to the Funtoo Linux wiki.
+
=== Introduzindo o Portage ===
  
== Goal ==
+
Portage, o gerenciador de pacotes do Funtoo Linux possui um comando chamado <code>emerge</code> que é utilizado para construir e instalar pacotes a partir do código fonte. ele também cuida para instalar todas as dependências de pacotes. Você invoca o emerge assim:
  
Our goal for ebuild wiki pages is ambitious -- the wiki should have complete and excellent documentation for using every ebuild in Portage. If the ebuild exists in your Funtoo Linux Portage tree, and there is no corresponding ebuild page for it, you're encouraged to use these instructions to add a page to the wiki for it.
+
<console>
 +
(chroot) # ##i##emerge packagename
 +
</console>
  
== The Package Namespace ==
+
Quando você instala um pacote especificando seu nome na linha de comando, o Portage grava seu nome no arquivo <code>/var/lib/portage/world</code>. Ele faz assim por que ele assume que, desde que você tem instalado o pacote por nome, você quer considerá-lo parte do seu sistema e quer manter o pacote atualizado no futuro. Isso é recurso útil, desde quando pacotes estão sendo adicionados a configuração <code>world</code>, podemos atualizar nosso sistema inteiro ao digitar:
  
This wiki has a special MediaWiki [http://www.mediawiki.org/wiki/Help:Namespaces namespace] called <code>Package</code>. Pages in this namespace have a URL that is prefixed with <code>Package:</code>, such as this wiki page: [[Package:Accelerated_AMD_Video_Drivers]], which is also a good example of a wiki page for an ebuild.
+
<console>
 +
(chroot) # ##i##emerge --sync
 +
(chroot) # ##i##emerge -auDN @world
 +
</console>
 +
 
 +
Esse é o modo "oficial" de atualizar o seu sistema Funtoo Linux. Acima, nós atualizamos nossa arvore Portage (Portage tree) utilizando o git para obter a ultima versão dos ebuilds (scripts), e depois executar um comando emerge para atualizar o conjunto de pacotes <code>world</code>. As opções especificadas diz ao <code>emerge</code> para:
 +
 
 +
* '''<code>a</code>''' - Nos mostra o que será emergido (emerged), e nos '''perguntará''' se queremos prosseguir.
 +
* '''<code>u</code>''' - ''Atualiza'' os pacotes que especificarmos -- não emerja-os novamente se eles já estão emergidos.
 +
* '''<code>D</code>''' - Considere a arvore de dependência inteira de pacotes quando procurar por atualizações. Em outras palavras, faça uma atualização '''profunda'''.
 +
* '''<code>N</code>''' - Atualizar quaisquer pacotes que tenha alterado ('''novas''') configurações de USO.
 +
 
 +
Você deve também considerar passar <code>--with-bdeps=y</code> quando emergir @world, ao menos de vez em quando. Isso atualizará as build dependencies também.
 +
 
 +
Of course, sometimes we want to install a package but not add it to the <code>world</code> file. This is often done because you only want the package installed temporarily or because you know the package in question is a dependnecy of another package. If this behavior is desired, you call emerge like this:
 +
 
 +
<console>
 +
(chroot) # ##i##emerge -1 packagename
 +
</console>
 +
 
 +
Advanced users may be interested in the [[Emerge]] wiki page.
 +
 
 +
==== Updating World ====
 +
 
 +
Now is actually a very good time to update the entire system and it can be a good idea to do so prior to first boot.
 +
 
 +
<console>
 +
(chroot) # ##i##emerge --sync
 +
(chroot) # ##i##emerge -auDN @world
 +
</console>
 +
 
 +
{{fancyimportant|1=
 +
Make sure you read any post emerge messages and follow their instructions. This is especially true if you have upgraded perl or python.}}

Revision as of 14:52, February 7, 2015

Introduzindo o Portage

Portage, o gerenciador de pacotes do Funtoo Linux possui um comando chamado emerge que é utilizado para construir e instalar pacotes a partir do código fonte. ele também cuida para instalar todas as dependências de pacotes. Você invoca o emerge assim:

(chroot) # emerge packagename

Quando você instala um pacote especificando seu nome na linha de comando, o Portage grava seu nome no arquivo /var/lib/portage/world. Ele faz assim por que ele assume que, desde que você tem instalado o pacote por nome, você quer considerá-lo parte do seu sistema e quer manter o pacote atualizado no futuro. Isso é recurso útil, desde quando pacotes estão sendo adicionados a configuração world, podemos atualizar nosso sistema inteiro ao digitar:

(chroot) # emerge --sync
(chroot) # emerge -auDN @world

Esse é o modo "oficial" de atualizar o seu sistema Funtoo Linux. Acima, nós atualizamos nossa arvore Portage (Portage tree) utilizando o git para obter a ultima versão dos ebuilds (scripts), e depois executar um comando emerge para atualizar o conjunto de pacotes world. As opções especificadas diz ao emerge para:

  • a - Nos mostra o que será emergido (emerged), e nos perguntará se queremos prosseguir.
  • u - Atualiza os pacotes que especificarmos -- não emerja-os novamente se eles já estão emergidos.
  • D - Considere a arvore de dependência inteira de pacotes quando procurar por atualizações. Em outras palavras, faça uma atualização profunda.
  • N - Atualizar quaisquer pacotes que tenha alterado (novas) configurações de USO.

Você deve também considerar passar --with-bdeps=y quando emergir @world, ao menos de vez em quando. Isso atualizará as build dependencies também.

Of course, sometimes we want to install a package but not add it to the world file. This is often done because you only want the package installed temporarily or because you know the package in question is a dependnecy of another package. If this behavior is desired, you call emerge like this:

(chroot) # emerge -1 packagename

Advanced users may be interested in the Emerge wiki page.

Updating World

Now is actually a very good time to update the entire system and it can be a good idea to do so prior to first boot.

(chroot) # emerge --sync
(chroot) # emerge -auDN @world
Important

Make sure you read any post emerge messages and follow their instructions. This is especially true if you have upgraded perl or python.