sábado, 10 de septiembre de 2022

Instalación de programas en Ubuntu (GNU/Linux)

La información que se indica en esta entrada es válida para las distribuciones GNU/Linux basadas en Debian, Ubuntu y sus derivadas (sabores) como Lubuntu, Xubuntu, Ubuntu Mate, Linux Lite, Kubuntu, Linux Mint, etc. 

"Sabores de Ubuntu"

 

4 maneras de instalar programas (paquetes) en Ubuntu:


Los archivos con extensión deb (.deb) son los paquetes (aplicaciones o programas) de las distribuciones GNU/Linux basadas en Debian como Ubuntu. 

Otras distribuciones utilizan paquetes tipo rpm (.rpm), por ejemplo las basadas en Redhat (Fedora, CentOS, RHEL, etc.) o la distro openSuSE.

Nota: tanto deb como rpm son una especie de bases de datos que contienen paquetes y  las dependencias (otros paquetes) necesarias para funcionar correctamente. Dichas dependencias pueden estar contenidas en esos archivos (deb o rpm) o no. Es posible la conversión de un paquete .deb a .rpm y viceversa.
  • 1. Instalación remota de paquetes desde Internet (descarga e instala paquetes .deb y sus dependencias de forma fácil) desde repositorios de software.
    •     Método 1 (recomendado) Desde las "tiendas de aplicaciones" o "gestores de software". Instalación similar a "Play Store" de Android (Google) o a la "App Store" de Apple. En GNU/Linux se trata de una interfaz gráfica para el sistema de gestión de paquetes (Tiendas de aplicaciones): Synaptic (interfaz gráfica de apt/dpkg, original de Debian) o Centro de Software de Ubuntu - (Gnome) Software (método más sencillo) o Discover de KDE (instala apt/snap/flatpak) o el excelente gestor de paquetes Muon (KDE/Qt). En la distro Fedora existe el gestor DNF o  dnfdragora (forma gráfica). Con estas aplicaciones podemos instalar y desinstalar aplicaciones sin escribir una línea de código en la terminal.

                (Busca la aplicación y aceptar para instalar/desinstalar)

Gestor de paquetes Synaptic (Debian). Gestión de paquetes DEB

Gestor de Software de Ubuntu (Actualiza paquetes DEB y Snap)

 
    •     Método 2: Uso desde terminal (intérprete de línea de comandos): (necesitamos conocer el nombre del paquete a instalar). Escribimos "sudo" al inicio para tener temporalmente privilegios de administrador.
    • Nota: apt: Advanced Packaging Tool. "apt es un gestor de paquetes de línea de órdenes y proporciona órdenes para la búsqueda y gestión así como la solicitud de información sobre los paquetes. Proporciona la misma funcionalidad que las herramientas APT especializadas, como apt-get y apt-cache, pero permite de forma predeterminada opciones más apropiadas para un uso interactivo".
            ** Con apt-get:
                            A. $ sudo apt-get update (actualiza la lista de paquetes)
                            B. $ sudo apt-get install "nombre del paquete"
                Desinstalación: sudo apt-get remove "nombre del paquete".
           
            ** Con apt (apt es una actualización de apt-get):
                            A. $ sudo apt update (actualiza la lista de paquetes)
                            B. $ sudo apt install "nombre del paquete"

            Si existen actualizaciones de los programas (paquetes) tenemos que escribir:

                           $ sudo apt upgrade

                           $ sudo apt-get upgrade       

Los pasos anteriores podemos hacerlos en un solo comando que nos permite actualizar todos las aplicaciones (paquetes) de una vez:
                            
                            $ sudo apt update && sudo apt upgrade -y
 
o más completo:
 
$  sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y && sudo apt autoclean -y

Ejemplo para instalar el gestor de paquetes synaptic:
                            $ sudo apt install synaptic
                    
                    Desinstalación: sudo apt remove "nombre del paquete". 
                            $ sudo apt remove synaptic   
 
Para otras distribuciones existen otros gestores de paquetes. En la siguiente imagen podemos ver los comandos para instalar el programa CPU-X que nos proporciona información detallada de nuestro equipo:
 
Comandos para instalar CPU-X en distintas distros.
 
 
Opciones y órdenes del comando apt (apt -h). Fuente

 
* Gestión de repositorios
 
    Los repositorios son servidores con las bases de datos que contienen los archivos que queremos descargar. Es decir, son una especie de almacen de paquetes. Vienen configurados por defecto para cada distribución, pero es posible añadir nuevos, modificarlos o eliminarlos (por ejemplo mediante los repositios PPA). 
 
