libalpm_trans(3) Library Functions Manual libalpm_trans(3) NAME libalpm_trans - Transaction SYNOPSIS Enumerations enum alpm_transflag_t { ALPM_TRANS_FLAG_NODEPS = 1, ALPM_TRANS_FLAG_NOSAVE = (1 << 2), ALPM_TRANS_FLAG_NODEPVERSION = (1 << 3), ALPM_TRANS_FLAG_CASCADE = (1 << 4), ALPM_TRANS_FLAG_RECURSE = (1 << 5), ALPM_TRANS_FLAG_DBONLY = (1 << 6), ALPM_TRANS_FLAG_NOHOOKS = (1 << 7), ALPM_TRANS_FLAG_ALLDEPS = (1 << 8), ALPM_TRANS_FLAG_DOWNLOADONLY = (1 << 9), ALPM_TRANS_FLAG_NOSCRIPTLET = (1 << 10), ALPM_TRANS_FLAG_NOCONFLICTS = (1 << 11), ALPM_TRANS_FLAG_NEEDED = (1 << 13), ALPM_TRANS_FLAG_ALLEXPLICIT = (1 << 14), ALPM_TRANS_FLAG_UNNEEDED = (1 << 15), ALPM_TRANS_FLAG_RECURSEALL = (1 << 16), ALPM_TRANS_FLAG_NOLOCK = (1 << 17) } Transaction flags. Functions int alpm_trans_get_flags (alpm_handle_t *handle) Returns the bitfield of flags for the current transaction. alpm_list_t * alpm_trans_get_add (alpm_handle_t *handle) Returns a list of packages added by the transaction. alpm_list_t * alpm_trans_get_remove (alpm_handle_t *handle) Returns the list of packages removed by the transaction. int alpm_trans_init (alpm_handle_t *handle, int flags) Initialize the transaction. int alpm_trans_prepare (alpm_handle_t *handle, alpm_list_t **data) Prepare a transaction. int alpm_trans_commit (alpm_handle_t *handle, alpm_list_t **data) Commit a transaction. int alpm_trans_interrupt (alpm_handle_t *handle) Interrupt a transaction. int alpm_trans_release (alpm_handle_t *handle) Release a transaction. Add/Remove packages These functions remove/add packages to the transactions int alpm_sync_sysupgrade (alpm_handle_t *handle, int enable_downgrade) Search for packages to upgrade and add them to the transaction. int alpm_add_pkg (alpm_handle_t *handle, alpm_pkg_t *pkg) Add a package to the transaction. int alpm_remove_pkg (alpm_handle_t *handle, alpm_pkg_t *pkg) Add a package removal to the transaction. Detailed Description Functions to manipulate libalpm transactions Transactions are the way to add/remove packages to/from the system. Only one transaction can exist at a time. The basic workflow of a transaction is to: o Initialize with alpm_trans_init o Choose which packages to add with alpm_add_pkg and alpm_remove_pkg o Prepare the transaction with alpm_trans_prepare o Commit the transaction with alpm_trans_commit o Release the transaction with alpm_trans_release A transaction can be released at any time. A transaction does not have to be committed. Enumeration Type Documentation enum alpm_transflag_t Transaction flags. Enumerator ALPM_TRANS_FLAG_NODEPS Ignore dependency checks. ALPM_TRANS_FLAG_NOSAVE Delete files even if they are tagged as backup. ALPM_TRANS_FLAG_NODEPVERSION Ignore version numbers when checking dependencies. ALPM_TRANS_FLAG_CASCADE Remove also any packages depending on a package being removed. ALPM_TRANS_FLAG_RECURSE Remove packages and their unneeded deps (not explicitly installed). ALPM_TRANS_FLAG_DBONLY Modify database but do not commit changes to the filesystem. ALPM_TRANS_FLAG_NOHOOKS Do not run hooks during a transaction. ALPM_TRANS_FLAG_ALLDEPS Use ALPM_PKG_REASON_DEPEND when installing packages. ALPM_TRANS_FLAG_DOWNLOADONLY Only download packages and do not actually install. ALPM_TRANS_FLAG_NOSCRIPTLET Do not execute install scriptlets after installing. ALPM_TRANS_FLAG_NOCONFLICTS Ignore dependency conflicts. ALPM_TRANS_FLAG_NEEDED Do not install a package if it is already installed and up to date. ALPM_TRANS_FLAG_ALLEXPLICIT Use ALPM_PKG_REASON_EXPLICIT when installing packages. ALPM_TRANS_FLAG_UNNEEDED Do not remove a package if it is needed by another one. ALPM_TRANS_FLAG_RECURSEALL Remove also explicitly installed unneeded deps (use with ALPM_TRANS_FLAG_RECURSE). ALPM_TRANS_FLAG_NOLOCK Do not lock the database during the operation. Function Documentation int alpm_add_pkg (alpm_handle_t * handle, alpm_pkg_t * pkg) Add a package to the transaction. If the package was loaded by alpm_pkg_load(), it will be freed upon alpm_trans_release invocation. Parameters handle the context handle pkg the package to add Returns 0 on success, -1 on error (pm_errno is set accordingly) int alpm_remove_pkg (alpm_handle_t * handle, alpm_pkg_t * pkg) Add a package removal to the transaction. Parameters handle the context handle pkg the package to uninstall Returns 0 on success, -1 on error (pm_errno is set accordingly) int alpm_sync_sysupgrade (alpm_handle_t * handle, int enable_downgrade) Search for packages to upgrade and add them to the transaction. Parameters handle the context handle enable_downgrade allow downgrading of packages if the remote version is lower Returns 0 on success, -1 on error (pm_errno is set accordingly) int alpm_trans_commit (alpm_handle_t * handle, alpm_list_t ** data) Commit a transaction. Parameters handle the context handle data the address of an alpm_list where detailed description of an error can be dumped (i.e. list of conflicting files) Returns 0 on success, -1 on error (pm_errno is set accordingly) alpm_list_t * alpm_trans_get_add (alpm_handle_t * handle) Returns a list of packages added by the transaction. Parameters handle the context handle Returns a list of alpm_pkg_t structures int alpm_trans_get_flags (alpm_handle_t * handle) Returns the bitfield of flags for the current transaction. Parameters handle the context handle Returns the bitfield of transaction flags alpm_list_t * alpm_trans_get_remove (alpm_handle_t * handle) Returns the list of packages removed by the transaction. Parameters handle the context handle Returns a list of alpm_pkg_t structures int alpm_trans_init (alpm_handle_t * handle, int flags) Initialize the transaction. Parameters handle the context handle flags flags of the transaction (like nodeps, etc; see alpm_transflag_t) Returns 0 on success, -1 on error (pm_errno is set accordingly) int alpm_trans_interrupt (alpm_handle_t * handle) Interrupt a transaction. Parameters handle the context handle Returns 0 on success, -1 on error (pm_errno is set accordingly) int alpm_trans_prepare (alpm_handle_t * handle, alpm_list_t ** data) Prepare a transaction. Parameters handle the context handle data the address of an alpm_list where a list of alpm_depmissing_t objects is dumped (conflicting packages) Returns 0 on success, -1 on error (pm_errno is set accordingly) int alpm_trans_release (alpm_handle_t * handle) Release a transaction. Parameters handle the context handle Returns 0 on success, -1 on error (pm_errno is set accordingly) Author Generated automatically by Doxygen for libalpm from the source code. libalpm libalpm_trans(3)