hsh(1)
| HSH(1) | User Commands | HSH(1) |
NAME
hsh - build package using hasher utilities
SYNOPSIS
hsh [options] [<path-to-workdir>]
<package>...
hsh [options] --workdir=DIR <package>...
hsh [options] --initroot-only
[<path-to-workdir>]
hsh [options] --initroot-only --workdir=DIR
hsh [options] --cleanup-only
[<path-to-workdir>]
hsh [options] --cleanup-only --workdir=DIR
hsh [options] --printenv-only
[<path-to-workdir>]
hsh [options] --printenv-only --workdir=DIR
DESCRIPTION
hsh - build package using hasher utilities.
<path-to-workdir> must be valid writable directory.
OPTIONS
- --with-stuff / --without-stuff
- Controls whether to use results of previous builds stored in <path-to-workdir>/repo during setup of a new build environment. Default is to use this stuff. ($no_stuff);
- --number=NUMBER
- Choose a subconfig identifier (positive integer). By default, simultaneous builds are not allowed, so user can do at most a single build in every point of time. To overcome this restriction, an additional pseudouser pairs should be created by hasher-useradd(8). The subconfig identifier defines the pair to use. Additionally, when NUMBER starts with slash character, it specifies a directory to deduce the subconfig identifier from. ($number);
- --mountpoints=LIST
- Comma-separated list of known mount points. Every build dependency that belongs to this list will be mounted. If some mount point is not explicitly allowed in hasher-priv.conf(5), then the build will fail. ($known_mountpoints);
- --apt-config=FILE
- path to custom apt.conf file ($apt_config);
- --apt-prefix=DIR
- path to apt directory prefix (e.g. /usr) ($apt_prefix);
- --build-args=ARGS
- a deprecated synonym for --rpmbuild-args;
- --build-srpm-only
- do not build binary packages, produce src.rpm only;
- --cleanup-only
- do not build at all, just cleanup workdir;
- --eager-cleanup
- cleanup build environment after each successful build ($lazy_cleanup);
- --lazy-cleanup
- cleanup build environment before each new build ($lazy_cleanup);
- --excludedocs
- do not install documentation files ($exclude_docs);
- --hasher-priv-dir=DIR
- alternative hasher-priv directory ($def_hasher_priv_dir);
- --initroot-only
- do not build, stop after initroot stage;
- --printenv
- print configuration environment variables;
- --install-langs=LIST
- colon-separated list of languages to install ($def_install_langs);
- --repo-mountpoints=LIST
- comma-separated list of mountpoints containing a repo used for image building ($repo_mountpoints);
- --cache-compress=FILE
- alternative cache compress executable ($cache_compress);
- --cache-dir=DIR
- alternative cache directory ($cache_dir);
- --no-cache
- do not use initroot cache ($no_cache);
- --no-contents-indices
- do not use content indices ($no_contents_indices);
- --no-repackage-source
- do not repackage source along with binaries ($repackage_source);
- --no-sisyphus-check-in[=LIST]
- do not run sisyphus_check input tests [specified in comma-separated LIST] ($no_sisyphus_check_in);
- --no-sisyphus-check[=LIST]
- do not run sisyphus_check tests [specified in comma-separated LIST] ($no_sisyphus_check);
- --no-sisyphus-check-out[=LIST]
- do not run sisyphus_check output tests [specified in comma-separated LIST] ($no_sisyphus_check_out);
- --nprocs=NUMBER
- number of CPUs to use ($nprocs);
- --packager=EMAIL
- override default RPM packager tag ($packager);
- --pkg-build-list=LIST
- override default build package file list ($pkg_build_list);
- --pkg-init-list=LIST
- override default initial package file list ($pkg_init_list);
- --predb-prog=FILE
- program to run inside the chroot after unpacking of init list packages, but before rpmi --justdb ($prog_predb);
- --query-repackage
- repackage the source before query for requirements (default) ($query_repackage);
- --no-query-repackage
- query original source package for requirements;
- --query-req-prog=FILE
- program to run to query for requirements instead of autogenerated script ($prog_query_req);
- --rebuild-prog=FILE
- program to run for rebuild instead of autogenerated script ($prog_rebuild);
- --repackage-source
- repackage source along with binaries ($repackage_source);
- --repo=DIR
- repository directory ($def_repo);
- --repo-bin=DIR
- binary packages destination directory, overriding --repo option for binary packages ($repo_bin);
- --repo-src=DIR
- source packages destination directory, overriding --repo option for source packages ($repo_src);
- --images=DIR
- image output directory ($def_images);
- --rpmbuild-args=ARGS
- extra arguments for rpmbuild ($rpmargs);
- --save-fakeroot
- save fakeroot state ($save_fakeroot);
- --target=ARCH
- target architecture ($def_target);
- --wait-lock
- wait for workdir and hasher-priv locks ($lock_nowait);
- --no-wait-lock
- do not wait for workdir and hasher-priv locks ($lock_nowait);
- --img-apt-config
- path to a custom apt.conf file used for image building ($img_apt_config);
- --with-qemu=ARCH
- copy qemu executable into the chroot .host directory;
- --workdir=DIR
- path to workdir to use ($workdir);
- -q, --quiet
- try to be more quiet;
- -v, --verbose
- print a message for each action;
- -V, --version
- print program version and exit;
- -h, --help
- show this text and exit.
Correspondent config file variable, if any, is mentioned by dollar sign at the end of option description ($like_this).
FILES
~/.hasher/config - user config file sourced by all hasher utilities; uses shell syntax.
- ~/.hasher/install/post
- - postinstall script; mkchroot copies it into chroot, and install executes the copy at the end of the package installation transaction.
- Working directory contents:
- aptbox
- - created automatically by mkaptbox(1), required for apt.
- cache
- - build environment and rpm database cache, created automatically by initroot.
- chroot
- - build environment, created automatically by mkchroot.
- pid
- - pid file, handled internally by hsh.
- repo
- - package repository, contains the build results.
AUTHOR
Written by Dmitry V. Levin <ldv@altlinux.org> et al.
REPORTING BUGS
Report bugs to https://bugzilla.altlinux.org/
COPYRIGHT
Copyright © 2003-2022 Dmitry V. Levin
<ldv@altlinux.org>
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
SEE ALSO
mkaptbox(1), hsh-initroot(1), hsh-install(1), hsh-mkchroot(1), hsh-rebuild(1), hsh-rmchroot(1), hsh-run(1), hasher-priv.conf(5), hasher(7), hasher-useradd(8).
| April 2024 | hasher 1.7.4 |
