¿Cómo descargar un paquete RPM e instalarlo en una línea?

18

Me preguntaba si usarlo wgetera posible descargar un RPM y luego conectarlo sudo rpm -ipara instalarlo, en una sola línea. Me doy cuenta de que podría correr:

wget -c <URL>
sudo rpm -i <PACKAGE-NAME>.rpm

para instalar el paquete, pero me preguntaba si sería posible hacer esto en una sola línea usando las opciones de salida silenciosa y de escritura en wget. He intentado usar:

wget -cqO- <URL> | sudo rpm -i

pero volvió:

rpm: no packages given for install
BH2017
fuente
¿Lo intentaste sudo rpm -i <URL>?
Mikel
¿Has probado wget -cqO- <URL> | xargs sudo rpm -io tal vez sudo rpm -i $(wget -cqO- <URL>)? ¿Qué error dan?
Señor del fuego
1
@Señor del Fuego. 1er comando: solo lo intenté y dio el error que se muestra aquí . 2do comando: dio el error rpm: no packages given for install.
BH2017

Respuestas:

29

RPM tiene soporte nativo para descargar un paquete desde una URL. Tu puedes hacer:

sudo rpm -i <URL>

No es necesario descargar el RPM manualmente. Si este soporte no existiera, podría usar bashla sustitución del proceso.

sudo bash -c 'rpm -i <(wget -O - <URL>)'
jordanm
fuente
77
Es mejor usar yum install -y <URL>, porque también instalará cualquier dependencia.
cristi
1
Bueno, si estuviera usando una distribución que usa yum como su administrador de paquetes, lo haría, pero recuerde que los paquetes RPM también son utilizados por las distribuciones que usan los administradores de paquetes APT-RPM, DNF, urpmi y ZYpp. Resulta que estaba usando openSUSE Tumbleweed, que usa ZYpp.
BH2017
13

Es mejor hacerlo, yum install -y <URL>ya que esto se ocupa de las dependencias, en lugar del rpmuso directo de herramientas.

Sorin
fuente
Como dije en los comentarios sobre la respuesta de jordanm, estaba usando openSUSE Tumbleweed, yum no está disponible en Tumbleweed.
BH2017
1

Supongo que una forma posible podría ser definir el nombre de archivo de lo que está descargando:

wget -cqO- <URL> -O my-output-file.rpm && sudo rpm -i my-output-file.rpm

Pero seguramente debe haber mejores enfoques

lese
fuente
No aceptaré esta respuesta ya que (como dijiste) espero mejores enfoques, pero sabes que es un buen intento, así que gracias.
BH2017