Skip to content

Latest commit

 

History

History
178 lines (148 loc) · 9.6 KB

Documentation.md

File metadata and controls

178 lines (148 loc) · 9.6 KB

Scripts

Devkit contains a list of scripts used by Sabayon for building process and for manage package injection to repositories.

List of files

  • depcheck: a tool to report both undeclared and potentially-unused runtime dependencies.

  • dynlink-scanner: a tool for retrieve list of linked libraries used by a package. Use try_dlopen execute binary.

  • sabayon-brokenlibs: a tool for retrieve list of all dependencies of a binary through equo and equery tools. Print list of dependencies. This script depends on:

    • equo
    • equery
    • sabayondevkit-functions.sh
  • sabayon-buildpackages: Script for Spawning the package builder container. This script depends on:

    • sabayondevkit-functions.sh
  • sabayon-bz2brokenlibs: Unpack bz2 tarball and execute sabayon-brokenlibs to every files unpacked. This script depends on:

    • sabayondevkit-functions.sh
  • sabayon-createrepo: Script for spawning container for commit packages to a repository and create it if doesn't exists. This script depends on:

    • sabayondevkit-functions.sh
  • sabayon-createrepo-cleanup: Script for spawning container for cleanup expired packages from a repository. This script depends on:

    • sabayondevkit-functions.sh
  • sabayon-createrepo-remove: Script for spawning container for remove a list of packages from a repository. This script depends on:

    • sabayondevkit-functions.sh
  • sabayon-detectobsolete: Perl script for found obsolete packages in an overlay. Possible options are: --arch, --overlay and --verbose. This script depends on:

    • querypkg
  • sabayon-entropypreservedlibs: Perl script for retrieve list of packages that has dependencies to old libraries. See also here

  • sabayon-help-info: Bash script for grabbing system information and post to sabayon pastebin. This script depends on:

    • pastebunz
  • sabayon-maint-helper: Script for builder boxes maintenance. Possible options are:

    • --installed: For upgrades all the packages installed in the box.
    • --obsolete: Upgrade ONLY the packages that are listed obsolete
    • --all: Tries to upgrade all packages
    • --category: Tries to upgrade/install all packages present in a specified category. This script depends on:
    • sabayondevkit-functions.sh
  • sabayon-tbz2extract: Python script for extract tbz2 package.

  • sabayon-tbz2truncate: Python script for truncate tbz2 package

  • sabayon-xpakextract: Python script for convert tbz2 in .xpak file

  • builder: Perl script for build packages.

Scripts Variables

sabayon-createrepo

Env Variable Default Description
SAB_WORKSPACE $PWD Workspace directory
REPOSITORY_NAME default Name of the repository to create.
REPOSITORY_DESCRIPTION My Sabayon repository Description of the repository to create.
DOCKER_IMAGE sabayon/eit-amd64 Docker image to use on create repository
PORTAGE_ARTIFACTS $SAB_WORKSPACE/portage_artifacts Directory of the artifacts to insert on repository
OUTPUT_DIR $SAB_WORKSPACE/entropy_artifacts Output directory of the repository
DOCKER_OPTS --ti --rm Docker options to pass on run container.
PUBKEY - Define file to mount as volume to /etc/entropy/mykeys/key.pub
PRIVATEKEY - Define file to mount as volume to /etc/entropy/mykeys/private.key

sabayon-createrepo-cleanup

Env Variable Default Description
SAB_WORKSPACE $PWD Workspace directory
REPOSITORY_NAME default Name of the repository to clean.
REPOSITORY_DESCRIPTION My Sabayon repository Description of the repository to clean.
DOCKER_IMAGE sabayon/eit-amd64 Docker image to use on clean repository
OUTPUT_DIR $SAB_WORKSPACE/entropy_artifacts Directory of the repository
DOCKER_OPTS --ti --rm Docker options to pass on run container.
PUBKEY - Define file to mount as volume to /etc/entropy/mykeys/key.pub
PRIVATEKEY - Define file to mount as volume to /etc/entropy/mykeys/private.key

sabayon-createrepo-remove

Env Variable Default Description
SAB_WORKSPACE $PWD Workspace directory
REPOSITORY_NAME default Name of the repository where remove packages.
REPOSITORY_DESCRIPTION My Sabayon repository Description of the repository.
DOCKER_IMAGE sabayon/eit-amd64 Docker image to use on clean repository
OUTPUT_DIR $SAB_WORKSPACE/entropy_artifacts Directory of the repository
DOCKER_OPTS --ti --rm Docker options to pass on run container.
PUBKEY - Define file to mount as volume to /etc/entropy/mykeys/key.pub
PRIVATEKEY - Define file to mount as volume to /etc/entropy/mykeys/private.key

sabayon-buildpackages

