Uno de los procesos más tediosos que pueden perjudicar nuestra productivdad es la reinstalación de un sistema operativo. En general, si nos gusta probar configuraciones nuevas o tenemos una actualización conflictiva con el hardware de nuestro sistema, podemos inestabilizar el sistema y cuya solución es reinstalar el sistema operativo desde cero.

Para facilitar un poco este proceso, podemos hacer un script muy básico en python que puede al menos reinstalar todo nuestro software.

El proceso de automatizar toda la instalación del software es sumamente sencillo. Supongamos que queremos instalar libreoffice e inkscape. Normalmente ejectuaríamos los siguientes comandos de manera independiente

sudo apt update
sudo apt install libreoffice
sudo apt install inkscape

En el proceso se nos solicitará la contraseña y confirmación de instalarlos o en algunos casos confirmar dependencias adicionales mediante comandos del tipo y/n.

1. Crear listado de software

Siguiendo el mismo ejemplo, crearemos un archivo de texto simple con cada una de las líneas con los comandos necesarios.

2. Leyendo el archivo y ejecutándolo

Vamos a leer el archivo usando un script sencillo en python

import os

archivo_comandos = open('instaladores.txt', 'r')

for comando in archivo_comandos:
    os.system(comando)

archivo_comandos.close()

3. Automatizando las respuestas

Las respuestas que la mayoría de los instaladores requieren es y o n. Simplemente ejecutamos en la terminal

sudo yes | python3 instalador.py

La terminal solicitará la contraseña una vez e interpretará que cuando se necesite input del usuario, lo reemplazará por yes.