Libzypp locking file
The file /etc/zypp/locks is read by libzypp at startup if zypp.conf allows it. The entries are used for initial locking of packages. Locking a package means not allowing to install or uninstall it. Valid entries are
attribute: value
Where attributes and their values are described below.
Locks are separated by empty lines.
All attributes are lower-case.
repo
specifies repository restriction. Only alias is accepted.
By default all repositories match.
type
resolvable type restriction
The values can be package, patch, pattern, product and srcpackage.
By default all types match.
case_sensitive
if strings are matched case sensitive. The values are true, false, on, off.
The default is case insensitive.
install_status
status of object. Possible states are installed, not-installed and all. If more install statuses are specified then the last one is used.
The values are installed for all packages which are installed, non-installed for packages which can be installed or reinstalled and all for both.
The default is all.
match_type
type of string matching in values. Does not affect type and repo which must be specified exactly.
The values are exact, substring, regex for regular expressions, glob for matching as on the command line, and word.
The default is substring.
query_string
String to be matched in multiple attributes. Should be restricted by another attribute with empty value ( it is recommended, because without restriction expect some performance problems ).
version
Restrict the lock only to some versions. It contains two parts: an optional operator and the version.
The operator is ==,!=,<,>,<=,>=. If operator is not specified then == is used.
The version has the format [epoch:]version[-release].
Example: version: < 0:0.11.4-2
solvable_name
name of object (e.g. zypper)
solvable_summary
summary of object
solvable_arch
architecture of object (e.g. x86_64, i586)
solvable_description
description of object
solvable_eula
license text of objects which request accepting license by user
solvable_license
license of package (only for package) (e.g. GPL2)
solvable_keywords
keywords which specify package (only for package)
solvable_authors
authors of package (only for package)
solvable_group
package group (only for package) (e.g. Development/Tools/Version Control )
update_reference_type
reference for update (e.g. bugzilla,cve) (only for patches)
Exact Package
This is the way YaST UI does it. Lock k3b (e.g. you don't want to update it).
-----locks-----
type: package
solvable_name: k3b
match_type: exact
case_sensitive: on
Package Wildcard
This is the way "zypper addlock cross-*-gcc-icecream-backend" does it.
-----locks-----
type: package
solvable_name: cross-*-gcc-icecream-backend
match_type: glob
case_sensitive: on
Versioned Lock
Do not install new GCC. This format is used when converting from the openSUSE-10.3 lock format.
-----locks-----
solvable_name: gcc
match_type: glob
version: > 4.2
Anything named KDE
Locks everything which contains kde in the name.
-----locks-----
solvable_name: kde
Anything mentioning KDE
Locks everything which contains kde in the name, summary, or description.
-----locks-----
query_string: kde
solvable_name:
solvable_summary:
solvable_description:
This manual page only covers the most important attributes. The complete list is available at http://en.opensuse.org/Libzypp/Locksfile
Josef Reidinger <[email protected]>
Manual page contributions by Martin Vidner <[email protected]>.