Por ejemplo para instalar el paquete (programa)  Grub customizer podemos añadir el repositorio mediante la orden: add-apt-repository ppa:nombre del repositorio; en este caso de trata de un repositorio personal de tipo PPA (Personal Package Archive) - ver apartado más abajo.

    $  sudo add-apt-repository ppa:danielrichter2007/grub-customizer
 
 Una vez añadido a la lista de repositorios, podemos instalar los programas que existan en dicho repositorio. Por ejemplo, ahora podemos instalar el programa personalizador del menú de arranque de Grub, Grub customizer:

    $ sudo apt install grub-customizer
 
    Para eliminar un repositorio utilizamos la orden: add-apt-repository -r. Ejemplo:
 
    $ sudo add-apt-repository -r ppa:danielrichter2007/grub-customizer
 
 
Los repositorios oficiales en Ubuntu son de 4 tipos: main, universe, restricted y multiverse (ver imagen). 
  • Main: Software libre soportado por Canonical
  • Universe: Software libre mantenido por la comunidad
  • Restricted:Controladores propietarios.
  • Multiverse: Software propietario o bajo copyright o con aspectos legales
Puedes ver todos los archivos de cada distro aquí.

De forma gráfica: Orígenes del software
 

Fuente: todotecnologia-eso.blospot.com

    • Repositorios PPA : Son repositorios no oficiales de Ubuntu. Los repositorios PPA (Personal Package Archive, en inglés), permiten a los desarrolladores distribuir software y sus respectivas actualizaciones en forma directa a los usuarios de Ubuntu sin tener que esperar a que se actualicen los propios repositorios de oficiales de Ubuntu (vistos en la sección anterior). Para instalar los paquetes PPA tenemos que añadir los repositorios PPA. La mayoría de dichos paquetes se almacenan en la plataforma Launchpad mantenida por la empresa Canonical Ltd. (desarolladora de Ubuntu). 
Importante: instalar repositorios PPA puede ser un riesgo si el creador de dicho repositorio no es de confianza.

Para la instalación y desinstalación tenemos herramientas gráficas como Y-PPA manager. Para hacerlo desde consola podemos ver los siguientes ejemplos: 
      • Ejemplo: Instalación de la suite ofimática LibreOffice a la última versión mediante consola:
        •  $ sudo add-apt-repository ppa:libreoffice/ppa
        •  $ sudo apt update
        •  $ sudo apt install libreoffice
  • Ejemplo: Para eliminar la suite LibreOffice instalada mediante PPA podemos escribir:
    • $ sudo add-apt-repository -r ppa:libreoffice/ppa
  • 2. Instalación local de archivos .deb

    •     Método 1: Utilizando GDebi (clic sobre el archivo .deb). GDebi tiene la ventaja que añade las dependencias (otros paquetes, librerías o programas) que pueda requerir el archivo .deb, Es por tanto muy recomendable para instalar paquetes .deb.

 
    •     Método 2: Uso desde terminal o consola: con dpkg. El comando dpkg es la base del sistema de gestión de paquetes de Debian.
                Instalación de un paquete: $ sudo dpkg -i paquete.deb
                Desinstalar: $ sudo dpkg -r paquete.deb (desinstalar un paquete)

 (Nota: Opción no recomendada puesto que no descarga ni instala las dependencias o archivos necesarios con ese paquete). Puede que tengamos que utilizar el comando siguiente para eliminar paquetes innecesarios:  sudo apt autoclean
    
            Método 2.b: Desde el navegador.  Este método consiste simplemente en obtener el archivo .deb de la página del desarrollador. Una vez descargado, por lo general tenemos que descomprimirlo en una carpeta. A continuacion instalar el paquete .deb de la forma indicada anteriormente.

Por ejemplo podemos obtener el archivo .deb de LibreOffice desde este enlace: https://es.libreoffice.org/descarga/libreoffice/
    •     Archivos .sh
Los archivos con extensión .sh son archivos de texto simple que contienen una lista de comandos y un poco de lógica. Tambien se les llama shell script, son similares a los .bat de Windows. En algunas aplicaciones, el desarrollador incluye un archivo como install.sh que automatiza el proceso de dicha instalación.
   
 Por ejemplo, para instalar el Arduino IDE en su última versión podemos ir a la página de descarga y una vez descomprimido escribir desde consola dentro de la carpeta que contiene el archivo install.sh: 
   
 $ sudo ./install.sh
  • 3. Compilar archivos fuente mediante Cmake (Avanzado).
Es método más difícil. Era el utilizado en los orígenes de GNU/Linux.
 
CMake es una herramienta multiplataforma de generación o automatización de código. Se utiliza para ahorrar tiempo y esfuerzo en la compilación de tu código fuente. Es un método avanzado y la opción más complicada. 
 
