yum / RPM depende do pacote genérico (como “fornece” em outros gerenciadores de pacotes)

2

Estou tentando descobrir como fazer um pacote meu depender de qualquer coisa que forneça "java", mas não sei ao certo o que procurar. Aparentemente, "yum provides" é um comando para descobrir qual pacote contém um arquivo em particular, e "yum info" não parece ter a informação que eu quero.

Basicamente, meu SO tem um pacote chamado "java-1.6.0-openjdk", e meu pacote requer alguma implementação de Java, mas funcionaria perfeitamente no Oracle Java, ou Java 7, então não vou querer para ser tão específico sobre isso. Existe uma maneira de depender apenas de qualquer coisa que forneça Java?

    
por Brendan Long 11.05.2012 / 17:43

2 respostas

2

Thread é um pouco antigo, mas não respondido ...

Você pode encontrar o que seu java oferece com rpm:

[mdavis@x1pt01 yumrepo]$ rpm -q --provides java-1.5.0-gcj-1.5.0.0-29.fc12.x86_64
jaas = 1.5.0.0-29.fc12
java = 1.5.0
java-1.4.2-gcj-compat > 1.4.2.0-40jpp.111
java-1.5.0 = 1.5.0.0-29.fc12
java-gcj = 1.5.0.0-29.fc12
java-gcj-compat = 1.0.79
java-sasl = 1.5.0.0-29.fc12
jaxp_parser_impl = 1.5.0.0-29.fc12
jce = 1.5.0.0-29.fc12
jdbc-stdext = 1.5.0.0-29.fc12
jdbc-stdext = 3.0
jndi = 1.5.0.0-29.fc12
jndi-cos = 1.5.0.0-29.fc12
jndi-dns = 1.5.0.0-29.fc12
jndi-ldap = 1.5.0.0-29.fc12
jndi-rmi = 1.5.0.0-29.fc12
jre = 1.5.0
jre-1.5.0 = 1.5.0.0-29.fc12
jre-1.5.0-gcj = 1.5.0.0-29.fc12
jre-gcj = 1.5.0.0-29.fc12
jsse = 1.5.0.0-29.fc12
java-1.5.0-gcj = 1.5.0.0-29.fc12
java-1.5.0-gcj(x86-64) = 1.5.0.0-29.fc12

então você pode simplesmente "exigir" o java mínimo que você precisa no arquivo de especificações.

Requer: java > = 1,0

    
por 31.07.2014 / 22:50
2

eu acho que você precisa encontrar um padrão de nome que se encaixa todos esses pacotes, por exemplo, se você precisar de jdk:

yum list installed '*openjdk*'

talvez você tenha que encontrar a ou b ou c, etc., se os nomes dos pacotes não puderem ser resumidos com um padrão único e evitar falsos positivos.

Eu vejo, então você pode criar seus próprios pacotes meta (fictícios), cada um deles requer um dos pacotes adequados e fornece algo como "java-installed".

Em seguida, o seu rpm só precisa exigir o Java instalado e pronto.

    
por 11.05.2012 / 17:59