Snaps. ¿Por qué? Por favor, basta

Los usuarios de Linux sopesan los compromisos entre los paquetes Snap de Canonical y formatos tradicionales gestionados por la distribución como .deb, Flatpak, AppImage y Docker. Quienes critican Snap señalan su gran huella en disco, problemas de rendimiento, una infraestructura opaca y centralizada, y la tendencia de Ubuntu a sustituir paquetes nativos (por ejemplo, Firefox, Chromium) por snaps, mientras que sus partidarios sostienen que los paquetes autocontenidos y con actualizaciones automáticas reducen el infierno de dependencias y trasladan el mantenimiento a los desarrolladores aguas arriba. La tensión más amplia gira en torno a quién debe controlar el empaquetado y las actualizaciones —las distribuciones o los proveedores de aplicaciones— y cómo equilibrar seguridad, comodidad, apertura y las limitaciones de recursos del sistema.

Edad y contexto de la discusión

  • El hilo se centra en por qué existen los Snaps y si son una buena idea, con muchas comparaciones con Flatpak, AppImage, Docker y el empaquetado tradicional de las distribuciones.
  • Varios comentarios señalan que la publicación original del foro es de 2019–2021, pero los problemas siguen considerándose relevantes.

Espacio en disco, almacenamiento y rendimiento

  • La preocupación principal: los Snaps consumen mucho espacio en disco debido a que agrupan dependencias y conservan múltiples versiones por paquete.
  • Ejemplos: los snaps base core y GNOME replicados a través de versiones; aplicaciones pequeñas que se inflan hasta cientos de MB o más.
  • Esto se considera especialmente problemático en portátiles baratos con almacenamiento pequeño, a menudo no actualizable.
  • Algunos informan que snapd provoca una carga constante y alta de CPU y grandes registros.

Debate sobre la actualizabilidad del hardware

  • Un bando afirma que “muchos portátiles” ahora tienen almacenamiento soldado o eMMC, lo que hace que el espacio sea un recurso muy limitado.
  • Otros sostienen que estos siguen siendo una minoría y que la mayoría de los portátiles usan SSD fácilmente reemplazables.
  • El alcance del uso de eMMC en portátiles de consumo se disputa y, en esencia, queda “poco claro”.

Modelos de empaquetado y carga para los desarrolladores

  • Hay un argumento fuerte de que el empaquetado tradicional de las distribuciones no escala: esperar que los proveedores ofrezcan .deb/.rpm para cada distribución es irrealista.
  • Otros responden que herramientas (por ejemplo, Open Build Service) y sistemas de compilación estándar ya hacen manejable el empaquetado multi-distribución.
  • Algunos argumentan que el empaquetado debe seguir siendo responsabilidad de la distribución; otros dicen que debe trasladarse aguas arriba a los desarrolladores de la aplicación.

Ventajas percibidas de Snaps

  • Empaquetado multiplataforma y distribución más sencilla para software comercial y de terceros.
  • Las actualizaciones automáticas y el sandboxing estricto se consideran grandes ventajas para servidores y algunos servicios autoalojados (por ejemplo, Nextcloud).
  • Algunos consideran que Snaps encajan mejor con “aplicaciones modernas” con muchas dependencias, evitando conflictos de bibliotecas.

Críticas principales a Snaps

  • Uso forzado en Ubuntu (por ejemplo, Firefox/Chromium vía Snap incluso cuando se instalan con apt).
  • Backend de código cerrado, tienda de Canonical codificada de forma fija y percepción de centralización/control de acceso.
  • Gran huella en disco, arranque lento, múltiples versiones retenidas y contaminación del montaje con muchos dispositivos loop.
  • Problemas de integración/sandbox: dificultades con DNS de VPN, tarjetas inteligentes/YubiKey, CUPS y otros recursos del sistema.
  • Algunos ven Snap como “tecnología medio cocida de Canonical” y un intento de copiar la economía de las tiendas de aplicaciones/móviles.

Flatpak, AppImage, Docker, Nix, etc.

  • Algunos prefieren Flatpak para aplicaciones GUI; aún se reportan problemas de permisos, tematización y aumento del tamaño de los runtimes, aunque está mejorando.
  • Se elogia AppImage por su simplicidad, pero la falta de actualizaciones automáticas es a la vez una desventaja y una ventaja según el flujo de trabajo.
  • Docker/Podman se usan a menudo en su lugar para cargas de trabajo “bleeding edge” o de servidor.
  • Se mencionan Nix/Guix y las distribuciones inmutables como alternativas más principistas para el control de dependencias.

Gestores de paquetes tradicionales y estabilidad

  • Varios usuarios veteranos de Debian/Ubuntu dicen que el infierno de dependencias está en gran medida resuelto si te mantienes dentro de los repositorios oficiales o usas el pinning adecuado.
  • Otros insisten en que el infierno de dependencias sigue existiendo, especialmente con repositorios de terceros y PPAs.
  • Algunos se alejan de Ubuntu (hacia Debian, Arch, Mint, Pop!_OS) principalmente para evitar Snaps y las herramientas/anuncios adicionales de Ubuntu.
  • Tensión persistente: deseo de paquetes estables e integrados en la distribución frente a la mentalidad de “arreglar hacia adelante” y las actualizaciones automáticas rápidas.