Pergunta

Eu sou novato. Estou comprando o pacote RPM para meu próprio aplicativo e decidi usar os distutils para alcançá -lo. Consegui criar algum substituto de %post usando conselhos deste site, pelo qual realmente sou grato, mas estou tendo problemas com %postun. Deixe -me descrever o que fiz. No comando setup.py, eu execute o comando que cria um link simbólico necessário para executar o aplicativo. Funciona bem, mas o problema é quando eu quero remover o RPM, o link permanece lá. Então, achei que deveria usar %postun no arquivo de especificações. Minha pergunta é: existe uma maneira de fazer isso em setup.py ou tenho que editar manualmente o arquivo de especificações? Aconselhe -me ou me indique alguns manuais ou qualquer coisa. obrigada

Foi útil?

Solução

Sim, você pode especificar um script de instalação de postagem, tudo o que você precisa é declarar no bdist_rpm nas opções arg o arquivo que você deseja usar:

setup(
...
options = {'bdist_rpm':{'post_install' : 'post_install',
                        'post_uninstall' : 'post_uninstall'}},
...)

No arquivo post_uninstall, coloque o código que você precisa para remover o link, algo como:

rm -f /var/lib/mylink

Outras dicas

Nem os distutils nem o setupTools têm funcionalidade de desinstalação.

Em algum momento, a comunidade Python concordou que a desinstalação deveria ser tratada pelo sistema de embalagens. Nesse caso, você deseja usar o RPM, portanto, provavelmente existe uma maneira dentro do sistema RPM para remover os pacotes, mas você não encontrará isso em distutils ou setupTools.

@ Pycon2009, houve uma apresentação em distutils e setuptupols. Você pode encontrar todos os vídeos aqui

Ovos e implantação de construção em Python - Parte 1

Ovos e implantação de construção em Python - Parte 2

Ovos e implantação de construção em Python - Parte 3

Há um vídeo chamado Como criar aplicativos Distribuições Linux. Eu não vi isso, mas parece ser apropriado.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top