Si un paquete está disponible como deb y snap, ¿qué método es preferible?

39

Por supuesto, para la mayoría de los paquetes, la respuesta es trivial: si se trata de alguna herramienta o biblioteca, deb es la única opción, mientras que para algunos softwares patentados es la única opción.

Parece que Ubuntu está presionando y promoviendo fuertemente los paquetes Snap, citando ventajas en el empaquetado, aislamiento, seguridad, actualizaciones, etc. Sin embargo, todas las aplicaciones que se envían con Ubuntu 18.04 se instalan como paquetes deb.

Un ejemplo es Firefox, que es un paquete que debe mantenerse actualizado por razones de seguridad, y que en el pasado tuvo conflictos con los encargados del paquete de distribución sobre seguridad y marca (Iceweasel). Sin embargo, Canonical eligió enviar Firefox como un paquete deb.

Para los paquetes que tienen un complemento y un deb, esto plantea la pregunta: ¿Cuál debería instalar? Y si la respuesta es rápida, ¿debería migrar activamente los deb instalados?

Pepijn
fuente

Respuestas:

35

En términos generales, diría que debe permanecer con DEB para la mayoría de las aplicaciones que dependen de las bibliotecas del sistema. Esto tiene la ventaja de que si actualiza esta biblioteca, por ejemplo, por razones de seguridad, todas las aplicaciones que usan esta biblioteca se beneficiarán, incluso si el responsable de mantenimiento de la aplicación original desconoce la vulnerabilidad.

Los SNAPS son buenos en los casos en que está interesado en actualizar aplicaciones particulares sin actualizar todo su sistema. Por ejemplo, está en una versión LTS, pero desea tener la versión más reciente de una aplicación en particular. En comparación con los PPA, donde las aplicaciones tienen que compilarse contra las bibliotecas "antiguas" de todo el sistema, en un instante las aplicaciones traen sus propias bibliotecas. Esto es más fácil para los mantenedores y puede evitar que aterrices en el infierno de la dependencia si de lo contrario usas muchos PPA.

Bruni
fuente
" interesado en actualizar aplicaciones particulares sin actualizar todo su sistema " . ¿Pero no es eso para lo que son los PPA (especialmente aquellos en launchpad.net)?
RonJohn
44
@RonJohn sí, pero si usa ppa, las aplicaciones deben compilarse contra las bibliotecas "antiguas" de todo el sistema. En un instante las aplicaciones traen sus propias bibliotecas. Esto es más fácil para los mantenedores y puede evitar que aterrices en el infierno de la dependencia si de lo contrario usas muchos ppa.
Bruni
Sería genial si edita su explicación de PPA en su respuesta.
dcorking
1
@dcorking Edité la respuesta
Bruni
17

Una de las principales desventajas de las instantáneas es que se necesita mucho más espacio, ya que cada software tiene sus propias dependencias, mientras que los paquetes deb usan dependencias compartidas en todo el sistema, con un impacto mucho menor.

La utilidad de las instantáneas viene cuando desea mantener su sistema aislado (por ejemplo, de binarios propietarios) o el paquete en sí depende de diferentes dependencias de las que ha instalado (por ejemplo, las más recientes).

Daniele Gamba
fuente
Es cierto sobre el espacio extra, pero en el mundo de hoy, una computadora moderna tiene espacio más que suficiente para dedicar a su sistema operativo, bibliotecas y aplicaciones. Solo si se trata de computadoras viejas o de computadoras "pequeñas" (piense en dispositivos Raspberry Pi e IOT), el espacio será un factor limitante.
Paddy Landau
44
@ PaddyLandau No puedo estar más en desacuerdo. Creo que es una opinión horrible, y solo promueve el despilfarro
Steve Lorimer
@SteveLorimer Para mí, no es "desperdicio" usar el espacio masivo sin usar en un disco duro casi vacío. Para ti lo es. Tendremos que rogar para diferir. Los lectores pueden decidir por sí mismos qué enfoque adoptar.
Paddy Landau
55
@ PaddyLandau, no puedo estar más en desacuerdo. Regularmente uso un pequeño ssd para el almacenamiento del sistema y un gran disco duro para los datos. No puedo ver el punto de malgastar dinero en archivos duplicados
Daniele Gamba
77
@PaddyLandau en el mundo de hoy tenemos dispositivos móviles con almacenamiento pequeño, tenemos dispositivos de Internet de las cosas con almacenamiento aún más pequeño, tenemos SSD con el sistema operativo para tiempos de arranque rápidos, etc. Agrupando todo en una categoría y diciendo que está bien ser derrochador es una mala opinión en mi mente. De todos modos, como dices, tendremos que rogar para que difieramos
Steve Lorimer
4

Esta es una respuesta muy obstinada.

Yo personalmente siempre uso el deb o cualquier otro paquete incluido. No uso instantáneas porque siento que son como jardines amurallados, a diferencia del ecosistema abierto que representa Linux.

He instalado por error algunas instantáneas debido a una descripción / metadatos poco claros / ambiguos en el centro de software. Descubrí que degradaron mi experiencia con la computadora portátil. Esos fueron eliminados de inmediato.

Si una aplicación solo tiene un paquete de complemento, preferiría no usar la aplicación en sí.

Me preocupa que algún día los pargos puedan decir que ni siquiera necesitas el sistema operativo.

Sri
fuente
¡Sí! Ahora que lo pienso, es como promover una carrera con errores (juego de palabras). Todo parece surgir del deseo de acelerar la implementación. ¿Cuál es la prisa, queridos desarrolladores? ¡El universo no está a punto de colapsar!
Sri
Mi comentario anterior fue en respuesta al comentario de alguien, que parece haber sido eliminado. ¡Incluso hice un +1 en eso!
Sri