Difference between pages "Emerge/pt-br" and "Install/pt-br/Portage"

From Funtoo
(Difference between pages)
Jump to navigation Jump to search
 
 
Line 1: Line 1:
== Principiando com o emerge ==
=== Introduzindo o Portage ===
Emerge é o front-end para o gerenciador de Portage do funtoo. Com o emerge é fácil instalar, atualizar ou remover pacotes.
 
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:


=== Atualizar a Base de Dados de Pacote ===
'''Sincronize base de dados de pacote local. Isso atualizará sua arvore Portage local com a ultima versão do Funtoo ebuilds.'''
<console>
<console>
###i## emerge --sync
(chroot) # ##i##emerge packagename
</console>
</console>


=== Buscar pacotes ===
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:
'''Busca pacotes por nome.'''
<console>
###i## emerge -s firefox
###i## emerge --search firefox
</console>


'''Busca pacotes pode descrição.'''
<console>
<console>
###i## emerge -S web browser
(chroot) # ##i##emerge --sync
###i## emerge --searchdesc web browser
(chroot) # ##i##emerge -auDN @world
</console>
</console>


=== Install packages ===
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:
'''Instalar pacote.'''
<console>
###i## emerge firefox
</console>


'''Instalar múltiplos pacotes.'''
* '''<code>a</code>''' - Nos mostra o que será emergido (emerged), e nos '''perguntará''' se queremos prosseguir.
<console>
* '''<code>u</code>''' - ''Atualiza'' os pacotes que especificarmos -- não emerja-os novamente se eles já estão emergidos.
###i## emerge firefox thunderbird
* '''<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'''.
</console>
* '''<code>N</code>''' - Atualizar quaisquer pacotes que tenha alterado ('''novas''') configurações de USO.


'''Instalar pacotes. Pedir por confirmação antes de realizar quaisquer alterações. Exibe saída em verbose.'''
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.
<console>
###i## emerge -av firefox
###i## emerge --ask firefox
</console>


=== Removes pacotes ===
Claro que, as vezes queremos instalar um pacote mas não adicioná-lo ao arquivo <code>world</code>. Com frequência isso é feito por que você só quer o pacote instalado temporariamente ou por que você sabe que pacote é uma dependência de outro pacote. Se esse comportamento for desejado, você invoca o emerge assim:
'''Remove pacote.'''
<console>
###i## emerge -C firefox
###i## emerge --unmerge firefox
</console>


'''Remove pacote. Pergunta por confirmação antes de realizar quaisquer alterações.'''
<console>
<console>
###i## emerge -aC firefox
(chroot) # ##i##emerge -1 packagename
</console>
</console>


'''Remove pacotes órfãos. Pergunta por confirmação antes de realizar quaisquer alterações.'''
Usuários avançados podem estar interessado na página wiki do [[Pt-br/Emerge|Emerge]].
<console>
###i## emerge -a --depclean
</console>


=== Update packages ===
==== Atualizando o World ====
'''Update all packages.'''
<console>
###i## emerge -uDN @world
</console>


'''Update all packages. Ask for confirmation before performing any changes. Show verbose output.'''
Agora é na verdade uma hora muito boa para atualizar o sistema por completo e pode ser uma boa ideia fazer tal antes do primeiro boot.
<console>
###i## emerge -uavDN @world
</console>


'''When upgrading to a new version of perl, it is necessary to also run <code>perl-cleaner</code> afterwards:'''
<console>
<console>
###i## emerge -auvDN @world
(chroot) # ##i##emerge --sync
###i## perl-cleaner --all
(chroot) # ##i##emerge -auDN @world
</console>
</console>


{{Note|This requirement of running <code>perl-cleaner</code> will eventually go away, once all perl-related ebuilds are updated to EAPI 5. EAPI 5 is a version of the Ebuild specification that supports smart updating of perl-related bits.}}
{{fancyimportant|1=
Certifique-se de que leu quaisquer mensagens de post do emerge e de seguir as instruções. É especialmente verdade se você atualizou o perl ou python.}}

Revision as of 17:02, 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.

Claro que, as vezes queremos instalar um pacote mas não adicioná-lo ao arquivo world. Com frequência isso é feito por que você só quer o pacote instalado temporariamente ou por que você sabe que pacote é uma dependência de outro pacote. Se esse comportamento for desejado, você invoca o emerge assim:

(chroot) # emerge -1 packagename

Usuários avançados podem estar interessado na página wiki do Emerge.

Atualizando o World

Agora é na verdade uma hora muito boa para atualizar o sistema por completo e pode ser uma boa ideia fazer tal antes do primeiro boot.

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

Certifique-se de que leu quaisquer mensagens de post do emerge e de seguir as instruções. É especialmente verdade se você atualizou o perl ou python.