Desde hace mucho se ha hablado de la convergencia, de la unión de una computadora de escritorio con un dispositivo móvil. En esta ocasión no les vengo a hablar de esa convergencia, si no de la convergencia de distribuciones en Linux, ese pequeño 1% de computadoras en el mundo que lo utiliza.
Mi punto de vista estamos muy cerca de esa tan utópica idea, ya que contamos con varias maneras de instalar programas sin importar la distribución la cual ejecutemos. Esto puede hacer que a futuro las distribuciones solo difieran de la forma de administrar el sistema base.
Appimages
Las AppImages son archivos ejecutables los cuales contienen dentro todas las dependencias de el programa en cuestión. Esta es una forma un poco informal de manejar dependencias pero es muy útil ya que solo hacemos click en el programa y se ejecuta.
Para realizar un ejemplo muy rápido podemos descargar Krita el cual se encuentra disponible desde su página oficial https://krita.org/es/descargar/krita-desktop-es/ en la pestaña de Linux.
Después de descargar el archivo .appimage desde la página, hacemos ejecutable el archivo, se puede realizar esto desde la manera gráfica, con el gestor de archivos de preferencia, hacer click con el botón secundario y hacerlo ejecutable.
Ahora solo hacer doble click y se ejecutará el programa, como pueden apreciar también genera una miniatura del programa y se lo añade al archivo.
En la página oficial https://appimage.org/ hay más información.
Flatpak
Los Flatpak son paquetes los cuales tienen un repositorio y se pueden instalar desde ahí, lo que hace un poco más ligera esta opción a las Appimages, ya que los Flatpaks tienen un runtime, un conjunto de paquetes de los cuales dependen para poder iniciar el programa, en pocas palabras son las dependencias que se requieren. Así nos ahorramos duplicar el espacio necesario, además de ganar seguridad al mantener un runtime base para nuestros programas con sus respectivos parches.
Para instalarlo es diferente en las distintas distribuciones de Linux, les dejo el enlace https://flatpak.org/getting para no duplicar contenido.
Y para encontrar aplicaciones hay un repositorio llamado Flathub el cual tiene varias aplicaciones y sus runtimes correspondientes.
Ya después de instalado Flatpak escribimos para instalar como ejemplo desde Flathub Solitario
flatpak install --from https://flathub.org/repo/appstream/org.gnome.Aisleriot.flatpakre
Nos va a solicitar nuestra contraseña de root para poder instalarlo junto su respectivo runtime.
Ahora para ejecutarlo es necesario abrirlo con, el primer inicio tardo un poco en iniciar, pero los siguientes fueron instantáneos.
flatpak run org.gnome.Aisleriot
Al menos para mi, aunque aún faltan muchos programas porque utilicen este método para publicar sus programas es uno de los mejores.
Snaps
El rival de Flatpak, aquel que se encuentra en los brazos de Canonical, odiado por muchos y amado por pocos, al menos para mi no es una alternativa para el título del post, la divergencia en Linux.
No entraré en detalle en este tema.
Conclusiones
Estamos cada vez más cerca de acercar a todos los usuarios una sencilla forma de instalar aplicaciones en Linux, pero por algo puse en el título utópica ya que aunque estamos muy cerca y tenemos las herramientas la comunidad en GNU/Linux se ha encargado de alejarnos de ella.
A la espera de la primera dsitro que se digne a tener en sus erpos 100% flatpack.
Manjaro con Gnome usando Gnome software es muy bueno gestionado las actualizaciones, ya hace tiempo que no ejecuto yaourt -Suya –noconfirm
No tengo idea como sería técnicamente hablando, aunque ha de ser posible.
Yo ya llevo con Ubuntu demasiado tiempo que ya no recuerdo que es probar más distribuciones.
A mi en lo particular no me gusta Gnome Shell, pero siempre para gustos colores.
Felices fiestas.
Estimado señor,que bueno es contar con personas como ustedes que nos instruyen e ilustran.Por otro lado en mis mas o menos 10 años trasteando con linux,me he dado cuenta de que hay un empeño en hacer de lo difícil aun mas difícil.Por ejemplo este sistema de las Appimages me parece una idea genial;Pero tan solo bajar un programa no solo se consigue con el obstaculo del idioma,que es superable,sino,¿donde está el simple botón de descarga?.Cierto al final tu lo haces ¡pero hay que ponerle de verdad! ¿cual es la razón de hacer esto?.Algunos salen con el argumento de que es porque te obliga a aprender etc.¿pero y si no quiero? o ¿si soy nuevo?.Y este tipo de actitudes que supongo cumplen algún proposito impedirá que Linux y sus iniciativas lleguen a calar en el común de los mortales.Pero repito debe cumplir algún propósito:Satisfacer el ego y admiración «de los que saben» y proteger las iniciativas comerciales.Claro esto es solo un comentario.Saludos y gracias por ayudarnos a los ignorantes de aquí abajo.
Igualmente yo llevo 10 años en Linux, he aprendido mucho o relativamente poco en comparación a gurus de informática, pero es lo suficiente.
Muchas gracias por el comentario constructivo, que tenga excelentes fiestas.
Yo digo que mas por razones de ego, es por una más importante y se llama «libertad». Libertad sin responsabilidad e independencia no existe, por eso que en linux se te obliga a aprender porque parte de esa libertad biene con el conocimoento de saber resposabilizarte del uso de tu OS y como funciona para alcanzar cierra independencia. Lo que pasa es la politica de microsoft y apple era de quitarnos ese conocimiento y asi mas facil para manipularnos y hacernos mas dependientes de sus «soluciones» porque mientras menos sabemos mas facil vendernos sus «soluciones» como algo inovador o algo que necesitamos porque nos acostumbraron a qur ellos aplicaban soluciones a nuestros problemas, de las cuales muchas veces no son muy favorables para nosotros los usuarios. Pero como dicen en mi tierra «el que no sabe es como el que no ve» o sea lo que quiere decir es que se cree o se traga todo lo que le dicen por ser un neofito del tema, lo cual es un poco mas dificil que pade en linux.
Ala, con un par, y no analiza snap. Este post carece totalmente de relevancia entonces dejando una de las mejores paqueterías fuera. En fin, donde no hay no se puede sacar.
Gracias por tus comentarios.
Saludos.
Dejar snap de lado solo porque no te gusta no significa que no sea una opción para la «convergencia», sino pregúntale a manjaro o a solus. Vamos, que no se pueden tomar los temas tecnológicos con una actitud de fanatismo religioso. Parece un berrinche contra canonical.
Uso Ubuntu como único Sistema Operativo en mi computadora.
Fanatismo, un poco, pero lo omití para que ustedes buscaran.
Si desean instalar algo con snap es necesario instalar en Ubuntu
sudo apt install snapd
y para una prueba
sudo snap install hexchat
y para ejecutar
snap run hexchat
Listo.
Solo me falto agregar eso al post.
Con sus respectivas imágenes.
Amigo. Se nota que poco has leído sobre snap. Funciona prácticamente en cualquier distribución. Yo con Archivos Linux no tengo problema en usarlo y lo considero una opción bastante más seria y completa que flatpack.
La verdad no sé mucho de Snap.
Gracias por tu comentario 🙂
Creo que estás confundido por qué aclaras que hay que instalar snapd?
«sudo apt install snapd»
snapd ya viene instalado en cualquier versión actual de Ubuntu.
Lo siento, pero la verdad no creo que sea una buena idea la «unificación».
La fortaleza y gran debilidad de GNU/Linux es su esperitu «anarquista», cada quien tiene sus ideas y las desarrolla hasta el punto máximo, lo que a mi parecer es bueno.
Finalmente se crea una especie de gran panteon lleno de distribuciones que funcionan de manera muy diferente y con el tiempo, poco a poco se va creando una especie de «seleccion natural» en el cual las mejores ideas son las que continúan.
En mi caso creo que el sistema de paquetes de Guix GNU/Linux es muy interesante y probablemente si llega a ganar revuelo, muchas distribuciones sacaran ideas de allí para su sistema de gestión de paquetes.
Por lo demás, la misma diversidad brinda mayor seguridad (más virtual que real), puesto que dependiendo del ataque se debe pensar en una distrubición específica, lo cual limita su rango de «eficacia»
Por ello a mi parecer el sistema de gestion de paquetes actualmente esta bien y unificarlos no es una utopía.
Es más, los usuarios «normales» ni siquiera prestan demasiada atencion a ello. Simplemente les basta una interfaz grafica tipo «App Store» para instalar aplicaciones. El como la distribucion internamente maneja los paquetes no es algo que les interese.
Por cierto, me encanta su blog, hay muchas cosas interesantes en él.
Ojala hubiesen más sitios web como este,
podría decir que son un oasis en el decierto de los blog de informática y tecnología en español.
Sigan así!
Saludos! =)
Buena idea o mala idea, como tu comentas, la selección natural nos dirá en algunos años cual fue el destino de todo esto.
Que tengas excelentes fiestas.
Que pasará con las distros que usan código fuente, como Gentoo Linux, si se llegara alcanzar la dicha utopía?
Como tal no creo que se dejen de actualizar las distribuciones actuales para tener ese modelo de distribución de software.
Gracias por el comentario.
Voy a la web de Flatpak y hay como 5 aplicaciones, ¿eso es todo lo que hay?
visita Flathub
La idea es muy similar a como funcionan las apps en macOS. Una carpeta .app con todo lo necesario para que la aplicacion funcione, practicamente sin ejecutar un instalador.
Como digo siempre (y me molesta un poco), Apple es el enemigo numero uno del software libre (mas que Microsoft me atrevo a decir), para todo, excepto al momento de copiar ideas e implementaciones.
Pero ellos no copiaron la idea de las aplicaciones autocontenidas, porque asi es en OX desde el principio, ademas, en OSX puedes usar repositorios igualito que en linux, mira en homebre, el macports (igual que el ports de BSD o el portage de Gentoo). Yo he sido usuario de Linux por mas de 20 años, desde que llegue a EEUU trabajo exclusivamente en OSX, que te puedo decir, lo mejor de los dos mundos, porque OSX en su core es un BSD modificado. En los servidores sigo usando linux, pero para mi workstation, nada mejor que OSX. La mejor terminal que he visto hasta ahora, iTerm2, no hay nada ni remotamente similar en linux, solo malas copias, casi los mismos comandos, todo lo puedes hacer por consola si quieres, pero a la vez ellos no te quitan la simplicidad de una UI. En conclusion, si quieres click click click, lo tienes, si quieres una interfaz grafica que supera a todos, la tienes, pero si quieres trabajar en consola como dios manda, la tienes tambien. No hay nada NORMAL que hagas en linux que no puedas hacer con OSX, y creeme, como te dije al principio, llevo mas de 20 años usando linux como programador profesional (hasta drivers he hecho), como administrador y como usuario normal, lo mismo con windows y ahora 5 años usando OSX, creo que tengo la suficiente experiencia para comparar. Lo mismo aplica a iOS y Android, programar en iOS es una divinidad comparado con Android. En fin, que linux deberia aplicar la misma filosofia de OSX, todo super simple para el usuario normal pero si quieres bajar, dejarte bajar y hacer lo que quieras.
El problema de usar esto masivamente y para todos los programas es que volvemos a Linux un Windows en donde cada programa tiene sus dependencias en vez de estar todas las dependencias en un mismo directorio /lib, aparte del enorme espacio que ocupará en servidores y ordenadores, llenamos el ordenador de dependencias al más puro estilo Windows todas desordenadas, digamos adiós al unificado y estandar directorio /lib, muchas de esas dependencias acabaran obsoletas (sera muy dificil mantener todas actualizadas) y volveran nuestro ordenador más vulnerable.
Como solución temporal y de emergencia veo bien estos sistemas pero como solución general no veo correcto sistemas de paqueteria que juntan los programas junto con las dependencias.