[FUG-BR] Update ports

Márcio Luciano Donada mdonada em gmail.com
Quarta Novembro 19 14:53:59 BRST 2014


>
>
> Oi Márcio,
>
> Existem várias maneiras de fazer o que você precisa, vou tentar colocar
> umas ideias e você vê se te atende.
>
> Agora antes de começar vale a pena perguntar uma coisa, esse patch que
> você aplica no ejabberd, é algo muito específico? Não é algo que pode ser
> útil pra outras pessoas? Se for, você poderia tentar convencer o mantenedor
> a colocar o seu patch no port do ejabberd, e assim você se veria livre da
> obrigação de manter um pacote custom.
>
> Dito isso, vamos ao que interessa. A estrutura de compilação de um port
> não mudou, então o ‘make extract’ seguido de um patch custom pode ser feito
> normalmente. O parâmetro -w do portupgrade faz com que ele não execute um
> ‘make clean’ antes de começar a compilar, o que vai fazer com que seu patch
> continue lá antes de a compilação acontecer. Então teoricamente isso
> deveria continuar funcionando.
>
> O pkg fornece uma ferramenta que pode te ajudar a não ter o ejabberd
> atualizado por engano e seu patch perdido, é o lock/unlock, então se você
> fizer ‘pkg lock ejabberd’ ele nunca vai ser removido ou atualizado em
> nenhum processo automático. Aí você faz um ‘pkg unlock ejabberd’ quando for
> mexer nele.
>
> Com o csup você podia deixar o seu patch lá dentro do pacote do ejbberd,
> em files/patch-CUSTOM, e ele era sempre aplicado automaticamente, isso com
> portsnap não vai rolar, ele vai apagar. Então se você quer manter o seu
> port sempre com o patch pronto, você pode fazer um checkout da árvore do
> ports usando svn (svn co http://svn.freebsd.org/ports/head /usr/ports) e
> usar ‘svn up’ pra trazer novos updates, a única perda nesse caso é que o
> INDEX não será atualizado automaticamente, então um ‘make index’ vai ter
> que ser executado toda vez que atualizar a árvore.
>
> Com o auxílio do pkg lock/unlock, dependendo da sua necessidade, você pode
> usar tudo com pkg e atualizar de forma binária, exceto o ejabberd.
>


Renato,
Obrigado pelos esclarecimentos. Na verdade o modulo é o mod_logdb [1], por
incrível que pareça é do ejabberd porém eu não sei porque não entra no
próprio código do ejabberd e por vários updates que realizei, uso ele
somente dessa forma.

Pois é, muita coisa nova, mas como você mantém um servidor com pacotes para
atualizar? aplica algum script para atualizar ou faz isso manualmente nos
servidores?

Se tiver alguma doc que seja mais especifica, que você recomenda, para que
eu possa ler, agradeço.

obrigado,

[1]. https://www.ejabberd.im/mod_logdb


Mais detalhes sobre a lista de discussão freebsd