ES | EN

Reinstalando aplicaciones en Fedora

21 de septiembre, 2024

Antes de comenzar el desarrollo del juego, el primer paso fue preparar el entorno de escritorio. He elegido Fedora. Esta elección se basa en varios factores:

Para comenzar con una instalación limpia, he desarrollado dos scripts que facilitan el proceso de respaldo y reinstalación de mis aplicaciones. Aquí está el primer script, que al ejecutarlo genera una lista de las aplicaciones instaladas por el usuario:


    #!/bin/bash
    # Nombre del archivo donde se guardarán las aplicaciones
    ARCHIVO_SALIDA="aplicaciones.txt"
    
    # Función para obtener aplicaciones instaladas por el usuario via DNF
    obtener_apps_dnf() {
        echo "Aplicaciones instaladas por el usuario (DNF):" > "$ARCHIVO_SALIDA"
        dnf repoquery --userinstalled --queryformat '%{NAME}' | sort | uniq >> "$ARCHIVO_SALIDA"
    }
    
    # Función para obtener aplicaciones instaladas por Flatpak
    obtener_apps_flatpak() {
        echo -e "\nAplicaciones instaladas por Flatpak:" >> "$ARCHIVO_SALIDA"
        flatpak list --app --columns=application | sort >> "$ARCHIVO_SALIDA"
    }
    
    # Ejecuta las funciones para obtener la lista de aplicaciones
    obtener_apps_dnf
    obtener_apps_flatpak
    
    echo "La lista de aplicaciones instaladas por el usuario ha sido guardada en $ARCHIVO_SALIDA"
                

Después de obtener la lista de aplicaciones, procedo a formatear y realizar una instalación limpia de Fedora. Una vez instalado y actualizado el sistema, copio el archivo generado por el primer script en mi directorio $HOME y ejecuto el segundo script para reinstalar todas las aplicaciones de la lista:


    #!/bin/bash
    # Nombre del archivo que contiene la lista de aplicaciones
    ARCHIVO_ENTRADA="aplicaciones.txt"
    
    # Función para instalar aplicaciones DNF
    instalar_dnf() {
        echo "Instalando aplicaciones DNF..."
        APPS_DNF=$(sed -n '/DNF:/,/Flatpak:/p' "$ARCHIVO_ENTRADA" | 
                   grep -v "DNF:" | grep -v "Flatpak:" | tr '\n' ' ')
        if [ -n "$APPS_DNF" ]; then
            sudo dnf install -y $APPS_DNF
        else
            echo "No se encontraron aplicaciones DNF para instalar."
        fi
    }
    
    # Función para instalar aplicaciones Flatpak
    instalar_flatpak() {
        echo "Instalando aplicaciones Flatpak..."
        APPS_FLATPAK=$(sed -n '/Flatpak:/,$ p' "$ARCHIVO_ENTRADA" | 
                       grep -v "Flatpak:" | tr '\n' ' ')
        if [ -n "$APPS_FLATPAK" ]; then
            for app in $APPS_FLATPAK; do
                flatpak install -y flathub $app
            done
        else
            echo "No se encontraron aplicaciones Flatpak para instalar."
        fi
    }
    
    # Verifica si el archivo de entrada existe
    if [ ! -f "$ARCHIVO_ENTRADA" ]; then
        echo "El archivo $ARCHIVO_ENTRADA no existe. Por favor, ejecuta primero el script de listado de aplicaciones."
        exit 1
    fi
    
    # Ejecuta las funciones de instalación
    instalar_dnf
    instalar_flatpak
    echo "La instalación de aplicaciones ha terminado."
                

Espero que esta información sea útil para aquellos que deseen realizar un proceso similar de reinstalación de aplicaciones para dejar el sistema a punto para comenzar a utilizarlo de inmediato.