RPM que empacota várias versões para instalação simultânea

6

Existem algumas diretrizes, ou alguém tem sugestões sobre como eu devo empacotar algo que eu preciso para poder ter várias versões instaladas ao mesmo tempo?

    
por Nick Anderson 27.01.2010 / 23:37

2 respostas

4

Não tenho certeza se isso se encaixa com o que você está tentando realizar, mas em um projeto em que trabalhei, fizemos isso primeiro ditando uma estrutura de diretórios, algo como:

/usr/local/[project_name]/[version]

em que project_name era o "nome base" do projeto e version era uma versão marcada específica. Em seguida, usamos um número arbitrário para a versão do RPM (aumentando monotonicamente), para que as versões dentro da mesma tag ou ramificação pudessem ser atualizadas pelo RPM sem entrar em conflito com outras tags / branches. Isso significa que você precisa codificar um número de versão em algum lugar no cabeçalho do nome do RPM, em vez da versão, por exemplo,

Name: foobar-1.0
Version: 1234
Release: 1
# ...etc...

Nesse caso, o RPM pode instalar sob o caminho /usr/local/foobar/1.0 e as versões subseqüentes receberão o nome "foobar-2.0" e serão instaladas de maneira semelhante.

O nome "foobar-1.0" implica que você precisa de algum outro sistema, não o sistema RPM, para acompanhar os números das versões - usamos um shell script que simplesmente gerava o specfile sob demanda para um lançamento marcado. Isso pode ser um pouco incômodo, mas você adquire a flexibilidade de poder instalar várias versões de um pacote de uma maneira comum e de poder usar mais de uma ao mesmo tempo.

Esta é apenas uma sugestão e YMMV, obviamente.

    
por 28.01.2010 / 03:14
0

Apenas dê nomes diferentes aos pacotes e verifique se eles instalam arquivos em locais separados.

Ou agrupe todas as versões em um único pacote.

    
por 28.01.2010 / 00:03