Manual Page Search Parameters

XBPS-INSTALL(1) General Commands Manual XBPS-INSTALL(1)

xbps-installXBPS utility to (re)install and update packages

xbps-install [OPTIONS] [PKG...]

The xbps-install utility installs, reinstalls, downgrades and updates packages in the target root directory. The argument PKG is a package expression, which is explained in the PACKAGE EXPRESSION section.

If package is installed, it will be updated to the version available in repositories matching the PACKAGE EXPRESSION. Otherwise it will be installed, or reinstalled/downgraded if -f, --force option is set.

A package expression is a form to match a pattern; currently xbps supports 3 ways to specify them:

  • by package name, i.e: “”.
  • by exact package name and version, i.e: “”.
  • by specifying a package name and version separated by any of the following version comparators:

    • less than
    • greater than
    • less or equal than
    • greater or equal than

      Example: “”.

The first repository matching the package expression wins.

An installed package can have some specific modes of operation. Currently the following modes are available:

The package is on hold mode. Packages in this mode won't be updated unless it's explicitely declared to be updated. The only way to update packages in this mode is by using the -f, --force option. To list packages in this mode use xbps-query -H.
The package is in manual mode of installation and won't be considered for removal when running xbps-remove -o. To list packages in this mode use xbps-query -m.
A package in repolock mode will only accept updates that are available in the same repository that was used for installing. To list packages in this mode use xbps-query --list-repolock-pkgs.

, --automatic
Enables automatic installation mode, i.e. package will be treated as orphan if no package is depending on it directly. See --mode in xbps-pkgdb(1).
, --config dir
Specifies a path to the XBPS configuration directory. If the first character is not '/' then it's a relative path of rootdir.
, --cachedir dir
Specifies a path to the cache directory, where binary packages are stored. If the first character is not '/' then it's a relative path of rootdir.
, --debug
Enables extra debugging shown to stderr.
, --download-only
Only download packages to the cache, do not do any other installation steps. This may be useful for doing system upgrades while offline, or automatically downloading updates while leaving you with the option of still manually running the update.
, --force
Force installation (downgrade if package version in repos is less than installed version), or reinstallation (if package version in repos is the same) to the target PKG, overwriting regular package files and symlinks (if they have been modified) but . The only way to update packages on hold mode is by using this flag. If -f is specified twice all files will be unpacked, even .
, --help
Show the help message.
, --ignore-file-conflicts
Ignore detected file conflicts in a transaction.
, --ignore-conf-repos
Ignore repositories defined in configuration files. Only repositories specified in the command line via --repository will be used.
, --memory-sync
For remote repositories, the data is fetched and stored in memory for the current operation. Cached on-disk repository indexes of remote repositories will be ignored.
, --dry-run
Dry-run mode. Show what actions would be done but don't change any state of the system. To use a fresh repository indexes use -M for in memory sync.

The output will be a line for each action in the following format:

<pkgver> <action> <arch> <repository> <installedsize> <downloadsize>
, --repository url
Appends the specified repository to the top of the list. The url argument expects a URL to the repository for remote repositories or a path for local repositories. Note that remote repositories must be signed using xbps-rindex(1). This option can be specified multiple times.
Enables reproducible mode in pkgdb. The install-date and repository package objects are not stored in pkgdb.
Enables the use of staged packages from remote repositories.
, --rootdir dir
Specifies a full path for the target root directory.
, --sync
Synchronize remote repository index files.
, --unpack-only
If set, packages to be installed or upgraded in the transaction won't be configured, just unpacked. That means that those packages should be reconfigured via xbps-reconfigure(1).
, --update
Performs a full system upgrade: all installed packages (except those on hold, see --mode hold in xbps-pkgdb(1)) will be updated to the greatest versions that were found in repositories.
, --verbose
Enables verbose messages.
, --yes
Assume yes to most questions and avoid interactive questions. A prompt will still be shown if the transaction requires trusting a new signing key for packages. If you need to automate new installations, it is necessary to add these keys to the system before installation, see FILES.
, --version
Show the version information.

Only use IPv4.
Only use IPv6.
If set to anything else than no passive mode will be set for the ftp connection.
User name to be set for ftp authentication.
Password to be set for ftp authentication.
Proxy URL that will be used to establish a ftp connection.
Proxy URL that will be used to establish a http connection.
Sets the credentials to authenticate a user agent to a proxy server, in the form user:pass.
Sets the credentials to authenticate to a http server, in the form user:pass.
Overrides the default Referer http header.
Override the default User-Agent http header.
Specifies a set of domains for which the proxy should not be consulted. The contents is a comma-, or space-separated list of domain names. A single asterisk will override all proxy variables and no transactions will be proxied.
Proxy URL that will be used to establish a socks connection.
Disables SSL/TLS hostname verification.
Disables SSL/TLS peer verification.
Overrides the default CA certificates file, by default set to /etc/ssl/certs/ca-certificates.crt.
Overrides the default CA certificates path, by default set to /etc/ssl/certs.
Sets the SSL/TLS client verification certificate file.
Sets the SSL/TLS client verification key file.
Sets connection timeout in milliseconds instead of default value of 5 minutes. When -1, waits indefinitely.
Overrides uname(2) machine result with this value. Useful to install packages with a fake architecture
Sets the target architecture to this value. This variable differs from XBPS_ARCH in that it allows you to install packages partially, because configuration phase is skipped (the target binaries might not be compatible with the native architecture).
Overrides the xbps.d(5) configuration option.

/etc/xbps.d
Default configuration directory.
/usr/share/xbps.d
Default system configuration directory.
/var/db/xbps/.<pkgname>-files.plist
Package files metadata.
/var/db/xbps/pkgdb-0.38.plist
Default package database (0.38 format). Keeps track of installed packages and properties.
/var/db/xbps/keys
Default trusted keys directory.
/var/cache/xbps
Default cache directory to store downloaded binary packages.

xbps-alternatives(1), xbps-checkvers(1), xbps-create(1), xbps-dgraph(1), xbps-digest(1), xbps-fbulk(1), xbps-fetch(1), xbps-pkgdb(1), xbps-query(1), xbps-reconfigure(1), xbps-remove(1), xbps-rindex(1), xbps-uchroot(1), xbps-uunshare(1), xbps.d(5)

Juan Romero Pardines <xtraeme@gmail.com>

Probably, but I try to make this not happen. Use it under your own responsibility and enjoy your life.

Report bugs at https://github.com/void-linux/xbps/issues

February 9, 2023 x86_64