Todotecnologia-eso: Blog de recursos educativos para Tecnología (educación secundaria) del Prof. José Manuel Núñez M. [Si te atreves, pulsa "Control + D"].
Información -> Conocimiento -> Saber -> Entender.
Hola, buenos días. En esta entrada voy a indicar algunas aplicaciones o programas de GNU/Linux que considero muy útiles para el aprendizaje de las materias de Tecnología, TIC, Digitalización, Computación y Robótica. La mayoría tienen versiones para distintos sistemas operativos. Ordenados por categorías:
Oficina/Ofimática:
LibreOffice*. Completa suite ofimática alternativa a MS Office. Imprescindible.
OnlyOffice*: suite ofimática multiplataforma con una moderna interfaz. Está desarrollada por Ascensio System SIA, una empresa con sede en Riga, Letonia.
Gráficos:
Inkscape*: es un editor de gráficos vectoriales libre y de código abierto. Inkscape puede crear y editar diagramas, líneas, gráficos, logotipos, e ilustraciones complejas.
GIMP* : Editor de imágenes/ mapa de bits. Alternativa a Photoshop.
Krita* : Herramienta de pintura digital de KDE.
Pinta*: Sencilla aplicación para dibujar.
Dia*: Editor de diagramas.
Reproductor de vídeo y música:
VLC*. Excelente reproductor multimedia. VLC incluye de forma nativa un gran número de códecs libres, evitando la necesidad de instalar o calibrar códecs propietarios. Alternativa: mpv
Utilidades:
Captura de pantalla: Xfce4-screenshooter o gnome-screenshot
Grabación de pantalla: SimpleScreenRecorder
Instalación de programas Windows: Wine, PlayOnLinux o Winetricks. Son una interfaz que facilita la instalación de programas Windows mediante WINE.
Calculadora científica: Qalculate!.
Calculadora científica: Shulrechner. Tiene una versión online.
Escritura de archivos de imagen a medios de almacenamiento para crear unidades Flash USB de arranque: balenaEtcher* o Ventoy* (permite el arranque con varias imágenes ISO en el mismo dispositivo de almacenamiento (USB).
Gestor de contraseñas: KeePassXC*
Edición de Vídeo/Audio:
OBS Studio*: grabación y transmisión de vídeo por internet (streaming).
Audacity*: Editor de audio.
Kdenlive*: Editor de vídeo no lineal de KDE.
Diseño 3D:
Blender*
FreeCAD* / OpenSCAD*
Sweet Home 3D*
Ultimaker Cura*. Aplicación para controlar impresoras 3D.
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.
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), Centro de Software de Ubuntu - (Gnome) Software, Paquetes (Gnome), Discover de KDE (instala apt/snap/flatpak) o el excelente gestor de paquetesMuon(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 0.91.3. Fuente imagen: todotecnologia-eso
Acerca del Gestor de paquetes Synaptic (Debian). Gestión de paquetes DEB
Gestor de Software de Ubuntu (Actualiza paquetes DEB y Snap)
Leyenda de los iconos de Synaptic. Fuente imagen: todotecnologia-eso
Ayuda rápida de Synaptic
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 deb"
Desinstalación: sudo apt-get remove "nombre del paquete deb".
** 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 deb"
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:
Ejemplo para instalar el gestor de paquetes synaptic:
$ sudo apt installsynaptic
Desinstalación: sudo apt remove "nombre del paquete deb".
$ sudo apt removesynaptic
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.
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:
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.
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.
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. También podemos utilizar Gear Lever para gestionar las appimage.
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 installsnap-store
Las aplicaciones snap se actualizan automáticamente. Para actualizar manuamente las aplicaciones instaladas con snap, podemos escribir en la terminal:
$ sudo snap refresh
Podemos ver las aplicaciones snap instaladas con:
$ sudo snap list
Los dos a la vez: sudo snap refresh && 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" Discoverde 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: