pmaint - system/repository maintenance utility¶
Synopsis¶
pmaint [-h] [--version] [--debug] [-q] [-v] [--color BOOLEAN]
[--config CONFIG_PATH]
{sync,copy,regen,env-update,eclass} ...
Base Options¶
- -h, --help¶
Show this help message and exit. To get more information see the related man page.
- --version¶
Show this program’s version information and exit.
When running from within a git repo or a version installed from git the latest commit hash and date will be shown.
- --debug¶
Enable debug checks and show verbose debug output.
- -q, --quiet¶
Suppress non-error, informational messages.
- -v, --verbose¶
Increase the verbosity of various output.
- --color BOOLEAN¶
Toggle colored output support. This can be used to forcibly enable color support when piping output or other situations where stdout is not a tty.
Config Options¶
- --config CONFIG_PATH¶
The path to a custom pkgcore config file or portage config directory can be given to override loading the default system config.
Alternatively, an argument of ‘false’ or ‘no’ will skip loading the system config entirely if one exists.
Subcommands¶
general system maintenance
pmaint sync - synchronize a local repository with its defined remote¶
Synopsis¶
pmaint sync [-h] [--debug] [-q] [-v] [--color BOOLEAN] [-f]
[--import REPO] [--import-masters PATH]
[repo ...]
Positional Arguments¶
- repo¶
repo(s) to sync
Options¶
- -f, --force¶
force syncing to occur regardless of staleness checks
- --import REPO¶
Look a repository up by name in Gentoo’s published repository list, write a
repos.confentry for it, and sync it. Pass the option again to add more than one repo.New repos land beside the repos already being synced, which is
/var/db/reposon an ordinary install, and get a file of their own whenrepos.confis a directory. The list is fetched from https://api.gentoo.org/overlays/repositories.xml and cached locally.A repo that’s already configured is simply synced, so an import can be repeated without failing.
Importing leaves the rest of the configured repos alone; name them as arguments to sync those as well.
- --import-masters PATH¶
Read the masters of the repo at the given path, add the ones that aren’t configured yet, and sync them all.
Masters of masters are followed as each repo is synced and its own
layout.confbecomes readable, so the repo ends up with everything it inherits from present and current. That makes it the one command a CI run needs before checking a repo it doesn’t own the parents of.
Base Options¶
- -h, --help¶
Show this help message and exit. To get more information see the related man page.
- --debug¶
Enable debug checks and show verbose debug output.
- -q, --quiet¶
Suppress non-error, informational messages.
- -v, --verbose¶
Increase the verbosity of various output.
- --color BOOLEAN¶
Toggle colored output support. This can be used to forcibly enable color support when piping output or other situations where stdout is not a tty.
pmaint copy - copy binpkgs between repos; primarily useful for quickpkging a livefs pkg¶
Synopsis¶
pmaint copy [--domain DOMAIN] [-h] [--debug] [-q] [-v]
[--color BOOLEAN] [-s SOURCE_REPO] [-i]
[--sandbox BOOLEAN]
target_repo query [query ...]
Positional Arguments¶
- target_repo¶
repository to add packages to
- query¶
packages matching any of these restrictions will be selected for copying
Config Options¶
- --domain DOMAIN¶
custom pkgcore domain to use for this operation
Base Options¶
- -h, --help¶
Show this help message and exit. To get more information see the related man page.
- --debug¶
Enable debug checks and show verbose debug output.
- -q, --quiet¶
Suppress non-error, informational messages.
- -v, --verbose¶
Increase the verbosity of various output.
- --color BOOLEAN¶
Toggle colored output support. This can be used to forcibly enable color support when piping output or other situations where stdout is not a tty.
Subcommand Options¶
- -s, --source-repo SOURCE_REPO¶
copy strictly from the supplied repository; else it copies from wherever a match is found
- -i, --ignore-existing¶
if a matching pkg already exists in the target, don’t update it
- --sandbox BOOLEAN¶
Confine the run with Landlock where the kernel supports it: writes are limited to the paths the command legitimately needs, and outgoing TCP is denied. Enabled by default; ‘y’ turns an unsupported kernel into an error instead of continuing unconfined, and ‘n’ disables it.
pmaint regen - regenerate repository caches¶
Synopsis¶
pmaint regen [--domain DOMAIN] [-h] [--debug] [-q] [-v]
[--color BOOLEAN] [--disable-eclass-caching] [-t THREADS]
[--force] [--dir CACHE_DIR] [--sandbox BOOLEAN] [--rsync]
[--use-local-desc] [--pkg-desc-index]
[repo ...]
Positional Arguments¶
- repo¶
repo(s) to regenerate caches for
Config Options¶
- --domain DOMAIN¶
custom pkgcore domain to use for this operation
Base Options¶
- -h, --help¶
Show this help message and exit. To get more information see the related man page.
- --debug¶
Enable debug checks and show verbose debug output.
- -q, --quiet¶
Suppress non-error, informational messages.
- -v, --verbose¶
Increase the verbosity of various output.
- --color BOOLEAN¶
Toggle colored output support. This can be used to forcibly enable color support when piping output or other situations where stdout is not a tty.
Subcommand Options¶
- --disable-eclass-caching¶
- For regen operation, pkgcore internally turns on an optimization that
caches eclasses into individual functions thus parsing the eclass only twice max per EBD processor. Disabling this optimization via this option results in ~2x slower regeneration. Disable it only if you suspect the optimization is somehow causing issues.
- -t, --threads THREADS¶
Number of threads to use for regeneration, defaults to using all available processors.
- --force¶
force regeneration to occur regardless of staleness checks or repo settings
- --dir CACHE_DIR¶
use separate directory to store repository caches
- --sandbox BOOLEAN¶
Confine the run with Landlock where the kernel supports it: writes are limited to the paths the command legitimately needs, and outgoing TCP is denied. Enabled by default; ‘y’ turns an unsupported kernel into an error instead of continuing unconfined, and ‘n’ disables it.
- --rsync¶
perform actions necessary for rsync repos (update metadata/timestamp.chk)
- --use-local-desc¶
update local USE flag description cache (profiles/use.local.desc)
- --pkg-desc-index¶
update package description cache (metadata/pkg_desc_index)
pmaint env-update - update env.d and ldconfig¶
Synopsis¶
pmaint env-update [--domain DOMAIN] [-h] [--debug] [-q] [-v]
[--color BOOLEAN] [--skip-ldconfig]
Config Options¶
- --domain DOMAIN¶
custom pkgcore domain to use for this operation
Base Options¶
- -h, --help¶
Show this help message and exit. To get more information see the related man page.
- --debug¶
Enable debug checks and show verbose debug output.
- -q, --quiet¶
Suppress non-error, informational messages.
- -v, --verbose¶
Increase the verbosity of various output.
- --color BOOLEAN¶
Toggle colored output support. This can be used to forcibly enable color support when piping output or other situations where stdout is not a tty.
Subcommand Options¶
- --skip-ldconfig¶
do not update etc/ldso.conf and ld.so.cache
pmaint eclass - generate eclass docs¶
Synopsis¶
pmaint eclass [--domain DOMAIN] [-h] [--debug] [-q] [-v]
[--color BOOLEAN] [--dir OUTPUT_DIR] [--sandbox BOOLEAN]
[-o OUTPUT_FORMAT] [-f {rst,man,html,devbook}] [-r REPO]
[eclasses ...]
Positional Arguments¶
- eclasses¶
eclasses to target
Config Options¶
- --domain DOMAIN¶
custom pkgcore domain to use for this operation
Base Options¶
- -h, --help¶
Show this help message and exit. To get more information see the related man page.
- --debug¶
Enable debug checks and show verbose debug output.
- -q, --quiet¶
Suppress non-error, informational messages.
- -v, --verbose¶
Increase the verbosity of various output.
- --color BOOLEAN¶
Toggle colored output support. This can be used to forcibly enable color support when piping output or other situations where stdout is not a tty.
Subcommand Options¶
- --dir OUTPUT_DIR¶
output directory
- --sandbox BOOLEAN¶
Confine the run with Landlock where the kernel supports it: writes are limited to the paths the command legitimately needs, and outgoing TCP is denied. Enabled by default; ‘y’ turns an unsupported kernel into an error instead of continuing unconfined, and ‘n’ disables it.
- -o, --output OUTPUT_FORMAT¶
Output file name format. Defaults to
{eclass}.eclass.{format}. You can use{eclass}and{format}placeholders to customize the output file name. The filename can have path separator, for example:{eclass}/{eclass}.eclass.{format}.
- -f, --format {rst,man,html,devbook}¶
output format
- -r, --repo REPO¶
Target repository to search for eclasses. If no repo is specified the default repo is used.