[FUG-BR] Atualizando ports com várias dependências

Renato Botelho rbgarga em gmail.com
Quinta Março 1 14:35:17 BRT 2012


2012/3/1 Otacílio <otacilio.neto at bsd.com.br>:
> On 01/03/2012 14:18, Cleyton Agapito wrote:
>> Em 1 de março de 2012 14:08, Otacílio<otacilio.neto at bsd.com.br>  escreveu:
>>> On 01/03/2012 14:03, Marcel Bonnet wrote:
>>>> (desculpe o top posting)
>>>> tem um jeito tosco, mas funcionou no meu note:
>>>> portupgrade -nfr perl>    lista
>>>> como preferir salve a parte da lista q nao quer atualizar e use:
>>>> portupgrade -x port
>>>> confere se a opt eh x (confundo com portmaster)
>>>> mas a idea eh entrar -x port1 -x port2 ...
>>>> ele fara tudo menos os ports indicados.
>>>> abcs,
>>>> ===============================================
>>>> Desculpe-me se esta msg foi curta. Escrevi de um dispositivo móvel: lento
>>>> p/ teclar e posso dispor de pouco tempo agora.
>>>> Marcel Bonnet
>>>>
>>>> Em 01/03/2012 13:41, "Otacílio"<otacilio.neto at bsd.com.br>escreveu:
>>>>
>>>> Olá pessoal
>>>>
>>>> Estou eu atualizando o meu sistema. Seguindo o UPDATING do perl eu tenho
>>>> que reinstalar tudo o que depende do perl
>>>>
>>>> portupgrade -fr perl
>>>>
>>>> Mas aí é o problema, são mais de 600 ports e esta máquina é o meu
>>>> notebook. Eu não posso deixar essa máquina parada até terminar de
>>>> compilar a tralha toda, e existem uns ports bem pesados nessa lista,
>>>> como java, libreoffice, firefox, thunderbird, eclipse, etc etc.
>>>>
>>>> Tem alguma forma do portupgrade guardar o que já foi feito para que eu
>>>> possa parar a atualização e continuar depois?
>>>>
>>>> Se eu mandar atualizar vários ports de uma vez só, em um único comando o
>>>> portupgrade é inteligente o suficiente para descobrir quais deles são
>>>> dependentes uns dos outros para atualizar na ordem certa?
>>>>
>>>>
>>>> Obrigado!
>>>
>>> Eu fiz isso em outra ocasião, mas tinha a dúvida se ele não atualizava
>>> cada port depois do -x ou apenas o último depois do último -x.
>>>
>>> Fica ainda a outra pergunta, como faço para "pausar" a atualização?
>>>
>>
>> Olá Otacílio,
>>
>> Olha, pausar acho que não dá não, já andei vendo gente pedindo essa
>> funcionalidade mas nada foi feito até hoje.
>>
>> Eu tenho parado no tapa mesmo (^C), só que tem que cuidar pra não
>> fazer isso na hora em que ele está mexendo no banco de dados, se
>> corromper é um saco, tem que apagar o velho e mandar fazer outro. A
>> título de informação vc pode ligar o log no
>> /usr/local/etc/pkgtools.conf (a linha que tem PORTUPGRADE_ARGS = e a
>> -L /var/tmp/portupgrade-%s::%s.log), na prática não tem muita
>> utilidade mas vc já fica esperto no que pode dar problema por estar
>> desatualizado.
>>
>> Até hoje tive poucos problemas, o chato é que até terminar tudo vc
>> corre o risco de algo parar de funcionar, normalmente uma recompilada
>> na mão já resolve, nada grave, mas é o risco é do tamanho do port
>> (tipo, os grandes são mais complicados).
>>
>> Agora mesmo estou num notebook todo frankestein pelo mesmo motivo, se
>> encontrar alguma forma melhor avise ;-)
>>
>> []'s
>
>
> Eu estava pensando que se existir uma forma de ligar um log de cada port
> que foi atualizado exatamente depois de ser atualizado, não no fim de
> tudo, dava para fazer um script que removesse esse port da lista de
> dependências quando fosse continuar a atualização de onde parou. Alguém
> sabe se é possível ligar um log para cada port atualizado assim que isso
> é feito?

O portmaster faz isso. Se você executar

portmaster -fr perl

ele vai marcar, colocando um arquivo dentro de /var/db/pkg/PORTNAME,
todos os que já foram recompilados. Se parar na metade e quiser
continuar, basta rodar:

portmaster -frR perl

-- 
Renato Botelho


Mais detalhes sobre a lista de discussão freebsd