Brut es un script de shell de un solo archivo que funciona como ejecutable frontal para la creación de programas de línea de comandos en sistemas Unix. Su objetivo principal es facilitar la construcción de herramientas altamente portables que dependen únicamente de las utilidades básicas especificadas por POSIX.1-2024, eliminando la necesidad de gestionar dependencias de tiempo de ejecución complejas o binarios específicos de cada sistema operativo.
El sistema opera mediante un mecanismo de enrutamiento (routing) que analiza el nombre del archivo y el primer argumento para determinar qué comando ejecutar, una estrategia popularizada por la interfaz de línea de comandos de Git. Esta arquitectura permite dividir un programa en múltiples ejecutables y archivos de librería compartidos, organizados en una estructura de directorios convencional. Este enfoque contrarresta la complejidad de los scripts de shell que superan las doscientas líneas, ya que cada comando se convierte en un proceso independiente con su propio estado de salida, lo que facilita la depuración y la gestión de sistemas de construcción.
Técnicamente, Brut se compone de aproximadamente 120 líneas de código que establecen variables de entorno y modifican la variable PATH para localizar los ejecutables. El script gestiona la inicialización del entorno, la extensión de la ruta de búsqueda y la gestión de errores. Al ser un script, Brut es ideal para crear sistemas de construcción autocontenidos y alternativas a los frameworks de aplicaciones de línea de comandos escritos en otros lenguajes, ofreciendo una solución ligera y portable para la infraestructura de software Unix.
