xbps Operations¶
Manage XBPS packages and repositories. Note that XBPS package names are case-sensitive.
Facts used in these operations: xbps.XbpsPackages, xbps.XbpsSelfUpdate.
xbps.packages¶
Install/remove/update XBPS packages.
xbps.packages(packages: 'str | list[str] | None' = None, present=True, update=False, upgrade=False,
**kwargs,
)
- packages: list of packages to ensure
- present: whether the packages should be installed
- update: run
xbps-install -Sbefore installing packages - upgrade: run
xbps-install -y -ubefore installing packages
If xbps itself has an update available it is updated before installing
packages, as XBPS refuses to install anything else until it has.
Example:
from pyinfra.operations import xbps
xbps.packages(
name="Install Vim and Vim Pager",
packages=["vimpager", "vim"],
)
Global arguments
This operation also inherits all global arguments.
xbps.update¶
Stateless operation
This operation will always execute commands and is not idempotent.
Update XBPS repositories.
Global arguments
This operation also inherits all global arguments.
xbps.upgrade¶
Stateless operation
This operation will always execute commands and is not idempotent.
Upgrades all XBPS packages, updating xbps itself first.
Global arguments
This operation also inherits all global arguments.