No es casualidad ni mala fama gratuita: los Flatpak concentran una parte desproporcionada de los problemas que se ven en foros de Linux por cómo están construidos por dentro, no porque el formato en sí sea defectuoso. La explicación tiene varias capas, y entenderlas ayuda mucho a saber cuándo conviene usar un Flatpak y cuándo es mejor tirar del paquete nativo de tu distro.
#Cada Flatpak viaja con su propio mundo de dependencias
Un paquete tradicional de tu distro usa las bibliotecas que ya están instaladas en el sistema, compartidas entre todas las aplicaciones. Un Flatpak, en cambio, viene empaquetado junto con casi todas sus propias dependencias (los llamados runtimes), para garantizar que funcione igual en cualquier distribución sin depender de lo que tengas instalado. Esto soluciona de raíz el clásico «infierno de dependencias», pero tiene un coste: cuando algo va mal, ese «mundo aislado» de bibliotecas puede quedar desincronizado respecto al sistema real, generando fallos que no aparecen con el paquete nativo de la misma aplicación.
#El sandboxing no siempre es tan estricto como parece
Uno de los grandes argumentos de venta de Flatpak es el aislamiento (sandboxing): cada aplicación corre en su propio contenedor con acceso limitado al resto del sistema. El problema es que ese aislamiento depende de los permisos que decida configurar quien empaqueta la aplicación, y muchos paquetes populares (editores de imagen, IDEs, reproductores) se distribuyen con permisos bastante amplios de acceso al sistema de archivos para que «todo funcione sin líos», lo que en la práctica reduce buena parte de esa protección.
Esto explica también por qué algunos problemas de integración son tan comunes: acceso a temas del escritorio, tipos de letra, entrada de determinados sistemas de escritura, o comunicación con hardware específico (GPU, cámaras, controladores de audio profesional) puede fallar precisamente porque el sandbox está bloqueando algo que la aplicación necesitaba y que el paquete nativo tenía libre por defecto.
#Los tiempos de actualización no siempre van sincronizados
Cuando aparece una vulnerabilidad o un fallo en una biblioteca compartida usada por medio sistema (por ejemplo Mesa, los controladores gráficos, o componentes de codificación de vídeo como VAAPI), una distribución tradicional puede parchear esa biblioteca una sola vez y todas las aplicaciones que la usan quedan arregladas a la vez. En el mundo Flatpak, cada aplicación lleva su propia copia empaquetada de esas bibliotecas, así que hay que esperar a que se actualice el runtime correspondiente y luego a que cada aplicación individual reconstruya su paquete, lo que en la práctica genera retrasos de días o semanas frente al sistema nativo.
Casos reales como los problemas de aceleración de vídeo por hardware (VAAPI) en aplicaciones de grabación y transmisión, o versiones de Steam empaquetadas en Flatpak con fallos que no existían en la versión nativa, son ejemplos habituales de este desajuste entre el ritmo de actualización del sistema base y el de los paquetes en formato contenedor.
#Entonces, ¿el contenedor «rompe» las aplicaciones?
No exactamente. El contenedor en sí no introduce errores por sí mismo; lo que hace es añadir una capa intermedia extra entre la aplicación y el sistema operativo, y esa capa es un punto más donde algo puede desincronizarse, quedarse desactualizado o tener permisos mal configurados. Cuantas más capas hay entre una aplicación y el hardware/sistema real, más probabilidades hay de que algo falle en esa frontera, y eso es justo lo que ocurre con Flatpak, Snap y AppImage en distinta medida.
| Aspecto | Paquete nativo | Flatpak |
|---|---|---|
| Dependencias | Compartidas con el sistema | Empaquetadas junto a la app (runtime) |
| Velocidad de parches de seguridad | Inmediata a nivel de sistema | Depende de que se actualice el runtime y luego cada app |
| Integración con el escritorio | Total por defecto | Limitada según permisos del sandbox |
| Acceso a hardware especial (GPU, audio) | Directo | Puede requerir permisos extra o fallar |
#¿Significa esto que hay que evitar los Flatpak?
No, ni mucho menos, para muchísimas aplicaciones funcionan perfectamente y resuelven de forma muy práctica el problema de instalar software reciente en distros con paquetes más antiguos. Pero para aplicaciones que dependen mucho del hardware (edición de vídeo, streaming, gaming con controladores gráficos específicos) suele ser más fiable usar el paquete nativo de la distro cuando esté disponible, y reservar Flatpak para el resto de aplicaciones de escritorio donde ese nivel de integración con el sistema es menos crítico.