KPA: Documentación

Este es un proyecto simple para automatizar la clonación de PKGBUILD y construcción a partir de ellos usando el AUR (Arch User Repository), ya que la forma clásica de instalar paquetes desde el AUR es de manera manual, sin embargo, ya que suele ser un proceso complejo, se crean estos programas, desafortunadamente, un helper puede ser riesgoso ya que ejecuta el PKGBUILD sin intervención humana, además que puede ocultar las salidas o incluso reemplazar herramientas clásicas, pues en los PKGBUILD pueden haber comandos maliciosos que se pueden ejecutar pidiendo permisos root al usuario, todo esto rompe la actividad clásica de usar las herramientas propias del sistema Arch Linux.


Disponibilidad

El código fuente de KPA se encuentra en GitHub, está compilado para arquitecturas aarch64 y x86_64, disponibles en releases y se puede automatizar la instalación vía AUR


Por cierto, esta documentación corresponde a la versión 1.4.0 de KPA (la más reciente), para ver la documentación de versiones anteriores, puede ver la documentación anterior e incluso en el historial de versiones para documentación más antigua.


Diferencias de este AUR helper

kpa automatiza y muestra las salidas de las herramientas propias de Arch, el entorno Linux y el control de versiones.
- Tiene varios comandos simples:
-I: Instalar
-A: Actualizar
-D: Desinstalar
-C: Consultar información en un navegador
-R: Reinstalar
-M: Múltiples paquetes
Puede ejecutar kpa -h para obtener más información.
- Confirmación del usuario: Antes de usar makepkg, se le muestra al usuario el PKGBUILD para que lo pueda leer y decidir dentro de la interfaz de consola del programa si quiere continuar o cancelar.
- Python puro: kpa sigue una filosofía minimalista, por ello no usa bases de datos del AUR, controles de versiones innecesarios o configuraciones que no tienen que ver con la libertad con el usuario, kpa solo sigue su objetivo de automatizar y ser útil, por ello usa sus propias carpetas para almacenar los repositorios del AUR clonados, para poder recorrerlos en actualizaciones, verificar su existencia y comparar PKGBUILDs, además de su propia forma de configuración liviana en JSON para darle libertad al usuario sobre como quiere usar su AUR helper sin comprometer peso o portabilidad del programa.
- Sin tantas dependencias: kpa depende de las librerías propias de Python y de unas cuantas externas, lo cual no debe ser un gran peso, ya que Python viene instalado en la mayorpia de sistemas Linux, y las librerías externas se pueden instalar en un entorno virtual vía pip, además se usa solo lo suficiente para la construcción de paquetes del AUR, o sea, Git y makepkg que según la wiki de Arch ya viene por defecto en el paquete Pacman. Además si se descarga la versión ya compilada desde la zona de releases en GitHub o desde el AUR, no se necesitará tener ni Python ni las demás librerías.
- Torsocks: Use opcionalmente torsocks para clonar desde el AUR de manera anónima, se puede activar o desactivar en kpa.json usando valores 'true' o 'false'


Instalación o compilación

Visite este sitio para instalar y/o compilar KPA.


IMPORTANTE: Los paquetes que instale con KPA se guardan en su carpeta .cache, específicamente en .cache/kpa, normalmente suele estar en su ruta de usuario "~", sin embargo dependiendo de como haya instalado y montado su sistema, puede estar en otro lugar, aún así, KPA usa XDG por ende puede encontrar tu carpeta .cache donde esté. Tenga en cuenta esto también para cuando deba reinstalar KPA para recibir actualizaciones a través del mismo.


IMPORTANTE: Los paquetes que instale con KPA se guardan en su carpeta .cache, específicamente en .cache/kpa, normalmente suele estar en su ruta de usuario "~", sin embargo dependiendo de como haya instalado y montado su sistema, puede estar en otro lugar, aún así, KPA usa XDG por ende puede encontrar tu carpeta .cache donde esté.


El parámetro -M

permite usar las funciones instalar, desinstalar, actualizar o reinstalar con múltiples paquetes, en este ejemplo se puede ver como se usa con la función actualizar:


    
        $ kpa -M actualizar
        Ruta de KPA encontrada...

        Ingresa los paquetes a los que quieras aplicar la función seleccionada, ingresa separando solo con espacios entre nombres de paquetes, no separe con guiones o comas.
        Nombre de los paquetes: paquete1 paquete2 paquete3
    
    

Como se puede ver una vez se llama a la función actualizar con el -M, se pide más abajo el nombre de los paquetes a los cuales se les va a ejecutar la función, en este caso la función actualizar.


Ejemplo de kpa.json

Este archivo permite a KPA saber que programas externos usar o como se debe comportar, todo con el fin de mejorar la experiencia del usuario y no limitar a que todo el que use KPA sea obligado a usarlo como lo usan los demás, para que no existan problemas en caso de que un usuario no cree el archivo, KPA incluye una configuración interna que se usa hasta que exista el archivo de configuración.
Tenga en cuenta que si crea este archivo de configuración debe definir todas las variables, pues una vez se crea el archivo KPA no usa más las variables que tenía por defecto, y si una variable no está definida en el JSON se producirá un error. A continuación, se explica para que se usan cada una de las variables en el archivo kpa.json en caso de que quiera personalizar la experiencia:
El archivo a partir de la versión 1.4.0 se ubica en .config/kpa/kpa.json si tenía el archivo en la antigua ruta .cache/kpa/kpa.json, el AUR helper en su nueva versión moverá el archivo a la nueva ruta (creando el mismo la carpeta), si no es el caso, entonces usted deberá crear la carpeta 'kpa' en su carpeta .config y dentro de ella crear kpa.json


Ejemplo de kpa.json

Ejemplo de kpa.json

Volver a Inicio