checksumbot(1)

CHECKSUMBOT(1) Checksum and verification utils CHECKSUMBOT(1)

NAME

checksumbot - OS checksum generator robot

SYNOPSIS

checksumbot [ options ] [-a ARCH -c CONFIG ]

DESCRIPTION

checksumbot is a tool to generate and update *.chksum files for a particular OS distribution on regular basis. It uses mkimage-profiles(1) toolkit to build a target OS TAR image that contain *.chksum files and then updates the automatically maintained GIT repository with acquired checksum data.

Most of the parameters are specified via the configuration file. However, it seems handy to keep it possible to override some of the parameters on the command line. As the configuration file is simply sourced by the checksumbot script, be careful to properly maintain its syntax, making precautions not to override those option values that are already set in the environment (i. e. use ${VAR:-VALUE} syntax for parameters that has corresponding command-line options).

OPTIONS

-a ARCH, --arch=ARCH
Set $ARCH environment variable to the specified ARCH.
-m MKIPDIR, --mkip=MKIPDIR
Set $MKIPDIR environment variable to the specified path.
-r MKIPREF, --ref=MKIPREF
Set $MKIPREF environment variable to the specified path.
-o OUTDIR, --out=OUTDIR
Set $OUTDIR environment variable to the specified path.
-b CHKSUMBRANCH, --cb=CHKSUMBRANCH
Set the $CHKSUMBRANCH environment variable to the specified value.
-d CHKSUMDIR, --cd=CHKSUMDIR
Set the $CHKSUMDIR environment variable to the specified value.
--gpgkey=GPGKEY
Set the $GPGKEY environment variable to the specified value.
-l LOGFILE, --log=LOGFILE
Set $LOGFILE environment variable to the specified path.
-E, --nolog
Output all messages to stderr (same as -l'').
--nopush
Do not push the updates (sets $NOPUSH=1).
--push
Push the updates (sets $NOPUSH=0).
-v, --verbose
Print additional informational messages ($VERBOSE=1).
-q, --quiet
Don't print informational messages ($VERBOSE=0).
-n, --dry-run
Print the final configuration and exit.
--setup
If specified before -c CONFIG instead of reading it writes it dumping the current and default values, then exit. Otherwise -- dumps the current values to stdout and exit.
-c CONFIG, --conf=CONFIG
Read-in the configuration file CONFIG. However, in --setup mode (over)writes the given configuration file.
--init
Perform checksum Git repository initialization at $CHKSUMDIR and exit. The $CHKSUMDIR/$CHKSUMPATH/ directory is expected to exist and to contain *.chksum files. Implies -E.
--srpm-list=SRPMLIST
Path to SRPM package list file to be copied under $CHKSUMDIR/list/ in the repository initialization mode.
--rpm-list=RPMLIST
Path to RPM package list file to be copied under $CHKSUMDIR/list/ in the repository initialization mode.
--rd=README
Path to a README file to copy to $CHKSUMDIR in the repository initialization mode.
-V, --version
Print program version and exit.
-h, --help
Show help text and exit.

CONFIGURATION FILE

It is recommended that the configuration file is obtained by the --setup option: the generated version contain the mentioned ${VAR:-VALUE} expressions for command-line options and also some comments, briefly describing the parameters. If not sure, use

checksumbot --setup -c example.conf
to get an example.
DISTROVER
Distribution version (for instance, "10.2.1"). Though, it isn't in direct use by checksumbot, it seems handy to use this variable define (and redefine) other configuration values.
MKIPDIR
Path to clone mkimage-profiles(1) into. If not set, then a $TMPDIR-based path is used. Make sure not to override -m, --mkipdir command-line option (i. e. use MKIPDIR="${MKIPDIR:-your value}" form.
MKIPURL
URL to clone mkimage-profiles(1) from.
MKIPREF
A commit or a tag to pull when cloning mkimage-profiles(1).
MKIPKEY
SSH key to use when cloning mkimage-profiles(1). The key is not necessary if the repository is publicly available.
DISTRO
Name of the distro target to build with mkimage-profiles(1).
OUTDIR
Path for mkimage-profiles(1) resulting files. If not set then $TMPDIR-based directory is used. Make sure not to override -o, --out command-line option (i. e. use OUTDIR="${OUTDIR:-your value}" form).
CHKSUMDIR
Local path to checksum git repository. If not set then $TMPDIR-based directory is used.
CHKSUMURL
An URL to clone checksum git repository from (and also, to push new commits to).
CHKSUMKEY
SSH key to use when cloning (and pushing) checksum git repository. The key is not necessary if the repository is publicly available (AFAIK, the key is needed anyway in order to push the commits).
CHKSUMPATH
Checksum subtree path to extract from TAR distro and also the path to place the extracted checksums into the repository.
BRANCH
RPM package repository branch (i. e. p10, c10f2, ...).
ARCH
Target architecture. Make sure not to override -a, --arch command-line option (i. e. use ARCH="${ARCH:-your value}" form).
APTCONF
apt(8) configuration file for regular incremental updates. If empty then the system or user default is used.
APTRELEASE
apt(8) configuration file for checksum branch initialization. If empty then the value defined for APTCONF is used (not recommended).
CHECKSUMDIFF
Path to the checksumdiff(1) script. If not specified, then $PATH is used. Moreover, when checksumbot is run from some user location, it tries to find checksumdiff by the path relative to itself.
CHECKSUMMERGE
Path to the checksummerge(1) script. If not specified, then $PATH is used. Moreover, when checksumbot is run from some user location, it tries to find checksummerge by the path relative to itself.
CHKSUMBASE
Base branch of the checksum git repository (it is used to initialize new release branches).
CHKSUMBRANCH
The branch of the checksum git repository for regular updates. If not exists, then a new branch with the given name is initialized from CHKSUMBASE.
PRIVDIR
A path to keep temporary (!) sensible data (in particular, temporary $GNUPGHOME is made there). If not set then $TMPDIR-based directory is used.
GPGKEY
GnuPG secret key to sign the resulting checksum commit with.
VERBOSE
Set to nonzero to enable verbose mode. Make sure not to override -v, --verbose command-line option (i. e. use VERBOSE="${VERBOSE:-your value}" form).
NOPUSH
Set to nonzero to skip pushing to the checksum repository default. Make sure not to override --push command-line option (i. e. use NOPUSH="${NOPUSH:-your value}" form).
LOGFILE
Path to log file. If not set then the messages are printed to stderr. Make sure not to override -l, --log command-line option even if it is empty (i. e. use LOGFILE="${LOGFILE-your value}" form).
INCLUDE_RPM_LISTS
Whether to include RPM package list files into the checksum repository.

BUGS

Report bugs to https://bugzilla.altlinux.org/.

COPYRIGHT

Copyright © BaseALT, Ltd. License GPLv2+: GNU GPL version 2 or later See <http://gnu.org/licenses/gpl.html> for more information.
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.

SEE ALSO

checksumgen(1), checksumdiff(1), checksummerge(1), mkimage-profiles(1).

2026 checksumbot 0.4.7