Env Variable Default Description
SAB_WORKSPACE $PWD Workspace directory
DOCKER_IMAGE sabayon/builder-amd64 Docker image to use for compilation
SAB_ARCH intel Name of arch to use defined on build Sabayon project
DOCKER_PULL_IMAGE 0 If try to pull last image (1) or use local version
MAKE_CONF $SAB_WORKSPACE/specs/make.conf Path of make.conf custom to supply on compilation
OUTPUT_DIR $SAB_WORKSPACE/portage_artifacts/ Where are written portage artifacts compiled
LOCAL_OVERLAY $SAB_WORKSPACE/local_overlay/ Directory to use for supply local overlay as volume of the image on compilation
ENTROPY_REPOSITORY main Sabayon repository to use: weekly, main or testing
DOCKER_OPTS --ti --rm --cap-add=SYS_PTRACE Options to use on running Docker image
PORTAGE_CACHE - If present permit to supply host portage directory to container
BUILDER_PROFILE - Permit to choice Gentoo Profile to use
EMERGE_SPLIT_INSTALL - Possible values are 0/1.
BUILDER_JOBS 1 Define number of jobs for emerge phase.
USE_EQUO 1 Use equo for install and align compilation environment.
PRESERVED_REBUILD 0 Execute (emerge @preserve-rebuild)
EQUO_INSTALL_ATOMS 1 Try to install existing dependencies from equo repositories
DEPENDENCY_SCAN_DEPTH 2 Define depth level for dependencies calculation
FEATURES "parallel-fetch protect-owned compressdebug splitdebug -userpriv" Override Gentoo FEATURES variable
EMERGE_DEFAULTS_ARGS "--accept-properties=-interactive --verbose --oneshot --complete-graph --buildpkg" Override default emerge options
EQUO_INSTALL_VERSION 0
EQUO_SPLIT_INSTALL 0
ARTIFACTS_DIR - Additional directory where copy artifacts
ENTROPY_REPOSITORY main Choice repository to use. Values: main, weekly, testing
SKIP_PORTAGE_SYNC 0 Skip portage sync before compilation
EQUO_MIRRORSORT 1 Execute equo mirrorsort before compilation
WEBRSYNC 0 Use webrsync instead of defult rsync
ENMAN_REPOSITORIES - Define list of enman repositories to add
REMOVE_ENMAN_REPOSITORIES - Define list of enman repositories to remove
DISTFILES - Permit to mount volume to /usr/portage/distfiles directory and speedup download phase if packages are already available
INTERNAL_BUILDER - Define a host builder to use instead of docker builder binary
ENTROPY_DOWNLOADED_PACKAGES - Mount volume to /var/lib/entropy/client/packages to use caching on download equo packages
DISTCC_HOSTS - Override Gentoo DISTCC_HOSTS variable to use DISTCC
PRUNE_VIRTUALS 0 Prune virtuals packages to avoid conflicts.
REPOSITORY_NAME - Add single enman repository (for compilation of scr repository itself)
ENMAN_ADD_SELF 0 If add with enman repository define on REPOSITORY_NAME variable
EQUO_MASKS - Define a list of packages to mask with equo mask command
EQUO_UNMASKS - Define a list of packages to unmask with equo unmask command
EMERGE_REMOVE - Define a list of packages to remove with emerge -C command before compilation
REMOTE_OVERLAY - Define a list of overlay to add before compilation
REMOVE_LAYMAN_OVERLAY - Define a list of overlays to remove before compilation
REMOTE_REMOTE_OVERLAY - Define a list of files under /etc/portage to remove
QA_CHECKS - Execute quality check on packages. repoman, dynlink-scanner and depcheck
REMOTE_CONF_PORTDIR - If defined permit to define a git repository to clone under /etc/portage directory.
REMOTE_PORTDIR - If defined permit to define a git repository to clone under /usr/portage directory.
ETP_NOCACHE - Define ETP_NOCACHE variable on environment
PRETEND 0 If set to 1 append -p option to emerge commands.
BUILDER_VERBOSE 0 If set to 1 add verbose to builder program.
DETECT_OBSOLETE 0 Execute script sabayon-detectobsolete to target overlay to found obsolete ebuilds.
TARGET_OVERLAY - Define overlay where execute sabayon-detectobsolete script. Require DETECT_OBSOLETE variable set to 1.
LOCAL_OVERLAY - Define a directory to mount as volume to /usr/local/local_portage
SHARE_WORKSPACE - If defined mount volume defined on SAB_WORKSPACE variable to /devkit-workspace
PRE_SCRIPT - Mount a custom script to /pre-script execute before compilation
POST_SCRIPT - Mount a custom script to /post-script execute after packages compilation
MAKE_CONF - If defined mount defined file to /etc/portage/make.conf.custom and define variable MAKE_CONF to bet to mounted path.