[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

SlackBuild scripts

Un script de SlackBuild es un script de shell (generalmente compatible con el shell Bourne) que automatiza el proceso de configuración, compilación y creación de un paquete de Slackware (* .tgz, * .txz, * .tbz) desde los archivos de origen.

Descripción general

El proceso básico de crear un paquete Slackware desde la fuente se puede resumir de la siguiente manera, mientras que los detalles pueden variar de un sistema de compilación a otro.

  1. Descomprima el archivo fuente (generalmente el archivo .tar.gz o .tar.bz2) en un “directorio de trabajo”.
  2. Cree un archivo slack-desc , con la descripción del software en el formato correcto.
  3. Configure la fuente y aplique parches si es necesario.
  4. Compilar/construir la fuente y generar los binarios.
  5. Instalar el programa en un directorio temporal. Este paso puede ser un poco complicado, dependiendo de cómo funciona el make install (o funcionalidad similar) del sistema de compilación. En los archivos GNU estándar, la variable DESTDIR que se pasa al comando make install debería ser suficiente. En los Makefiles y sistemas de compilación no estándar que no admiten esa opción, esto podría implicar parchear el Makefile (o archivo similar) o editar una configuración de configuración de compilación del sistema de compilación.
  6. Copie la documentación del programa y otros archivos necesarios (incluidos los scripts posteriores a la instalación) a los subdirectorios apropiados en el directorio de instalación temporal. Estas ubicaciones deben adherirse a la estructura de directorios predeterminada utilizada por Slackware para almacenar aplicaciones instaladas por el administrador de paquetes, a saber. dentro de la carpeta /usr/ .

- Use la utilidad makepkg del directorio temporal (ubicación de instalación) para crear un paquete Slackware que luego puede instalarse usando la utilidad installpkg .

Si bien los pasos anteriores se pueden hacer a mano, el proceso es tedioso, a veces complejo, e implica escribir muchos comandos. La automatización del proceso mediante un script de shell permite al usuario compartir el proceso con la comunidad en general. También tiene sentido utilizar y modificar los scripts existentes de SlackBuild para actualizar el mismo programa a una versión más nueva.

Creando scripts SlackBuild

Se puede encontrar un buen tutorial práctico sobre cómo crear un script SlackBuild aquí, y también hay algunos plantillas disponible para tener una idea de lo que se necesita de un script.

Sin embargo, el software puede estar escrito en diferentes lenguajes de programación, usar diferentes sistemas de compilación, o simplemente puede estar escrito en un lenguaje de programación interpretado sin una forma obvia de “instalarlo”. En tales casos, muchos pasos involucrados en la escritura de un script de SlackBuild diferirán de la forma estándar. Copiar y pegar a ciegas comandos de otros scripts de SlackBuild puede o no funcionar.

Se recomienda que cualquiera que desee escribir un script de SlackBuild, estudie y comprenda el sistema de compilación de un proyecto de software antes de intentar escribir un script de SlackBuild para él. Un grado de dominio en la escritura de scripts de shell también es un beneficio definitivo, ya que es una práctica utilizar scripts compatibles con el shell Bourne para SlackBuilds. Idealmente, los proyectos C simples que utilizan el sistema GNU Make estándar son una buena manera de comenzar a practicar la escritura de scripts SlackBuild.

Para los nuevos escritores de scripts, es una buena idea realizar los pasos anteriores manualmente para crear el paquete desde la fuente, antes de escribir un guión SlackBuild. Esto reduce las posibilidades de errores y comportamiento inesperado en el script.

El envío de scripts de SlackBuild a un repositorio público como http://www.slackbuilds.org también puede requerir el cumplimiento de ciertas convenciones y estándares de codificación. Por ejemplo, sería necesario que el script determinara la arquitectura de destino en tiempo de ejecución en lugar de codificarla en el script. Estos estándares intentan hacer que los scripts de SlackBuild sean lo más portátiles posible.

Generadores automatizados de SlackBuild

Existen algunas herramientas que pueden ayudarle a crear un script de SlackBuild. Aquí están algunos ejemplos.

Enlaces externos

Fuentes

  • Escrito originalmente porV.Harishankar for the SlackDocs Wiki Project
  • Traducido por: Victor 2019/02/12 12:24 (UTC)

 es:slackware:slackbuild_scripts ()