PKG es un administrador de paquetes simple y rápido para el repositorio de paquetes de Slackware en Slackbuilds.org.
Yo en realidad uso SLPKG, pero siempre es bueno contemplar una alternativa.
Instalación
Se proporciona un archivo SlackBuild en Slackbuilds.org (https://slackbuilds.org/repository/15.0/system/pkg/)
make && sudo make install Compilará el programa, le asignará el mismo nombre que el directorio de este directorio (pkg si simplemente lo clonaste desde Git) y lo instalará en la ubicación predeterminada /usr/local/bin. Edita el archivo Makefile o pasa argumentos a make (ej. make PREFIX=$HOME/.local) para cambiar la ubicación de instalación, el nombre del binario, etc.
Configuración
Además de los flags (banderas) de la línea de comandos, todos los comandos externos (para actualizar el repositorio, instalar paquetes, etc.), las rutas de archivo (predeterminadas), las propias banderas de la línea de comandos y muchas otras configuraciones se pueden cambiar mediante la edición lib/pkg/config.go y la recompilación. Consulte los comentarios del archivo para obtener más información. No se requieren conocimientos de [nombre del archivo] para cambiar estas configuraciones.
Este archivo README y la página de manual se generan parcialmente de forma automática a partir de la ayuda del programa. Ejecuta make doc antes de make install para regenerarlo en caso de haber modificado las opciones de la línea de comandos aceptadas.
Dependencias
Todas las dependencias están presentes en una instalación predeterminada de Slackware. go Se requiere un compilador para compilar el programa. A pesar de la biblioteca estándar de Go, no se utilizan otras bibliotecas. En la configuración predeterminada, curl se utiliza para descargar archivos, git mantener el repositorio actualizado, installpkg instalar/actualizar paquetes y bash ejecutar las compilaciones de Slack. Estos se pueden modificar en src/config.go.
Para reconstruir la página de manual, necesitas [Nombre del archivo] go-md2man. Si deseas usar otro conversor de Markdown a Roff, pasalo al archivo makefile make doc MD2MAN=yourconverter (debe aceptar un nombre de archivo de entrada y escribir el resultado en la salida estándar).
Para comprobar la cobertura de la prueba unitaria, make cover necesita el paquete google-go-lang de Slackbuilds.org make test, que ejecuta las pruebas, las configuraciones -vet=off y, por lo tanto, también funciona con gccgo enviado con Slackware.
API
La función principal Run del paquete se puede encapsular. Sin embargo, es una función de alto nivel que no permite mucha personalización. El paquete lib/pkg incluye funciones útiles para interactuar programáticamente con un repositorio de SlackBuilds (analizando el repositorio, resolviendo dependencias, etc.) .lib/sbo Repo
Uso
Si se invoca sin argumentos, leerá los paquetes separados por espacios en blanco de [nombre del archivo] /etc/pkg/pkg_list.txt, resolverá sus dependencias y los instalará o actualizará en el orden correcto si aún no están instalados o son anteriores a la versión del repositorio. Se le solicitará al usuario que, opcionalmente, excluya paquetes de la lista si no se proporciona -y [nombre del archivo]. Si el nombre del paquete está en [nombre del archivo] /etc/pkg/pkg_list.txt seguido de key=valuepares, estos se pasarán a Slackbuild como variables de entorno. Por ejemplo, mypackage FOO=bar establecerá la variable de entorno FOO en [nombre del archivo] al barcompilar [ nombre del archivo] mypackage. Además, si el archivo /etc/pkg/mypackage.prebuild existe y es ejecutable, se ejecutará antes de la compilación (y después de descargar el código fuente de [nombre del archivo]) mypackage. El primer argumento que se pasa al script de precompilación es la ruta al directorio que contiene el código fuente/slackbuild del paquete.
Se puede generar una inicial pkg_list.txt ejecutando pkg -l (enumerar los paquetes SBo instalados) y luego eliminando los paquetes que no usa directamente pero que son, es decir, dependencias de otros paquetes.
pkg También actualiza [el archivo /etc/slackpkg/blacklist] para que los paquetes huérfanos se eliminen automáticamente al ejecutarse slackpkg clean-system, y los paquetes en [el archivo] /etc/pkg/pkg_list.txt y sus dependencias no se eliminen. Para lograr esto, primero copia /etc/pkg/blacklist[ el archivo] /etc/slackpkg/blacklist y luego añade los paquetes en [el /etc/pkg/pkg_list.txt archivo] y sus dependencias a la lista negra. Por lo tanto, copie (partes de) su lista negra original en [el archivo] /etc/pkg/blacklist si desea excluir los paquetes no administrados pkg por [el archivo] de ser eliminados por [el archivo]. slackpkg clean-system De lo contrario, hace una copia de seguridad de tu lista negra original y crea un archivo vacío en [el archivo /etc/pkg/blacklist]. Nota: Si /etc/pkg/blacklist no está presente, pkg se generará un error para garantizar que /etc/slackpkg/blacklist no se sobrescriba por error.
Los paquetes también pueden incluirse en la lista gris /etc/pkg/greylist para que no se instalen pkg pero tampoco se eliminen slackpkg clean-system (ya que todavía se agregan a etc/slackpkg/blacklist.
Si se proporcionan argumentos posicionales, se tratan como nombres de paquetes y se instalan o actualizan en el orden correcto. En este caso, la lista negra no se actualiza. Por lo tanto, pkg mypackage se instalará mypackage y sus dependencias, pero mypackage se eliminará si slackpkg clean-system se ejecuta. Agregar mypackage a /etc/pkg/pkg_list.txt para evitar esto.
pkg También se puede utilizar para ver el README de un paquete o enumerar sus dependencias/dependientes.
De forma predeterminada, clona el repositorio SBo para /var/lib/pkg/sbo sincronizar el repositorio antes si se proporciona el flag -u.
Cualquier bandera no válida como esta -h imprimirá el uso y saldrá.
Opciones
https://slackbuilds.org/repository/15.0/system/pkg/
https://gitlab.com/M0M097/pkg
Que te diviertas!
Yo en realidad uso SLPKG, pero siempre es bueno contemplar una alternativa.
Instalación
Se proporciona un archivo SlackBuild en Slackbuilds.org (https://slackbuilds.org/repository/15.0/system/pkg/)
make && sudo make install Compilará el programa, le asignará el mismo nombre que el directorio de este directorio (pkg si simplemente lo clonaste desde Git) y lo instalará en la ubicación predeterminada /usr/local/bin. Edita el archivo Makefile o pasa argumentos a make (ej. make PREFIX=$HOME/.local) para cambiar la ubicación de instalación, el nombre del binario, etc.
Configuración
Además de los flags (banderas) de la línea de comandos, todos los comandos externos (para actualizar el repositorio, instalar paquetes, etc.), las rutas de archivo (predeterminadas), las propias banderas de la línea de comandos y muchas otras configuraciones se pueden cambiar mediante la edición lib/pkg/config.go y la recompilación. Consulte los comentarios del archivo para obtener más información. No se requieren conocimientos de [nombre del archivo] para cambiar estas configuraciones.
Este archivo README y la página de manual se generan parcialmente de forma automática a partir de la ayuda del programa. Ejecuta make doc antes de make install para regenerarlo en caso de haber modificado las opciones de la línea de comandos aceptadas.
Dependencias
Todas las dependencias están presentes en una instalación predeterminada de Slackware. go Se requiere un compilador para compilar el programa. A pesar de la biblioteca estándar de Go, no se utilizan otras bibliotecas. En la configuración predeterminada, curl se utiliza para descargar archivos, git mantener el repositorio actualizado, installpkg instalar/actualizar paquetes y bash ejecutar las compilaciones de Slack. Estos se pueden modificar en src/config.go.
Para reconstruir la página de manual, necesitas [Nombre del archivo] go-md2man. Si deseas usar otro conversor de Markdown a Roff, pasalo al archivo makefile make doc MD2MAN=yourconverter (debe aceptar un nombre de archivo de entrada y escribir el resultado en la salida estándar).
Para comprobar la cobertura de la prueba unitaria, make cover necesita el paquete google-go-lang de Slackbuilds.org make test, que ejecuta las pruebas, las configuraciones -vet=off y, por lo tanto, también funciona con gccgo enviado con Slackware.
API
La función principal Run del paquete se puede encapsular. Sin embargo, es una función de alto nivel que no permite mucha personalización. El paquete lib/pkg incluye funciones útiles para interactuar programáticamente con un repositorio de SlackBuilds (analizando el repositorio, resolviendo dependencias, etc.) .lib/sbo Repo
Uso
Si se invoca sin argumentos, leerá los paquetes separados por espacios en blanco de [nombre del archivo] /etc/pkg/pkg_list.txt, resolverá sus dependencias y los instalará o actualizará en el orden correcto si aún no están instalados o son anteriores a la versión del repositorio. Se le solicitará al usuario que, opcionalmente, excluya paquetes de la lista si no se proporciona -y [nombre del archivo]. Si el nombre del paquete está en [nombre del archivo] /etc/pkg/pkg_list.txt seguido de key=valuepares, estos se pasarán a Slackbuild como variables de entorno. Por ejemplo, mypackage FOO=bar establecerá la variable de entorno FOO en [nombre del archivo] al barcompilar [ nombre del archivo] mypackage. Además, si el archivo /etc/pkg/mypackage.prebuild existe y es ejecutable, se ejecutará antes de la compilación (y después de descargar el código fuente de [nombre del archivo]) mypackage. El primer argumento que se pasa al script de precompilación es la ruta al directorio que contiene el código fuente/slackbuild del paquete.
Se puede generar una inicial pkg_list.txt ejecutando pkg -l (enumerar los paquetes SBo instalados) y luego eliminando los paquetes que no usa directamente pero que son, es decir, dependencias de otros paquetes.
pkg También actualiza [el archivo /etc/slackpkg/blacklist] para que los paquetes huérfanos se eliminen automáticamente al ejecutarse slackpkg clean-system, y los paquetes en [el archivo] /etc/pkg/pkg_list.txt y sus dependencias no se eliminen. Para lograr esto, primero copia /etc/pkg/blacklist[ el archivo] /etc/slackpkg/blacklist y luego añade los paquetes en [el /etc/pkg/pkg_list.txt archivo] y sus dependencias a la lista negra. Por lo tanto, copie (partes de) su lista negra original en [el archivo] /etc/pkg/blacklist si desea excluir los paquetes no administrados pkg por [el archivo] de ser eliminados por [el archivo]. slackpkg clean-system De lo contrario, hace una copia de seguridad de tu lista negra original y crea un archivo vacío en [el archivo /etc/pkg/blacklist]. Nota: Si /etc/pkg/blacklist no está presente, pkg se generará un error para garantizar que /etc/slackpkg/blacklist no se sobrescriba por error.
Los paquetes también pueden incluirse en la lista gris /etc/pkg/greylist para que no se instalen pkg pero tampoco se eliminen slackpkg clean-system (ya que todavía se agregan a etc/slackpkg/blacklist.
Si se proporcionan argumentos posicionales, se tratan como nombres de paquetes y se instalan o actualizan en el orden correcto. En este caso, la lista negra no se actualiza. Por lo tanto, pkg mypackage se instalará mypackage y sus dependencias, pero mypackage se eliminará si slackpkg clean-system se ejecuta. Agregar mypackage a /etc/pkg/pkg_list.txt para evitar esto.
pkg También se puede utilizar para ver el README de un paquete o enumerar sus dependencias/dependientes.
De forma predeterminada, clona el repositorio SBo para /var/lib/pkg/sbo sincronizar el repositorio antes si se proporciona el flag -u.
Cualquier bandera no válida como esta -h imprimirá el uso y saldrá.
Opciones
- -b Mostrar scripts de compilación para los paquetes dados
- -d Mostrar información para los paquetes dados
- -f ruta de la cadena al archivo de entrada (predeterminado "/etc/pkg/pkg_list.txt")
- -g ignorar la lista gris
- -i no filtrar los paquetes instalados
- -l lista de paquetes instalados
- -m omitir comprobaciones de MD5Sum
- -n no instale dependencias
- -r La visualización de cadenas depende del paquete dado
- -s buscar un paquete
- -t Realizar un seguimiento de los paquetes proporcionados (mostrar todas las dependencias)
- -u actualizar el repositorio
- -v mostrar la versión del paquete
- -y Omitir todas las indicaciones
https://slackbuilds.org/repository/15.0/system/pkg/
https://gitlab.com/M0M097/pkg
Que te diviertas!


