Instalación de cmake si fuera necesario:
  
        $ sudo apt install cmake 
        $ sudo apt install cmake-gui
CMake es una herramienta para definir y administrar compilaciones de código, principalmente para C ++
 
El proceso general que sigue es el siguiente:
 
Cada proyecto de construcción contiene un archivo CMakeLists.txt, en cada (sub)directorio, que controla el proceso de construcción. Desde ese directorio, se escriben los siguientes comandos en la consola o terminal:
  • mkdir build
  • cd build
  • cmake ..
  • make

Si todo ha salido bien, tendrás tu archivo ejecutable funcionando.

  •  4. Aplicaciones todo incluido: en esta categoría tenemos 3 posibilidades:
    • Logo AppImage
      APPIMAGE: AppImage es un formato para distribuir software portátil en paquetes universales en GNU/Linux sin necesidad de permisos de superusuario para instalar la aplicación. Con este formato se intenta permitir la distribución de software binario independiente de la distribución de Linux para desarrolladores de aplicaciones, también llamado empaquetado de upstream. Lanzado por primera vez en 2004 bajo el nombre de klik, fue desarrollado continuamente, y luego renombrado en 2011 a PortableLinuxApps y más tarde en 2013 a AppImage
AppImage no instala realmente el software. Es una imagen comprimida con todas las dependencias y bibliotecas necesarias para ejecutar el software deseado. Los programas se eliminan simplemente borrando el archivo AppImage.
      • Página de descarga: https://appimage.github.io/
      • Para que funcionen estas aplicaciones es necesario hacer que el archivo .appimage descargado sea ejecutable. Mediante la aplicación AppimageLauncher podemos automatizar el proceso de instalación de estas aplicaciones.
      • Por ejemplo podemos descargar del editor de vídeo Kdenlive desde su página web.
    • SNAP (Ubuntu): Paquetes aislados en contenedores. Los paquetes snap pertenecen a lo que se conoce como sistema de paquetes autocontenidos, que viene a ser algo así como que contienen la mayor parte de las librerías que necesitan para su funcionamiento, es decir, contienen todas las dependencias que necesitan para funcionar. snapd, se diferencia de los enfoques tradicionales de administración de paquetes de Linux, como APT(.deb) o YUM (.rpm), que requieren paquetes específicamente adaptados para cada distribución de Linux. Son rápidos de instalar y se actualizan de forma automática. Funcionan en casi cualquier distribución y dispositivo. Desde servidores, equipos de sobremesa, dispositivos móviles, Internet de las cosas, etc. La única condición necesaria es que snapd este ejecutándose. La extensión de dichos paquetes es .snap
      • Para instalar y actualizas aplicaciones tipo snap podemos instalar una aplicación gráfica como la tienda de snap escribiendo en la terminal o consola:  
        • $ sudo snap install snap-store
      • Las aplicaciones snap se actualizan automáticamente. Para actualizar las aplicaciones instaladas con snap, podemos escribir en la terminal: 
        • $ sudo snap refresh
      • Podemos ver las aplicaciones snap instaladas con:
        • $ sudo snap list
           
      • Para quitar un programa snap:
        • $ sudo snap remove nombre_del_programa
      • Tambien podemos actualizar las aplicaciones snap mediante la aplicación gráfica "tienda de snap" (lógicamente si la tenemos instalada previamente):
Tienda de Snap. Instalación y actualización de aplicaciones tipo snap.

Las aplicaciones Snap también se pueden instalar con tiendas de aplicaciones como Discover (KDE).

 
    • FLATPAK (Fedora)Es una manera de instalar aplicaciones independientes de la distribución GNU/Linux. En 2019 era soportada por 22 distribuciones y en 2023 era compatible con 36 distros. Es similar a snap. La "tienda de software" Discover de KDE soporta paquetes Snap, deb y Flatpak (si instalamos el motor Flatpak).
      • La instalación de flatpak en distribuciones derivadas de Ubuntu puede requerir que instalemos primero:
  1. sudo apt install flatsudo apt install flatpak
  2. sudo apt install gnome-software-plugin-flatpak
  3. flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
sudo apt install flatpaksudo apt install     Para instalar una aplicación desde terminal:
  • flatpak install "nombre de la aplicación"      
    Para ver las aplicaciones Flatpak instaladas podemos escribir en la terminal:
  • flatpak list
    Para borrar una aplicación flatpak:
  • flatpak remove "nombre de la aplicación flatpak". Recomiendo usar Discover por su facilidad de uso.
     
    Ejemplo de instalación del IDE Thonny. Fuente


Última actualización: Julio de 2024

No hay comentarios:

Publicar un comentario

Antes de escribir, recuerde que "todotecnologia-eso" es un blog educativo. Cuide su lenguaje. Gracias.