1ZYPPER(8)                           ZYPPER                           ZYPPER(8)
2
3
4

NAME

6       zypper - Command-line interface to ZYpp system management library
7       (libzypp)
8

SYNOPSIS

10       zypper [--global-opts] command [--command-opts] [command-arguments]
11
12       zypper subcommand [--command-opts] [command-arguments]
13
14       zypper help command
15

DESCRIPTION

17       zypper is a command-line interface to ZYpp system management library
18       (libzypp). It can be used to install, update, remove software, manage
19       repositories, perform various queries, and more.
20

CONCEPTS

22       Most of the following concepts are common for all applications based on
23       the libzypp package management library, but there are some zypper
24       specifics.
25
26   System Packages
27       The set of installed packages on a system is sometimes denoted as
28       repository @System or System Packages. In contrast to available
29       repositories providing packages which can be installed, @System
30       provides packages which can only be deleted. Installed packages which
31       are not also provided by at least one of the available repositories are
32       often denoted as being unwanted, orphaned or dropped.
33
34   Repositories
35       Libzypp works with repository metadata, this is information about
36       packages and their relations extracted from RPM packages and other data
37       like patch information, pattern definitions, etc. These data are stored
38       together with the RPM files in folders called repositories.
39       Repositories can be placed on various media like an HTTP or FTP server,
40       DVD, or a folder on a local disc.
41
42       There is a special set of commands in zypper intended to manipulate
43       repositories. Also many commands and options take a repository as an
44       argument. See section COMMANDS, subsection Repository Management for
45       more details.
46
47   GPG checks
48       Disabling GPG checks is not recommended. Signing data enables the
49       recipient to verify that no modifications occurred after the data were
50       signed. Accepting data with no, wrong or unknown signature can lead to
51       a corrupted system and in extreme cases even to a system compromise.
52
53       Zypp verifies the authenticity of repository metadata by checking their
54       GPG signature. If the repository metadata are signed with a trusted key
55       and successfully verified, packages from this repository are accepted
56       for installation if they match the checksum provided in the metadata.
57       Using unsigned repositories needs to be confirmed.
58
59       If the repository metadata are not signed, the GPG signature of each
60       downloaded rpm package is checked before accepting it for installation.
61       Packages from unsigned repositories need a valid GPG signature. Using
62       unsigned packages needs to be confirmed.
63
64       The above is the default behavior defined by settings in
65       /etc/zypp/zypp.conf.
66
67       The addrepo and modifyrepo commands provide further options to tune the
68       behavior per repository. It is for example possible to relax the need
69       to confirm installing unsigned packages for a specific repository. But
70       if you do so, you should be very certain that an attacker can hardly
71       modify the package data within the repository or on the way to your
72       machine. See section COMMANDS for details about the command options.
73
74   Resource Identifiers (URI)
75       To specify locations of repositories or other resources (RPM files,
76       .repo files) you can use any type of URI supported by libzypp. In
77       addition Zypper accepts a special URI identifying openSUSE Build
78       Service (OBS) repositories in the addrepo command. These URIs have the
79       form of obs://project/[platform].
80
81       See section COMMANDS, subsection Repository Management for a complete
82       list and examples of supported URI formats.
83
84   Refresh
85       Refreshing a repository means downloading metadata of packages from the
86       medium (if needed), storing it in local cache (typically under
87       /var/cache/zypp/raw/alias directory) and preparsing the metadata into
88       .solv files (building the solv cache), typically under
89       /var/cache/zypp/solv/alias.
90
91       The metadata get refreshed either automatically or on user request. An
92       automatic refresh takes place right before reading metadata from the
93       database if the auto-refresh is enabled for the repository and the
94       metadata is reported to be out of date. If the auto-refresh is
95       disabled, the repository will only be refreshed on user request. You
96       can request a refresh by calling zypper refresh (see the documentation
97       of the refresh command for details).
98
99       The repository metadata are checked for changes before actually doing
100       the refresh. A change is detected by downloading one or two metadata
101       index files (small files) and comparing the checksums of the cached
102       ones and the remote ones. If the files differ, the repository is out of
103       date and will be refreshed.
104
105       To delay the up-to-date check (and thus the automatic refresh) for a
106       certain number of minutes, edit the value of the repo.refresh.delay
107       attribute of ZYpp config file (/etc/zypp/zypp.conf). This means, zypper
108       will not even try to download and check the index files, and you will
109       be able to use zypper for operations like search or info without
110       internet access or root privileges.
111
112   Services
113       Services are one level above repositories and serve to manage
114       repositories or to do some special tasks. Libzypp currently supports
115       Repository Index Service (RIS) and Plugin Service.
116
117       Repository Index Service (RIS) is a special type of repository which
118       contains a list of other repositories. This list can be generated
119       dynamically by the server according to some URI parameters or user
120       name, or can be static. Once such service is added to your system,
121       zypper takes care of adding, modifying, or removing these repositories
122       on your system to reflect the current list. See section Service
123       Management and
124       https://en.opensuse.org/openSUSE:Standards_Repository_Index_Service for
125       more details.
126
127   Package Types
128       Zypper works with several types of resource objects, called
129       resolvables. A resolvable might be a package, patch, pattern, product;
130       basically any kind of object with dependencies to other objects.
131
132       package
133           An ordinary RPM package.
134
135       patch
136           A released patch conflicts with the affected/vulnerable versions of
137           a collection of packages. As long as any of these
138           affected/vulnerable versions are installed, the conflict triggers
139           and the patch is classified as needed, or as unwanted if the patch
140           is locked.
141
142           Selecting the patch, the conflict is resolved by updating all
143           installed and affected/vulnerable packages to a version providing
144           the fix. When updating the packages zypper always aims for the
145           latest available version. Resolved patches are classified as either
146           applied or not needed, depending on whether they refer to actually
147           installed packages.
148
149           So installation, update or removal of packages may change the
150           classification of patches refering to these packages. Since
151           libyzpp-17.23.0 the /var/log/zypp/history remembers if a commited
152           transaction changes a patchs classification. If history data are
153           available, patch tables show a column telling since when the patch
154           is in it’s current state.
155
156           Depending on the kind of defect, patches are classified by category
157           and severity. Commonly used values for category are security,
158           recommended, optional, feature, document or yast. Commonly used
159           values for severity are critical, important, moderate, low or
160           unspecified.
161
162           Note that the patch command does not apply optional patches
163           (category optional or feature) by default. If you actually want to
164           consider all optional patches as being needed, say patch
165           --with-optional. Specific patches can be applied using the install
166           command (e.g. zypper install patch:openSUSE-2014-7).
167
168           If the issuer decides to retract a released patch, the patch status
169           will be shown as retracted. The packages provided by the retracted
170           patch are still visible but also tagged as having been retracted
171           (R). The resolver will avoid selecting retracted packages
172           automatically. If you are sure that a retracted package should be
173           installed on your system, you must explicitly select it.
174
175       pattern
176           A group of packages required or recommended to install some
177           functionality.
178
179       product
180           A group of packages which are necessary to install a product.
181
182       srcpackage
183           Source code package (.src.rpm). This type works in search and
184           install commands.
185
186       application
187           Legacy: Since libzypp-17.7.0 this type is no longer available.
188
189       Throughout this manual we will often refer to resolvables simply as
190       packages and to resolvable types as package type or kind. These type
191       names can be used as arguments of --type option in several commands
192       like install, info, or search. Commands should also allow to specify
193       resolvables as KIND:NAME (e.g. patch:openSUSE-2014-7).
194
195   Package Dependencies
196       Software packages depend on each other in various ways. Packages
197       usually require or recommend other packages, but they can also conflict
198       with them. Packages may support specific hardware or language settings.
199       Zypper uses a dependency solver to find out which packages need to be
200       installed to satisfy the user’s request.
201
202       If you do not request a specific version of a package the solver will
203       pick a reasonable one. The solvers general attitude when resolving a
204       job is to focus on installing the best version of the requested package
205       and to add or update dependencies as they are needed. Aside from this
206       Focus on Job, which is the default, two other focus modes are
207       available:
208
209       In Focus on Installed mode the solver focuses on applying as little
210       changes to the installed packages as needed. Choosing an older version
211       of a requested package is valid if it’s dependencies require less
212       changes to the system. The solver will try to avoid updating already
213       installed packages.
214
215       In Focus on Update mode the solver focuses on updating the requested
216       package and all its dependencies as much as possible. Beware,
217       installing a single package in this mode may easily lead to a mini
218       system update.
219
220       For a single command the focus mode can be set using the --solver-focus
221       MODE switch. Valid modes are Job, Installed or Update. If you want to
222       change the default mode for your system, set
223       [/etc/zypp/zypp.conf:solver.focus] to the desired value.
224
225   Automatically installed packages
226       Packages added by the dependency solver in order to resolve a user’s
227       request are remembered as having been automatically installed. They may
228       later be removed, if no more user installed packages depend on them
229       (e.g. by zypper remove --clean-deps).
230
231       In the Status column the search command distinguishes between user
232       installed packages (i+) and automatically installed packages (i).
233
234   Package File Conflicts
235       File conflicts happen when two packages attempt to install files with
236       the same name but different contents. This may happen if you are
237       installing a newer version of a package without erasing the older
238       version, of if two unrelated packages each install a file with the same
239       name.
240
241       As checking for file conflicts requires access to the full filelist of
242       each package being installed, zypper will be able to check for file
243       conflicts only if all packages are downloaded in advance (see
244       --download-in-advance). If you are doing a --dry-run no packages are
245       downloaded, so the file conflict check will skip packages not available
246       in the packages cache. To get a meaningful file conflict check use
247       --dry-run together with --download-only.
248
249       As the reason for file conflicts usually is a poor package design or
250       lack of coordination between the people building the packages, they are
251       not easy to resolve. By using the --replacefiles option you can force
252       zypper to replace the conflicting files. Nevertheless this may damage
253       the package whose file gets replaced.
254

COMMANDS

256       zypper provides a number of commands. Each command accepts the options
257       listed in the GLOBAL OPTIONS section. These options must be specified
258       before the command name. In addition, many commands have specific
259       options, which are listed in this section. These command-specific
260       options must be specified after the name of the command and before any
261       of the command arguments.
262
263       Zypper also provides limited support for writing extensions/subcommands
264       in any language. See section SUBCOMMANDS for details.
265
266   General Commands
267       help [command]
268           Shows help texts. If invoked without any argument (just zypper or
269           zypper help), zypper displays global help text which lists all
270           available global options and commands.
271
272           If invoked with a command name argument, zypper displays help for
273           the specified command, if such command exists. Long as well as
274           short variants of the command names can be used.
275
276           For your convenience, zypper help can also be invoked in any of the
277           following ways:
278
279
280               $ zypper -h|--help [command]
281
282
283               $ zypper [command] -h|--help
284
285       shell (sh)
286           Starts a shell for entering multiple commands in one session. Exit
287           the shell using exit, quit, or Ctrl-D.
288
289           The shell support is not complete so expect bugs there. However,
290           there’s no urgent need to use the shell since libzypp became so
291           fast thanks to the SAT solver and its tools (openSUSE 11.0), but
292           still, you’re welcome to experiment with it.
293
294   Package Management Commands
295       info (if) [options] name...
296           Displays detailed information about the specified packages.
297
298           For each specified package, zypper finds the best available version
299           in defined repositories and shows information for this package.
300
301           -r, --repo alias|name|#|URI
302               Work only with the repository specified by the alias, name,
303               number or URI. This option can be used multiple times.
304
305           -t, --type type
306               Type of package (default: package). See section Package Types
307               for list of available package types.
308
309           --provides
310               Show symbols the package provides.
311
312           --requires
313               Show symbols the package requires.
314
315           --conflicts
316               Show symbols the package conflicts with.
317
318           --obsoletes
319               Show symbols the package obsoletes.
320
321           --recommends
322               Show symbols the package recommends.
323
324           --suggests
325               Show symbols the package suggests.
326
327           --supplements
328               Show symbols the package supplements.
329
330           Examples:
331
332
333               $ zypper info workrave
334                   Show information about package workrave
335
336               $ zypper info -t patch libzypp
337                   Show information about patch libzypp
338
339               $ zypper info -t pattern lamp_server
340                   Show information about pattern lamp_server
341
342       install (in) [options] name|capability|rpm_file_uri...
343           Install or update packages.
344
345           The packages can be selected by their name or by a capability they
346           provide.
347
348           A capability is formed by "NAME[.ARCH][ OP EDITION]", where ARCH is
349           an architecture code, OP is one of <, <=, =, >=, or > and EDITION
350           is "VERSION[-RELEASE]". For example: zypper=0.8.8-2.
351
352               The NAME component of a capability is not only a package name
353               but any symbol provided by packages: /bin/vi, libcurl.so.3,
354               perl(Time::ParseDate). Just remember to quote to protect the
355               special characters from the shell, for example: zypper\>0.8.10
356               or 'zypper>0.8.10'.
357
358               If EDITION is not specified, the newest installable version
359               will be installed. This also means that if the package is
360               already installed and newer versions are available, it will get
361               upgraded to the newest installable version.
362
363               If ARCH is not specified, or the last dot of the capability
364               name string is not followed by known architecture, the solver
365               will treat the whole string as a capability name. If the ARCH
366               is known, the solver will select a package matching that
367               architecture and complain if such package cannot be found.
368
369           Zypper is also able to install plain RPM files while trying to
370           satisfy their dependencies using packages from defined
371           repositories. You can install a plain RPM file by specifying its
372           location in the install command arguments either as a local path or
373           an URI. E.g.:
374
375               $ zypper install ~/rpms/foo.rpm http://some.site/bar.rpm
376
377               Zypper will report packages that it cannot find. Further, in
378               interactive mode, zypper proceeds with installation of the rest
379               of requested packages, and it will abort immediately in
380               non-interactive mode. In both cases zypper returns
381               ZYPPER_EXIT_INF_CAP_NOT_FOUND after finishing the operation.
382
383               Zypper will collect the files in a temporary plaindir
384               repository and mark the respective packages for installation.
385               If --download-only is used, the downloaded packages will be
386               available in /var/cache/zypper/RPMS until you actually install
387               them or call zypper clean to clear the package caches. They
388               will not become part of the global package cache at
389               /var/cache/zypp/packages (see also the global --pkg-cache-dir
390               option).
391
392           In the install command, you can also specify packages you wish to
393           remove by prepending their names by a - or ! character. For
394           example:
395
396               $ zypper install \!Firefox
397
398               In contrast to zypper remove Firefox which removes Firefox and
399               its dependent packages, the install command will try to keep
400               dependent packages installed by looking for Firefox
401               alternatives.
402
403               Note that if you choose to use - with the first package you
404               specify, you need to write -- before it to prevent its
405               interpretation as a command option:
406
407               $ zypper install --  -boring-game great-game great-game-manual
408
409           -r, --repo alias|name|#|URI
410               Work only with the repository specified by the alias, name,
411               number or URI. This option can be used multiple times.
412
413               Using --repo is discouraged as it currently hides unmentioned
414               repositories from the resolver, leading to inexpertly
415               decisions. In the future --repo will become an alias for
416               --from.
417
418           -t, --type type
419               Type of package to install (default: package). See section
420               Package Types for list of available package types. Use zypper
421               se -t type [name] to look for available items of this type and
422               zypper info -t type name to display more detailed information
423               about the item.
424
425               If patch is specified, zypper will install and/or remove
426               packages to satisfy specified patch. This is a way to ensure
427               that specific bug fix is installed. Use zypper list-patches to
428               look for applicable patches.
429
430               If product or pattern are specified, zypper ensures that all
431               required (and optionally recommended) packages are installed.
432
433           -n, --name
434               Select packages by their name, don’t try to select by
435               capabilities.
436
437           -f, --force
438               Install even if the item is already installed (reinstall),
439               downgraded or changes vendor or architecture.
440
441           --oldpackage
442               Allow to replace a newer item with an older one. Handy if you
443               are doing a rollback. Unlike --force it will not enforce a
444               reinstall, if the item is already installed with the requested
445               version.
446
447           --from alias|name|#|URI
448               Select packages from specified repository. If strings specified
449               as arguments to the install command match packages in
450               repositories specified in this option, they will be marked for
451               installation. This option currently implies --name, but allows
452               using wildcards for specifying packages.
453
454           -C, --capability
455               Select packages by capabilities.
456
457           -l, --auto-agree-with-licenses
458               Automatically say yes to third party license confirmation
459               prompt. By using this option, you choose to agree with licenses
460               of all third-party software this command will install. This
461               option is particularly useful for administrators installing the
462               same set of packages on multiple machines (by an automated
463               process) and have the licenses confirmed before.
464
465           --auto-agree-with-product-licenses
466               Automatically accept product licenses only. This is used by
467               tools like SUSEconnect, which ask for confirmation before the
468               product gets registered. So there’s no need to confirm the
469               product license again at install time.
470
471           --replacefiles
472               Install the packages even if they replace files from other,
473               already installed, packages. Default is to treat file conflicts
474               as an error. --download-as-needed disables the file conflict
475               check because access to all packages file lists is needed in
476               advance in order to perform the check.
477
478           -D, --dry-run
479               Test the installation, do not actually install any package. If
480               used together with --download-only a meaningful file conflict
481               check can be performed (see section Package File Conflicts).
482
483           --details
484               Show the detailed installation summary.
485
486           -y, --no-confirm
487               Don’t require user interaction. It’s recommended to use the
488               --non-interactive global option instead. Global options are
489               passed before the command (zypper --non-interactive COMMAND
490               ...). Unlike the no-confirm command option, the global option
491               can be used together with any zypper command.
492
493           --allow-unsigned-rpm
494               Silently install unsigned rpm packages given as commandline
495               parameters.
496
497           Solver related options:
498
499
500           --debug-solver
501               Create solver test case for debugging. Use this option if you
502               think the dependencies were not solved correctly. When using
503               this option no packages will be installed or removed. Instead a
504               solver test case is written to /var/log/zypper.solverTestCase.
505               You can pack the directory and attach it to your bug report.
506
507           --force-resolution
508               Force the solver to find a solution by allowing to remove
509               packages with unfulfilled requirements. This is the default
510               when removing packages (zypper remove). This option overrides
511               --no-force-resolution in case both are specified on the command
512               line.
513
514           -R, --no-force-resolution
515               Do not force the solver to find a solution. Instead, report
516               dependency problems and prompt the user to resolve them
517               manually. This is the default except when removing packages
518               (zypper remove).
519
520           --solver-focus MODE
521               Set the solvers general attitude when resolving a job. Valid
522               modes are Job, Installed or Update. See section Package
523               Dependencies for details.
524
525           --recommends
526               Install also recommended packages in addition to the required
527               ones. The default behavior is determined by
528               [zypp.conf:solver.onlyRequires].
529
530           --no-recommends
531               Do not install recommended packages, but only required ones.
532               The default behavior is determined by
533               [zypp.conf:solver.onlyRequires].
534
535           Download-and-install mode options:
536
537
538           -d, --download-only
539               Only download the packages for later installation (see also the
540               global --pkg-cache-dir option).
541
542               If used together with --dry-run a meaningful file conflict
543               check can be performed (see section Package File Conflicts).
544
545           --download-in-advance
546               First download all packages, then start installing. This is the
547               default.
548
549           --download-in-heaps
550               Download a minimal set of packages that can be installed
551               without leaving the system in broken state, and install them.
552               Then download and install another heap until all are installed.
553               This helps to keep the system in consistent state without the
554               need to download all packages in advance, which combines the
555               advantages of --download-in-advance and --download-as-needed.
556               This is the default mode.
557
558                   Note
559                   While the resolver is not capable of building heaps, this
560                   behaves the same as --download-in-advance.
561
562           --download-as-needed
563               Download one package, install it immediately, and continue with
564               the rest until all are installed.
565
566           --download mode
567               Use the specified download-and-install mode. Available modes
568               are: only, in-advance, in-heaps, as-needed. See corresponding
569               --download-mode options for their description.
570
571           Expert Options:
572               Don’t use them unless you know you need them.
573
574           --allow-downgrade, --no-allow-downgrade
575               Whether to allow downgrading installed resolvables.
576
577           --allow-name-change, --no-allow-name-change
578               Whether to allow changing the names of installed resolvables.
579               Setting this to no will not replace packages which have been
580               renamed.
581
582           --allow-arch-change, --no-allow-arch-change
583               Whether to allow changing the architecture of installed
584               resolvables.
585
586           --allow-vendor-change, --no-allow-vendor-change
587               Whether to allow changing the vendor of installed resolvables.
588               Setting this to no might be useful if you do not want packages
589               from foreign repos being changed to the distributions version
590               (or vice versa).
591
592           Examples:
593
594
595               $ zypper install -t pattern lamp_server
596                   Install lamp_server pattern.
597
598               $ zypper install --no-recommends gv
599                   Install GhostScript viewer, but ignore recommended
600                   packages.
601
602               $ zypper install virtualbox-ose-2.0.6
603
604
605               $ zypper install virtualbox-ose=2.0.6
606
607
608               $ zypper install virtualbox-ose = 2.0.6
609                   Install version 2.0.6 of virtualbox-ose package.
610
611       source-install (si) name...
612           Install specified source packages and their build dependencies. If
613           the name of a binary package is given, the corresponding source
614           package is looked up and installed instead.
615
616           This command will try to find the newest available versions of the
617           source packages and uses rpm -i to install them, optionally
618           together with all the packages that are required to build the
619           source package. The default location where rpm installs source
620           packages to is /usr/src/packages/{SPECS,SOURCES}, but the values
621           can be changed in your local rpm configuration. In case of doubt
622           try executing rpm --eval "%{_specdir} and %{_sourcedir}".
623
624           Note that the source packages must be available in repositories you
625           are using. You can check whether a repository contains any source
626           packages using the following command:
627
628
629               $ zypper search -t srcpackage -r alias|name|#|URI
630
631
632               $ zypper search -t srcpackage -r alias|name|#|URI
633
634           -d, --build-deps-only
635               Install only build dependencies of specified packages.
636
637           -D, --no-build-deps
638               Don’t install build dependencies.
639
640           -r, --repo alias|name|#|URI
641               Work only with the repository specified by the alias, name,
642               number, or URI. This option can be used multiple times.
643
644           --download-only
645               Only download the packages, do not install.
646
647           Examples:
648
649
650               $ zypper si -d dbus-1
651                   Install build dependencies of dbus-1 source package.
652
653       verify (ve) [options]
654           Check whether dependencies of installed packages are satisfied.
655
656           In case that any dependency problems are found, zypper suggests
657           packages to install or remove to fix them.
658
659           -D, --dry-run
660               Test the repair, do not actually do anything to the system. If
661               used together with --download-only a meaningful file conflict
662               check can be performed (see section Package File Conflicts).
663
664           --details
665               Show the detailed installation summary.
666
667           -r, --repo alias|name|#|URI
668               Work only with the repository specified by the alias, name,
669               number, or URI. This option can be used multiple times.
670
671           -y, --no-confirm
672               Don’t require user interaction. It’s recommended to use the
673               --non-interactive global option instead. Global options are
674               passed before the command (zypper --non-interactive COMMAND
675               ...). Unlike the no-confirm command option, the global option
676               can be used together with any zypper command.
677
678           Solver related options:
679
680
681           --debug-solver
682               Create solver test case for debugging. Use this option if you
683               think the dependencies were not solved correctly. When using
684               this option no packages will be installed or removed. Instead a
685               solver test case is written to /var/log/zypper.solverTestCase.
686               You can pack the directory and attach it to your bug report.
687
688           --force-resolution
689               Force the solver to find a solution by allowing to remove
690               packages with unfulfilled requirements. This is the default
691               when removing packages (zypper remove). This option overrides
692               --no-force-resolution in case both are specified on the command
693               line.
694
695           -R, --no-force-resolution
696               Do not force the solver to find a solution. Instead, report
697               dependency problems and prompt the user to resolve them
698               manually. This is the default except when removing packages
699               (zypper remove).
700
701           --solver-focus MODE
702               Set the solvers general attitude when resolving a job. Valid
703               modes are Job, Installed or Update. See section Package
704               Dependencies for details.
705
706           --recommends
707               Install also recommended packages in addition to the required
708               ones. The default behavior is determined by
709               [zypp.conf:solver.onlyRequires].
710
711           --no-recommends
712               Do not install recommended packages, but only required ones.
713               The default behavior is determined by
714               [zypp.conf:solver.onlyRequires].
715
716           Expert Options:
717               Don’t use them unless you know you need them.
718
719           --allow-downgrade, --no-allow-downgrade
720               Whether to allow downgrading installed resolvables.
721
722           --allow-name-change, --no-allow-name-change
723               Whether to allow changing the names of installed resolvables.
724               Setting this to no will not replace packages which have been
725               renamed.
726
727           --allow-arch-change, --no-allow-arch-change
728               Whether to allow changing the architecture of installed
729               resolvables.
730
731           --allow-vendor-change, --no-allow-vendor-change
732               Whether to allow changing the vendor of installed resolvables.
733               Setting this to no might be useful if you do not want packages
734               from foreign repos being changed to the distributions version
735               (or vice versa).
736
737           This command also accepts the Download-and-install mode options
738           described in the install command.
739
740
741       install-new-recommends (inr) [options]
742           Install newly added packages recommended by already installed ones.
743           This command basically re-evaluates the recommendations of all
744           installed packages and fills up the system accordingly. You don’t
745           want to call this unconditionally on small or minimal systems, as
746           it may easily add a large number of packages.
747
748           Called as zypper inr --no-recommends, it restricts the command to
749           just look for packages supporting available hardware, languages or
750           filesystems. Usefull after having added e.g. new hardware or driver
751           repos. This is also the default behavior if you have set
752           [zypp.conf:solver.onlyRequires].
753
754           -r, --repo alias|name|#|URI
755               Work only with the repository specified by the alias, name,
756               number, or URI. This option can be used multiple times.
757
758           -D, --dry-run
759               Test the installation, do not actually install anything. If
760               used together with --download-only a meaningful file conflict
761               check can be performed (see section Package File Conflicts).
762
763           --details
764               Show the detailed installation summary.
765
766           Solver related options:
767
768
769           --debug-solver
770               Create solver test case for debugging. Use this option if you
771               think the dependencies were not solved correctly. When using
772               this option no packages will be installed or removed. Instead a
773               solver test case is written to /var/log/zypper.solverTestCase.
774               You can pack the directory and attach it to your bug report.
775
776           --force-resolution
777               Force the solver to find a solution by allowing to remove
778               packages with unfulfilled requirements. This is the default
779               when removing packages (zypper remove). This option overrides
780               --no-force-resolution in case both are specified on the command
781               line.
782
783           -R, --no-force-resolution
784               Do not force the solver to find a solution. Instead, report
785               dependency problems and prompt the user to resolve them
786               manually. This is the default except when removing packages
787               (zypper remove).
788
789           --solver-focus MODE
790               Set the solvers general attitude when resolving a job. Valid
791               modes are Job, Installed or Update. See section Package
792               Dependencies for details.
793
794           --recommends
795               Install also recommended packages in addition to the required
796               ones. The default behavior is determined by
797               [zypp.conf:solver.onlyRequires].
798
799           --no-recommends
800               Do not install recommended packages, but only required ones.
801               The default behavior is determined by
802               [zypp.conf:solver.onlyRequires].
803
804           Expert Options:
805               Don’t use them unless you know you need them.
806
807           --allow-downgrade, --no-allow-downgrade
808               Whether to allow downgrading installed resolvables.
809
810           --allow-name-change, --no-allow-name-change
811               Whether to allow changing the names of installed resolvables.
812               Setting this to no will not replace packages which have been
813               renamed.
814
815           --allow-arch-change, --no-allow-arch-change
816               Whether to allow changing the architecture of installed
817               resolvables.
818
819           --allow-vendor-change, --no-allow-vendor-change
820               Whether to allow changing the vendor of installed resolvables.
821               Setting this to no might be useful if you do not want packages
822               from foreign repos being changed to the distributions version
823               (or vice versa).
824
825           This command also accepts the Download-and-install mode options
826           described in the install command.
827
828
829       remove (rm) [options] name...
830
831
832       remove (rm) [options] --capability capability...
833           Remove (uninstall) packages.
834
835           The remove command will uninstall the selected and their dependent
836           packages. It will not try to install alternatives in order to keep
837           dependent packages installed. If you want this, use zypper install
838           !name.
839
840           The packages can be selected by their name or by a capability they
841           provide. For details on package selection see the install command
842           description.
843
844           -r, --repo alias|name|#|URI
845               Work only with the repository specified by the alias, name,
846               number, or URI. This option can be used multiple times.
847
848           -t, --type type
849               Type of package (default: package). See section Package Types
850               for list of available package types.
851
852               Since patches are not installed in sense of copying files or
853               recording a database entry, they cannot be uninstalled, even
854               though zypper shows them as installed. The installed status is
855               determined solely based on the installed status of its required
856               dependencies. If these dependencies are satisfied, the patch is
857               rendered installed.
858
859           -n, --name
860               Select packages by their name (default).
861
862           -C, --capability
863               Select packages by capabilities.
864
865           -D, --dry-run
866               Test the removal of packages, do not actually remove anything.
867
868           --details
869               Show the detailed installation summary.
870
871           -y, --no-confirm
872               Don’t require user interaction. It’s recommended to use the
873               --non-interactive global option instead. Global options are
874               passed before the command (zypper --non-interactive COMMAND
875               ...). Unlike the no-confirm command option, the global option
876               can be used together with any zypper command.
877
878           Solver related options:
879
880
881           --debug-solver
882               Create solver test case for debugging. Use this option if you
883               think the dependencies were not solved correctly. When using
884               this option no packages will be installed or removed. Instead a
885               solver test case is written to /var/log/zypper.solverTestCase.
886               You can pack the directory and attach it to your bug report.
887
888           --force-resolution
889               Force the solver to find a solution by allowing to remove
890               packages with unfulfilled requirements. This is the default
891               when removing packages (zypper remove). This option overrides
892               --no-force-resolution in case both are specified on the command
893               line.
894
895           -R, --no-force-resolution
896               Do not force the solver to find a solution. Instead, report
897               dependency problems and prompt the user to resolve them
898               manually. This is the default except when removing packages
899               (zypper remove).
900
901           --solver-focus MODE
902               Set the solvers general attitude when resolving a job. Valid
903               modes are Job, Installed or Update. See section Package
904               Dependencies for details.
905
906           -u, --clean-deps
907               Automatically remove dependencies which become unneeded after
908               removal of requested packages.
909
910           -U, --no-clean-deps
911               No automatic removal of unneeded dependencies.
912
913       purge-kernels [options]
914           Autoremoves installed kernels.
915
916           Automatically cleans up installed kernels according to the rules
917           defined in [zypp.conf:multiversion.kernels] which can be given as
918           <version>, latest[-N], running, oldest[+N].
919
920           --details
921               Show the detailed installation summary.
922
923           -D, --dry-run
924               Test the removal of packages, do not actually remove anything.
925
926   Update Management Commands
927       list-updates (lu) [options]
928           List available updates.
929
930           This command will list only installable updates, i.e. updates which
931           have no dependency problems, or which do not change package vendor.
932           This list is what the update command will propose to install. To
933           list all packages for which newer version are available, use --all
934           option.
935
936           -t, --type type
937               Type of package (default: package). See section Package Types
938               for list of available package types.
939
940               If patch is specified, zypper acts as if the list-patches
941               command was executed.
942
943           -r, --repo alias|name|#|URI
944               Work only with the repository specified by the alias, name,
945               number, or URI. This option can be used multiple times.
946
947           -a, --all
948               List all packages for which newer versions are available,
949               regardless whether they are installable or not.
950
951           --best-effort
952               See the update command for description.
953
954           Expert Options:
955               Don’t use them unless you know you need them.
956
957           --allow-downgrade, --no-allow-downgrade
958               Whether to allow downgrading installed resolvables.
959
960           --allow-name-change, --no-allow-name-change
961               Whether to allow changing the names of installed resolvables.
962               Setting this to no will not replace packages which have been
963               renamed.
964
965           --allow-arch-change, --no-allow-arch-change
966               Whether to allow changing the architecture of installed
967               resolvables.
968
969           --allow-vendor-change, --no-allow-vendor-change
970               Whether to allow changing the vendor of installed resolvables.
971               Setting this to no might be useful if you do not want packages
972               from foreign repos being changed to the distributions version
973               (or vice versa).
974
975       update (up) [options] [packagename]...
976           Update installed packages with newer versions, where possible.
977
978           This command will not update packages which would require change of
979           package vendor unless the vendor is specified in
980           /etc/zypp/vendors.d, or which would require manual resolution of
981           problems with dependencies. Such non-installable updates will then
982           be listed in separate section of the summary as "The following
983           package updates will NOT be installed:".
984
985           To update individual packages, specify one or more package names.
986           You can use the * and ? wildcard characters in the package names to
987           specify multiple packages matching the pattern.
988
989           -t, --type type
990               Type of package (default: package). See section Package Types
991               for list of available package types.
992
993               If patch is specified, zypper acts as if the patches command
994               was executed.
995
996           -r, --repo alias|name|#|URI
997               Work only with the repository specified by the alias, name,
998               number, or URI. This option can be used multiple times.
999
1000           --skip-interactive
1001               This will skip interactive patches, that is, those that need
1002               reboot, contain a message, or update a package whose license
1003               needs to be confirmed.
1004
1005           --with-interactive
1006               Avoid skipping of interactive patches when in non-interactive
1007               mode.
1008
1009           -l, --auto-agree-with-licenses
1010               Automatically say yes to third party license confirmation
1011               prompt. By using this option, you choose to agree with licenses
1012               of all third-party software this command will install. This
1013               option is particularly useful for administrators installing the
1014               same set of packages on multiple machines (by an automated
1015               process) and have the licenses confirmed before.
1016
1017           --auto-agree-with-product-licenses
1018               Automatically accept product licenses only. This is used by
1019               tools like SUSEconnect, which ask for confirmation before the
1020               product gets registered. So there’s no need to confirm the
1021               product license again at install time.
1022
1023           --replacefiles
1024               Install the packages even if they replace files from other,
1025               already installed, packages. Default is to treat file conflicts
1026               as an error. --download-as-needed disables the fileconflict
1027               check because access to all packages filelists is needed in
1028               advance in order to perform the check.
1029
1030           -D, --dry-run
1031               Test the update, do not actually install or update any package.
1032               If used together with --download-only a meaningful file
1033               conflict check can be performed (see section Package File
1034               Conflicts).
1035
1036           --details
1037               Show the detailed installation summary.
1038
1039           --best-effort
1040               Do a best effort approach to update. This method does not
1041               explicitly select packages with best version and architecture,
1042               but instead requests installation of a package with higher
1043               version than the installed one and leaves the rest on the
1044               dependency solver. This method is always used for packages, and
1045               is optional for products and patterns. It is not applicable to
1046               patches.
1047
1048           -y, --no-confirm
1049               Don’t require user interaction. It’s recommended to use the
1050               --non-interactive global option instead. Global options are
1051               passed before the command (zypper --non-interactive COMMAND
1052               ...). Unlike the no-confirm command option, the global option
1053               can be used together with any zypper command.
1054
1055           Solver related options:
1056
1057
1058           --debug-solver
1059               Create solver test case for debugging. Use this option if you
1060               think the dependencies were not solved correctly. When using
1061               this option no packages will be installed or removed. Instead a
1062               solver test case is written to /var/log/zypper.solverTestCase.
1063               You can pack the directory and attach it to your bug report.
1064
1065           --force-resolution
1066               Force the solver to find a solution by allowing to remove
1067               packages with unfulfilled requirements. This is the default
1068               when removing packages (zypper remove). This option overrides
1069               --no-force-resolution in case both are specified on the command
1070               line.
1071
1072           -R, --no-force-resolution
1073               Do not force the solver to find a solution. Instead, report
1074               dependency problems and prompt the user to resolve them
1075               manually. This is the default except when removing packages
1076               (zypper remove).
1077
1078           --solver-focus MODE
1079               Set the solvers general attitude when resolving a job. Valid
1080               modes are Job, Installed or Update. See section Package
1081               Dependencies for details.
1082
1083           --recommends
1084               Install also recommended packages in addition to the required
1085               ones. The default behavior is determined by
1086               [zypp.conf:solver.onlyRequires].
1087
1088           --no-recommends
1089               Do not install recommended packages, but only required ones.
1090               The default behavior is determined by
1091               [zypp.conf:solver.onlyRequires].
1092
1093           Expert Options:
1094               Don’t use them unless you know you need them.
1095
1096           --allow-downgrade, --no-allow-downgrade
1097               Whether to allow downgrading installed resolvables.
1098
1099           --allow-name-change, --no-allow-name-change
1100               Whether to allow changing the names of installed resolvables.
1101               Setting this to no will not replace packages which have been
1102               renamed.
1103
1104           --allow-arch-change, --no-allow-arch-change
1105               Whether to allow changing the architecture of installed
1106               resolvables.
1107
1108           --allow-vendor-change, --no-allow-vendor-change
1109               Whether to allow changing the vendor of installed resolvables.
1110               Setting this to no might be useful if you do not want packages
1111               from foreign repos being changed to the distributions version
1112               (or vice versa).
1113
1114           This command also accepts the Download-and-install mode options
1115           described in the install command description.
1116
1117
1118       list-patches (lp) [options]
1119           List all applicable patches.
1120
1121           This command is similar to zypper list-updates -t patch.
1122
1123           Note that optional arguments of some of the following options must
1124           be specified using = instead of a space.
1125
1126           -b, --bugzilla[=#[,...]]
1127               List applicable patches for all Bugzilla issues, or issues
1128               whose number matches the given string.
1129
1130           --cve[=#[,...]]
1131               List applicable patches for all CVE issues, or issues whose
1132               number matches the given string.
1133
1134           --date YYYY-MM-DD[,...]
1135               List only patches issued up to, but not including, the
1136               specified date.
1137
1138           -g, --category category[,...]
1139               List only patches with this category. See section Package Types
1140               for a list of commonly used category values.
1141
1142           --severity severity[,...]
1143               List only patches with this severity. See section Package Types
1144               for a list of commonly used severity values.
1145
1146           --issue[=string[,...]]
1147               Look for issues whose number, summary, or description matches
1148               the specified string. Issues found by number are displayed
1149               separately from those found by descriptions. In the latter
1150               case, use zypper patch-info patchname to get information about
1151               issues the patch fixes.
1152
1153           -a, *--all
1154               By default, only patches that are applicable on your system are
1155               listed. This option causes all available released patches to be
1156               listed. This option can be combined with all the rest of the
1157               list-updates command options.
1158
1159           --with-optional, --without-optional
1160               Whether applicable optional patches should be treated as needed
1161               or be excluded. The default is to exclude optional patches.
1162
1163           -r, --repo alias|name|#|URI
1164               Work only with the repository specified by the alias, name,
1165               number, or URI. This option can be used multiple times.
1166
1167       patch-check (pchk)
1168           Check for patches. Displays a count of applicable patches and how
1169           many of them have the security category.
1170
1171           See also the EXIT CODES section for details on exit status of 0,
1172           100, and 101 returned by this command.
1173
1174           --updatestack-only
1175               Check only for patches which affect the package management
1176               itself.
1177
1178           --with-optional, --without-optional
1179               Whether applicable optional patches should be treated as needed
1180               or be excluded. The default is to exclude optional patches.
1181
1182           -r, --repo alias|name|#|URI
1183               Check for patches only in the repository specified by the
1184               alias, name, number, or URI. This option can be used multiple
1185               times.
1186
1187       patch [options]
1188           Install all available needed patches.
1189
1190           If there are patches that affect the package management itself,
1191           those will be installed first and you will be asked to run the
1192           patch command again.
1193
1194           This command is similar to zypper update -t patch.
1195
1196           --updatestack-only
1197               Install only patches which affect the package management itself
1198               and exit.
1199
1200           --with-update
1201               Additionally try to update all packages not covered by patches.
1202               This is basically the same as running zypper update afterwards.
1203
1204               The option is ignored, if the patch command must update the
1205               update stack first, thus it can not be combined with the
1206               --updatestack-only option.
1207
1208           --with-optional, --without-optional
1209               Whether applicable optional patches should be treated as needed
1210               or be excluded. The default is to exclude optional patches.
1211
1212           -b, --bugzilla #[,...]
1213               Install patch fixing a Bugzilla issue specified by number. Use
1214               list-patches --bugzilla command to get a list of applicable
1215               patches for specific issues.
1216
1217           --cve #[,...]
1218               Install patch fixing a MITRE’s CVE issue specified by number.
1219               Use list-patches --cve command to get a list of applicable
1220               patches for specific issues.
1221
1222           --date YYYY-MM-DD[,...]
1223               Install only patches issued up to, but not including, the
1224               specified date.
1225
1226           -g, --category category[,...]
1227               Install only patches with this category. Use list-patches
1228               --category command to get a list of available patches with a
1229               specific category. See section Package Types for a list of
1230               commonly used category values.
1231
1232           --severity severity[,...]
1233               Install only patches with this severity. Use list-patches
1234               --severity command to get a list of available patches with a
1235               specific severity. See section Package Types for a list of
1236               commonly used severity values.
1237
1238           -r, --repo alias|name|#|URI
1239               Work only with the repository specified by the alias, name,
1240               number, or URI. This option can be used multiple times.
1241
1242           --skip-interactive
1243               This will skip interactive patches, that is, those that need
1244               reboot, contain a message, or update a package whose license
1245               needs to be confirmed.
1246
1247           --with-interactive
1248               Avoid skipping of interactive patches when in non-interactive
1249               mode.
1250
1251           -l, --auto-agree-with-licenses
1252               Automatically say yes to third party license confirmation
1253               prompt. By using this option, you choose to agree with licenses
1254               of all third-party software this command will install. This
1255               option is particularly useful for administrators installing the
1256               same set of packages on multiple machines (by an automated
1257               process) and have the licenses confirmed before.
1258
1259           --auto-agree-with-product-licenses
1260               Automatically accept product licenses only. This is used by
1261               tools like SUSEconnect, which ask for confirmation before the
1262               product gets registered. So there’s no need to confirm the
1263               product license again at install time.
1264
1265           --replacefiles
1266               Install the packages even if they replace files from other,
1267               already installed, packages. Default is to treat file conflicts
1268               as an error. --download-as-needed disables the fileconflict
1269               check because access to all packages filelists is needed in
1270               advance in order to perform the check.
1271
1272           -D, --dry-run
1273               Test the update, do not actually update. If used together with
1274               --download-only a meaningful file conflict check can be
1275               performed (see section Package File Conflicts).
1276
1277           --details
1278               Show the detailed installation summary.
1279
1280           -y, --no-confirm
1281               Don’t require user interaction. It’s recommended to use the
1282               --non-interactive global option instead. Global options are
1283               passed before the command (zypper --non-interactive COMMAND
1284               ...). Unlike the no-confirm command option, the global option
1285               can be used together with any zypper command.
1286
1287           Solver related options:
1288
1289
1290           --debug-solver
1291               Create solver test case for debugging. Use this option if you
1292               think the dependencies were not solved correctly. When using
1293               this option no packages will be installed or removed. Instead a
1294               solver test case is written to /var/log/zypper.solverTestCase.
1295               You can pack the directory and attach it to your bug report.
1296
1297           --force-resolution
1298               Force the solver to find a solution by allowing to remove
1299               packages with unfulfilled requirements. This is the default
1300               when removing packages (zypper remove). This option overrides
1301               --no-force-resolution in case both are specified on the command
1302               line.
1303
1304           -R, --no-force-resolution
1305               Do not force the solver to find a solution. Instead, report
1306               dependency problems and prompt the user to resolve them
1307               manually. This is the default except when removing packages
1308               (zypper remove).
1309
1310           --solver-focus MODE
1311               Set the solvers general attitude when resolving a job. Valid
1312               modes are Job, Installed or Update. See section Package
1313               Dependencies for details.
1314
1315           --recommends
1316               Install also recommended packages in addition to the required
1317               ones. The default behavior is determined by
1318               [zypp.conf:solver.onlyRequires].
1319
1320           --no-recommends
1321               Do not install recommended packages, but only required ones.
1322               The default behavior is determined by
1323               [zypp.conf:solver.onlyRequires].
1324
1325           Expert Options:
1326               Don’t use them unless you know you need them.
1327
1328           --allow-downgrade, --no-allow-downgrade
1329               Whether to allow downgrading installed resolvables.
1330
1331           --allow-name-change, --no-allow-name-change
1332               Whether to allow changing the names of installed resolvables.
1333               Setting this to no will not replace packages which have been
1334               renamed.
1335
1336           --allow-arch-change, --no-allow-arch-change
1337               Whether to allow changing the architecture of installed
1338               resolvables.
1339
1340           --allow-vendor-change, --no-allow-vendor-change
1341               Whether to allow changing the vendor of installed resolvables.
1342               Setting this to no might be useful if you do not want packages
1343               from foreign repos being changed to the distributions version
1344               (or vice versa).
1345
1346           This command also accepts the Download-and-install mode options
1347           described in the install command description.
1348
1349
1350       dist-upgrade (dup) [options]
1351           Perform a distribution upgrade. This command applies the state of
1352           (specified) repositories onto the system; upgrades (or even
1353           downgrades) installed packages to versions found in repositories,
1354           removes packages that are no longer in the repositories and pose a
1355           dependency problem for the upgrade, handles package splits and
1356           renames, etc.
1357
1358           If no repositories are specified via the --from option, zypper will
1359           do a global upgrade with all defined repositories. This global form
1360           of dup will also consider unchanged installed packages and
1361           re-evaluate their dependencies. This can be a problem if the system
1362           contains conflicting repositories, like repositories for two
1363           different distribution releases. This often happens if one forgets
1364           to remove an older release repository after adding a new one, say
1365           openSUSE 13.1 and openSUSE 13.2.
1366
1367           For all repositories which have the distribution version within
1368           their URL (like
1369           https://download.opensuse.org/distribution/13.1/repo/oss) using the
1370           $releasever variable instead may be helpful
1371           (https://download.opensuse.org/distribution/$releasever/repo/oss).
1372           The variable is per default substituted by the current
1373           distributions version (13.1).
1374
1375           This value can be temporarily overwritten in the current zypper
1376           command by using the --releasever global option. Calling zypper
1377           --releasever 13.2... will cause these repos to use the new location
1378           (https://download.opensuse.org/distribution/13.2/repo/oss) without
1379           the need to add/remove anything. But you’ll need to use
1380           --releasever 13.2 with every zypper command until the distribution
1381           upgrade was actually performed. Once the dup is done, $releasever
1382           will default to the new distribution version 13.2 and --releasever
1383           is no longer needed.
1384
1385           It might be less tedious to persistently set $releasever to the
1386           target distribution value, so --releasever is not needed at all.
1387           See section Repository Management for more info about variable
1388           substitution and the definition of custom variables.
1389
1390           Note: Performing a distribution upgrade will automatically create a
1391           solver test case at /var/log/updateTestcase-YYYY-MM-DD-hh-mm-ss
1392           (the date and time the command was executed).
1393
1394           Note: distribution upgrades in openSUSE are currently only
1395           supported between consecutive releases. To upgrade multiple
1396           releases, upgrade each consecutive release one at a time. For more
1397           details see http://en.opensuse.org/SDB:System_upgrade and the
1398           openSUSE release notes at http://doc.opensuse.org/release-notes/.
1399
1400           --from alias|name|#|URI
1401               The option can be used multiple times and restricts the upgrade
1402               to the specified repositories only. Nevertheless all enabled
1403               repositories are visible to the resolver and will be considered
1404               to satisfy dependency problems.
1405
1406           -r, --repo alias|name|#|URI
1407               Work only with the repository specified by the alias, name,
1408               number, or URI.
1409
1410               Using --repo is discouraged as it currently hides unmentioned
1411               repositories from the resolver, leading to inexpertly
1412               decisions. This is because packages originally installed from
1413               the hidden repos will now be treated as orphaned or dropped.
1414               They can be silently removed if involved in a dependency
1415               conflict. In the future --repo will become an alias for --from.
1416
1417           -l, --auto-agree-with-licenses
1418               Automatically say yes to third party license confirmation
1419               prompt. By using this option, you choose to agree with licenses
1420               of all third-party software this command will install. This
1421               option is particularly useful for administrators installing the
1422               same set of packages on multiple machines (by an automated
1423               process) and have the licenses confirmed before.
1424
1425           --auto-agree-with-product-licenses
1426               Automatically accept product licenses only. This is used by
1427               tools like SUSEconnect, which ask for confirmation before the
1428               product gets registered. So there’s no need to confirm the
1429               product license again at install time.
1430
1431           --replacefiles
1432               Install the packages even if they replace files from other,
1433               already installed, packages. Default is to treat file conflicts
1434               as an error. --download-as-needed disables the fileconflict
1435               check because access to all packages filelists is needed in
1436               advance in order to perform the check.
1437
1438           -D, --dry-run
1439               Test the upgrade, do not actually install or update any
1440               package. If used together with --download-only a meaningful
1441               file conflict check can be performed (see section Package File
1442               Conflicts).
1443
1444           -y, --no-confirm
1445               Don’t require user interaction. It’s recommended to use the
1446               --non-interactive global option instead. Global options are
1447               passed before the command (zypper --non-interactive COMMAND
1448               ...). Unlike the no-confirm command option, the global option
1449               can be used together with any zypper command.
1450
1451           --details
1452               Show the detailed installation summary.
1453
1454           Solver related options:
1455
1456
1457           --debug-solver
1458               Create solver test case for debugging. Use this option if you
1459               think the dependencies were not solved correctly. When using
1460               this option no packages will be installed or removed. Instead a
1461               solver test case is written to /var/log/zypper.solverTestCase.
1462               You can pack the directory and attach it to your bug report.
1463
1464           --force-resolution
1465               Force the solver to find a solution by allowing to remove
1466               packages with unfulfilled requirements. This is the default
1467               when removing packages (zypper remove). This option overrides
1468               --no-force-resolution in case both are specified on the command
1469               line.
1470
1471           -R, --no-force-resolution
1472               Do not force the solver to find a solution. Instead, report
1473               dependency problems and prompt the user to resolve them
1474               manually. This is the default except when removing packages
1475               (zypper remove).
1476
1477           --solver-focus MODE
1478               Set the solvers general attitude when resolving a job. Valid
1479               modes are Job, Installed or Update. See section Package
1480               Dependencies for details.
1481
1482           --recommends
1483               Install also recommended packages in addition to the required
1484               ones. The default behavior is determined by
1485               [zypp.conf:solver.onlyRequires].
1486
1487           --no-recommends
1488               Do not install recommended packages, but only required ones.
1489               The default behavior is determined by
1490               [zypp.conf:solver.onlyRequires].
1491
1492           Expert Options:
1493               Don’t use them unless you know you need them.
1494
1495           --allow-downgrade, --no-allow-downgrade
1496               Whether to allow downgrading installed resolvables.
1497
1498           --allow-name-change, --no-allow-name-change
1499               Whether to allow changing the names of installed resolvables.
1500               Setting this to no will not replace packages which have been
1501               renamed.
1502
1503           --allow-arch-change, --no-allow-arch-change
1504               Whether to allow changing the architecture of installed
1505               resolvables.
1506
1507           --allow-vendor-change, --no-allow-vendor-change
1508               Whether to allow changing the vendor of installed resolvables.
1509               Setting this to no might be useful if you do not want packages
1510               from foreign repos being changed to the distributions version
1511               (or vice versa).
1512
1513           This command also accepts the Download-and-install mode options
1514           described in the install command description.
1515
1516
1517           Examples:
1518
1519
1520               $ zypper dup --from factory --from packman
1521                   Upgrade the system to the latest versions provided by the
1522                   factory and packman repositories.
1523
1524   Query Commands
1525       search (se) [options] [querystring|capability]...
1526           Search for packages matching any of the given search strings. * and
1527           ? wildcard characters can be used within search strings. If the
1528           search string is enclosed in /  (e.g. /^k.*e$/) it’s interpreted as
1529           a regular expression. See the install command for details about how
1530           to specify a capability.
1531
1532           Results of the search are printed in a table with columns Status,
1533           Name, Summary and Type of package.
1534
1535           In the detailed view (se -s) all available instances of matching
1536           packages are shown; each version in each repository on a separate
1537           line, with columns Status, Name, Type, Version, Architecture and
1538           Repository. For installed packages Repository shows either a
1539           repository that provides exactly the installed version of the
1540           package, or, if the exact version is not provided by any known
1541           repo, (System Packages) (or @System). Those installed packages not
1542           provided by any repo are often denoted as being unwanted, orphaned
1543           or dropped.
1544
1545           The Status column can contain the following values:
1546
1547               i+
1548                   installed by user request
1549
1550               i
1551                   installed automatically (by the resolver, see section
1552                   Automatically installed packages)
1553
1554               v
1555                   a different version is installed
1556
1557               empty
1558                   neither of the above cases
1559
1560               !
1561                   a patch in needed state
1562
1563
1564
1565
1566               .l
1567                   is shown in the 2nd column if the item is locked (see
1568                   section Package Locks Management)
1569
1570               .R
1571                   is shown in the 2nd column if the item has been retracted
1572                   (see patch in section Package Types)
1573
1574
1575           The v status is only shown if the version or the repository matters
1576           (see --details or --repo), and the installed instance differs from
1577           the one listed in version or repository.
1578
1579           This command accepts the following options:
1580
1581           --match-substrings
1582               Matches for search strings may be partial words (default).
1583
1584           --match-words
1585               Matches for search strings may only be whole words.
1586
1587           -x, --match-exact
1588               Searches for an exact name of the package.
1589
1590           --provides
1591               Search for packages which provide the search strings.
1592
1593           --requires
1594               Search for packages which require the search strings.
1595
1596           --recommends
1597               Search for packages which recommend the search strings.
1598
1599           --suggests
1600               Search for packages which suggest the search strings.
1601
1602           --conflicts
1603               Search for packages conflicting with the search strings.
1604
1605           --obsoletes
1606               Search for packages which obsolete the search strings.
1607
1608           --supplements
1609               Search for packages which supplement the search strings.
1610
1611           --provides-pkg
1612               Search for all packages that provide any of the provides of the
1613               package(s) matched by the input parameters.
1614
1615           --requires-pkg
1616               Search for all packages that require any of the provides of the
1617               package(s) matched by the input parameters.
1618
1619           --recommends-pkg
1620               Search for all packages that recommend any of the provides of
1621               the package(s) matched by the input parameters.
1622
1623           --supplements-pkg
1624               Search for all packages that supplement any of the provides of
1625               the package(s) matched by the input parameters.
1626
1627           --conflicts-pkg
1628               Search for all packages that conflict with any of the
1629               package(s) matched by the input parameters.
1630
1631           --obsoletes-pkg
1632               Search for all packages that obsolete any of the package(s)
1633               matched by the input parameters.
1634
1635           --suggests-pkg
1636               Search for all packages that suggest any of the provides of the
1637               package(s) matched by the input parameters.
1638
1639           -n, --name
1640               Useful together with dependency options, otherwise searching in
1641               package name is default.
1642
1643           -f, --file-list
1644               Search in the file list of packages. Note that the full file
1645               list is available for installed packages only. For remote
1646               packages only an abstract of their file list is available
1647               within the metadata (files containing /etc/, /bin/, or /sbin/).
1648
1649           -d, --search-descriptions
1650               Search also in summaries and descriptions.
1651
1652           -C, --case-sensitive
1653               Perform case-sensitive search.
1654
1655           -i, --installed-only
1656               Show only installed packages.
1657
1658           -u, --not-installed-only
1659               Show only packages which are not installed.
1660
1661               The old option name --uninstalled-only is still acceptable, but
1662               should be considered deprecated.
1663
1664           -t, --type type
1665               Search only for packages of specified type. See section Package
1666               Types for a list of available package types. Multiple --type
1667               options are allowed.
1668
1669               See also the type-specific query commands like packages,
1670               patterns, etc.
1671
1672           -r, --repo alias|name|#|URI
1673               Work only with the repository specified by the alias, name,
1674               number, or URI. This option can be used multiple times.
1675
1676           --sort-by-name
1677               Sort packages by name (default).
1678
1679           --sort-by-repo
1680               Sort packages by repository, not by name.
1681
1682           -s, --details
1683               Show all available versions of matching packages, each version
1684               in each repository on a separate line.
1685
1686           -v, --verbose
1687               Like --details with additional information where the search has
1688               matched (useful when searching for dependencies, e.g.
1689               --provides).
1690
1691           Examples:
1692
1693
1694               $ zypper se 'yast*'
1695                   Search for YaST packages (quote the string to prevent the
1696                   shell from expanding the wildcard).
1697
1698               $ zypper se -s --match-exact kernel-default
1699                   Show all available versions of package kernel-default
1700
1701               $ zypper se -dC --match-words RSI
1702                   Look for RSI acronym (case-sensitively), also in summaries
1703                   and descriptions.
1704
1705       packages (pa) [options] [repository]...
1706           List all available packages or all packages from specified
1707           repositories. Similar to zypper search -s -t package.
1708
1709           -r, --repo alias|name|#|URI
1710               Just another means to specify repositories.
1711
1712           -i, --installed-only
1713               Show only installed packages.
1714
1715           -u, --not-installed-only
1716               Show only packages which are not installed.
1717
1718               The old option name --uninstalled-only is still acceptable, but
1719               should be considered deprecated.
1720
1721           --orphaned
1722               Show packages which are orphaned (without repository).
1723
1724           --suggested
1725               Show packages which are suggested.
1726
1727           --recommended
1728               Show packages which are recommended.
1729
1730           --unneeded
1731               Show packages which are unneeded.
1732
1733       patches (pch) [options] [repository]...
1734           List all available patches from specified repositories, including
1735           those not needed. Short for zypper lp -a.
1736
1737           -r, --repo alias|name_|#|URI
1738               Just another means to specify repositories.
1739
1740       patterns (pt) [options] [repository]...
1741           List all available patterns or all patterns from specified
1742           repositories. Similar to zypper search -s -t pattern.
1743
1744           -r, --repo alias|name|#|URI
1745               Just another means to specify repositories.
1746
1747           -i, --installed-only
1748               Show only installed patterns.
1749
1750           -u, --not-installed-only
1751               Show only patterns which are not installed.
1752
1753               The old option name --uninstalled-only is still acceptable, but
1754               should be considered deprecated.
1755
1756       products (pd) [options] [repository]...
1757           List all available products or all products from specified
1758           repositories. Similar to zypper search -s -t product, but shows
1759           also the type of the product (base, add-on).
1760
1761           -r, --repo alias|name|#|URI
1762               Just another means to specify repositories.
1763
1764           -i, --installed-only
1765               Show only installed products.
1766
1767           -u, --not-installed-only
1768               Show only products which are not installed.
1769
1770               The old option name --uninstalled-only is still acceptable, but
1771               should be considered deprecated.
1772
1773           --xmlfwd tag
1774               XML output only: Literally forward the XML tag, if it is found
1775               in an installed products .prod-file (in /etc/products.d).
1776
1777               Using this option, for each installed product an <xmlfwd> node
1778               will be created inside the <product> output node of the
1779               product.
1780
1781               Tag defines the name (or /-separated path) of a xml-tag inside
1782               an installed products .prod-file. If the tag is present inside
1783               the products .prod-file, the tag and it’s content is literally
1784               forwarded into the products <xmlfwd> output node.
1785
1786               The option may be specified multiple times.
1787
1788           Examples:
1789
1790
1791               $ zypper -x pd --xmlfwd name --xmlfwd register/target
1792
1793
1794       what-provides (wp) capability
1795           List all packages providing the specified capability
1796           (case-insensitive search). See also the install command for info
1797           about specifying capabilities.
1798
1799           The command line is automatically transformed into the
1800           corresponding search command:
1801
1802
1803               $ zypper what-provides 'zypper>1.6'
1804                   $ zypper search --provides --match-exact 'zypper>1.6'
1805
1806               For a case-sensitive search call
1807                   $ zypper search --provides --match-exact --case-sensitive
1808                   'zypper>1.6'
1809
1810   Repository Management
1811       Zypper is able to work with YaST, RPM-MD (yum) software repositories,
1812       and plain directories containing .rpm files (no symlinks).
1813
1814       Repositories are primarily identified using their URI or alias. Alias
1815       serves as a shorthand for the long URI or name of the repository. The
1816       name of the repository should briefly describe the repository and is
1817       shown to the user in tables and messages. The name is not required, and
1818       if not known, the alias is shown instead. The alias is required and
1819       uniquely identifies the repository on the system.
1820
1821       The alias, name, URI, or the number from zypper repos list can be used
1822       to specify a repository as an argument of various zypper commands and
1823       options like refresh, --repo, or --from.
1824
1825       Apart from the above, repositories have several other properties which
1826       can be set using the commands described in this section below, or by
1827       manually editing the repository definition files (.repo files, see
1828       section FILES).
1829
1830   Variable substitution:
1831       You can use the following variables within a .repo or .service files
1832       name and URI values:
1833
1834       $arch
1835           Use this variable to refer to the system’s CPU architecture.
1836
1837       $basearch
1838           Use this variable to refer to the base architecture of the system.
1839           For example, iX86 machines have a base architecture of i386, while
1840           AMD64 and Intel64 have x86_64.
1841
1842       $releasever, $releasever_major, $releasever_minor
1843           Use this variable to refer to the version of your openSUSE or SUSE
1844           Linux. The value is obtained from the /product/version XML-node in
1845           /etc/products.d/baseproduct.
1846
1847           This is useful for related repositories like packman
1848           (http://ftp.gwdg.de/pub/linux/packman/suse/$releasever), which
1849           shall always fit the installed distribution, even after a
1850           distribution upgrade.
1851
1852           To help performing a distribution upgrade, the value of $releasever
1853           can be persistently set to a user defined value by creating a
1854           custom variable with that name (see below). This way you can easily
1855           switch all repositories using $releasever to the new version
1856           (provided the server layouts did not change and new repos are
1857           already available).
1858
1859           For a single zypper command the value of $releasever can be
1860           temporarily overwritten by using the --releasever global option.
1861
1862           In addition $releasever_major will be set to the leading portion up
1863           to (but not including) the 1st dot; $releasever_minor to the
1864           trailing portion after the 1st dot. If there’s no dot in
1865           $releasever, $releasever_major is the same as $releasever and
1866           $releasever_minor is empty.
1867
1868       Custom Variables
1869           A custom repository variable is defined by creating a file in
1870           /etc/zypp/vars.d. The variable name equals the file name. The files
1871           first line (up to but not including the newline character) defines
1872           the variables value. Valid variable(file) names consist of
1873           alphanumeric chars and underscore only.
1874
1875       This is how you can set a custom variable, e.g. $releasever to a value
1876       of 99.0:
1877           echo "99.0" >/etc/zypp/vars.d/releasever
1878
1879       To remove the custom variable, simply delete its file in
1880       /etc/zypp/vars.d:
1881           rm /etc/zypp/vars.d/releasever
1882
1883       To check where you already use $releasever call:
1884           zypper --releasever @--HERE--@ lr -u
1885
1886       Remember to protect the $ when using these variables on a shell command
1887       line:
1888           zypper ar -f http://ftp.gwdg.de/pub/linux/packman/suse/\$releasever
1889           packman
1890
1891       If a variable is followed by an alphanumeric character or underscore it
1892       needs to be enclosed in {}:
1893           zypper ar -f
1894           http://ftp.gwdg.de/pub/linux/packman/suse/\${releasever}_packman
1895
1896       Bash style definition of default ${variable:-word} and alternate
1897       ${variable:+word} values:
1898           SLE-${releasever_major}${releasever_minor:+-SP-$releasever_minor}
1899
1900       NOTE:
1901           Variable substitution within an URIs authority is limited to host
1902           and port. Bash style definition of default and alternate values is
1903           not supported. No variables can be used in an URIs scheme, user and
1904           password.
1905
1906   Supported URI formats:
1907       scheme:[//user[:password]@]host[:port]]/path[?query][#fragment]
1908           Special characters occurring in URI components (like a '@' in a
1909           password) must be %-encoded ('%40').
1910
1911       CD or DVD drive
1912           Optionally with devices list for probing.
1913
1914           ·   cd:///
1915               dvd:/subdir?devices=/dev/sr0,/dev/sr1
1916
1917       FTP/HTTP/HTTPS directory tree
1918           The ftp URL scheme supports absolute and relative paths to the
1919           default ftp server directory (RFC1738, Section 3.2.2). To use an
1920           absolute path, you have to prepend the path with an additional
1921           slash, what results in a /%2f combination (second / encoded to %2f)
1922           at the begin of the URL path. This is important, especially in user
1923           authenticated ftp, where the users home is usually the default
1924           directory of the server (except when the server chroots into the
1925           users home directory).
1926
1927           Explicit proxy settings may be passed via optional parameters
1928           proxy, proxyport, proxyuser and proxypass.
1929
1930           HTTP authentication methods to use can be defined as comma
1931           separated list via optional parameter auth. Valid methods are e.g.
1932           basic, digest, ntlm, negotiate. Note, that this list depends on the
1933           list of methods supported by the curl library.
1934
1935           SSL verification behavior can be changed using the ssl_verify
1936           option (this should be used with care). Valid values are yes (the
1937           secure default), host, peer or no. Host just checks that the
1938           "Common Name" field or a "Subject Alternate Name" field in the
1939           servers certificate matches the host name in the URL. Peer just
1940           verifies whether the certificate provided by the server is
1941           authentic against the chain of digital signatures found in
1942           ssl_capath. No performs no checks at all. Yes is the secure
1943           default, performing host and peer check.
1944
1945           For SSL client certificate authentication use the options
1946           ssl_clientcert to define the path to the ssl client certificate and
1947           ssl_clientkey to define the path to the SSL client key. Use
1948           ssl_capath to change the directory holding the CA certificates
1949           (default is /etc/ssl/certs).
1950
1951           ·   ftp://user:pass@server/path/to/media/dir
1952               ftp://user:pass@server/%2fhome/user/path/to/media/dir
1953               http://user:pass@server/path
1954               https://user:pass@server/path?proxy=foo&proxyuser=me&proxypass=pw
1955               https://server/path?ssl_clientcert=/entitlement/1234.pem&ssl_clientkey=/entitlement/1234-key.pem
1956
1957       Disk volume (partition)
1958           Mandatory device parameter specifying the name of the block device
1959           to mount. The name of the optional filesystem defaults to "auto".
1960
1961           ·   hd:/subdir?device=/dev/sda1&filesystem=reiserfs
1962
1963       Local directory tree
1964
1965           ·   dir:/directory/name
1966
1967       Media in an ISO image (loopback mounted)
1968           Mandatory iso parameter specifying the name of the iso file.
1969           Optional url parameter specifying the URL to the directory
1970           containing the iso file. Optional mnt parameter specifying the
1971           preferred attach point for the source media url. Optional
1972           filesystem name of the filesystem used in the iso file. Defaults to
1973           "auto".
1974
1975           ·   iso:/?iso=CD1.iso&url=nfs://server/path/to/media
1976               iso:/?iso=CD1.iso&url=hd:/?device=/dev/hda
1977               iso:/subdir?iso=DVD1.iso&url=nfs://nfs-server/directory&mnt=/nfs/attach/point&filesystem=udf
1978
1979       NFS exported directory tree
1980           To use NFSv4 either use schema tnfsv4:// or pass an optional
1981           parameter type=nfs4. Additional mountoptions can be passed as comma
1982           separated list. Defaults to "ro".
1983
1984           ·   nfs://nfs-server/exported/path
1985               nfs://nfs-server/exported/path?mountoptions=ro&type=nfs4
1986               nfs4://nfs-server/exported/path?mountoptions=ro
1987
1988       CIFS/SMB directory tree
1989           There is no difference between cifs and smb scheme (any more). In
1990           both cases the cifs filesystem is used. Additional mountoptions can
1991           be passed as comma separated list. Defaults to "ro,guest". Specify
1992           "noguest" to turn off "guest". This is necessary if Samba is
1993           configured to reject guest connections.
1994
1995           Optional workgroup or domain parameter set the name of the
1996           workgroup. As alternative to passing username:password in the URI
1997           authority the parameters user and pass can be used.
1998
1999           ·   smb://servername/share/path/on/the/share
2000               cifs://usern:passw@servername/share/path/on/the/share?mountoptions=ro,noguest
2001               cifs://usern:passw@servername/share/path/on/the/share?workgroup=mygroup
2002               cifs://servername/share/path/on/the/share?user=usern&pass=passw
2003
2004       OpenSUSE Build Build Service (OBS) repositories
2005           Zypper also accepts special URIs identifying openSUSE Build Service
2006           (OBS) repositories in the addrepo command. These URIs have the form
2007           of obs://project/[platform], where project is the name of the OBS
2008           project and platform is the target platform (OS) for which the
2009           repository is intended.
2010
2011           If platform is omitted, openSUSE_$releasever is used unless a value
2012           for obs.platform is defined in zypper.conf. If you are following
2013           openSUSE_Factory or openSUSE_Tumbleweed you may need to set these
2014           as your default platform. But we can only guess, how the directory
2015           containing the repository that fits your distribution is named on
2016           the server. In case of doubt you need to look up the right URL in a
2017           browser.
2018
2019           ·   obs://zypp:Head/
2020               obs://zypp:Head/openSUSE_Factory
2021               obs://zypp:Head/openSUSE_Factory_Staging_Gcc49_standard
2022
2023   Commands:
2024       addrepo (ar) [options] URI alias
2025
2026
2027       addrepo (ar) [options] FILE*.repo*
2028           Add a new repository specified by URI and assign specified alias to
2029           it or specify URI to a .repo file.
2030
2031           Newly added repositories have auto-refresh disabled by default
2032           (except for repositories imported from a .repo, having the
2033           auto-refresh enabled). To enable auto-refresh use addrepo -f, or
2034           the --refresh option of the modifyrepo command.
2035
2036           Also, this command does not automatically refresh the newly added
2037           repositories. The repositories will get refreshed when used for the
2038           first time, or you can use the refresh command after finishing your
2039           modifications with *repo commands.
2040
2041           -r, --repo file.repo
2042               Read URI and alias from specified .repo file
2043
2044           -c, --check
2045               Probe given URI.
2046
2047           -C, --no-check
2048               Don’t probe URI, probe later during refresh.
2049
2050           -n, --name name
2051               Specify descriptive name for the repository.
2052
2053           -e, --enable
2054               Enable the repository (the default).
2055
2056           -d, --disable
2057               Add the repository as disabled. Repositories are added as
2058               enabled by default.
2059
2060           -f, --refresh
2061               Enable autorefresh of the repository. The autorefresh is
2062               disabled by default when adding new repositories.
2063
2064           -F, --no-refresh
2065               Disable auto-refresh for the repository.
2066
2067           -p, --priority positive-integer
2068               Set the priority of the repository. Priority of 1 is the
2069               highest, the higher the number the lower the priority. -p 0
2070               will set the priority back to the default (99). Packages from
2071               repositories with higher priority will be preferred even in
2072               case there is a higher installable version available in the
2073               repository with a lower priority.
2074
2075           -k, --keep-packages
2076               Enable RPM files caching for the repository.
2077
2078           -K, --no-keep-packages
2079               Disable RPM files caching.
2080
2081           -g, --gpgcheck
2082               Enable GPG check for this repository. The behavior as described
2083               in section GPG checks.
2084
2085           --gpgcheck-strict
2086               Enable strict GPG check for this repository. Even packages from
2087               signed repositories need a valid GPG signature and using
2088               unsigned packages must be confirmed.
2089
2090           --gpgcheck-allow-unsigned
2091               Short hand for --gpgcheck-allow-unsigned-repo
2092               --gpgcheck-allow-unsigned-package
2093
2094           --gpgcheck-allow-unsigned-repo
2095               Enable GPG check but allow the repository metadata to be
2096               unsigned.
2097
2098           --gpgcheck-allow-unsigned-package
2099               Enable GPG check but allow installing unsigned packages from
2100               this repository.
2101
2102           -G, --no-gpgcheck
2103               Disable GPG check for this repository.
2104
2105               Disabling GPG checks is not recommended. Signing data enables
2106               the recipient to verify that no modifications occurred after
2107               the data were signed. Accepting data with no, wrong or unknown
2108               signature can lead to a corrupted system and in extreme cases
2109               even to a system compromise.
2110
2111           --default-gpgcheck
2112               Use the global GPG check settings defined in
2113               /etc/zypp/zypp.conf. This is the default.
2114
2115               Unless you have modified your zypp.conf settings, this is the
2116               same as --gpgcheck, the behavior as described in section GPG
2117               checks.
2118
2119           Examples:
2120
2121
2122               $ zypper ar -c -n 'Packman 11.1 repo'
2123               http://packman.iu-bremen.de/suse/11.1 packman
2124                   Add a HTTP repository, probe it, name it Packman 11.1 repo,
2125                   and use packman as alias.
2126
2127               $ zypper ar
2128               https://download.opensuse.org/repositories/zypp:/svn/openSUSE_Factory/zypp:svn.repo
2129
2130
2131               $ zypper ar myreposbackup.repo
2132                   Add repositories from a .repo file.
2133
2134       removerepo (rr) [options] alias|name|#|URI...
2135           Delete repositories specified by aliases, names, numbers, URIs or
2136           one of the aggregate options.
2137
2138           --loose-auth
2139               Ignore user authentication data in the URI
2140
2141           --loose-query
2142               Ignore query string in the URI
2143
2144           -a, --all
2145               Apply changes to all repositories.
2146
2147           -l, --local
2148               Apply changes to all local repositories.
2149
2150           -t, --remote
2151               Apply changes to all remote repositories (http/https/ftp).
2152
2153           -m, --medium-type type
2154               Apply changes to repositories of specified type. The type
2155               corresponds to the repository URI scheme identifier like http,
2156               dvd, etc. You can find complete list of valid types at
2157               http://en.opensuse.org/openSUSE:Libzypp_URIs.
2158
2159       repos (lr) [options] [repo]...
2160           List all defined repositories or show detailed information about
2161           those specified as arguments
2162
2163           The following data can be printed for each repository found on the
2164           system: # (repository number), Alias (unique identifier), Name,
2165           Enabled (whether the repository is enabled), GPG Check (whether GPG
2166           check for repository metadata (r) and/or downloaded rpm packages
2167           (p) is enabled), Refresh (whether auto-refresh is enabled for the
2168           repository), Priority, Type (repository meta-data type: rpm-md,
2169           yast2, plaindir). Which of the data is shown is determined by
2170           command line options listed below and the main.repoListColumns
2171           setting from zypper.conf. By default, #, Alias, Name, Enabled, GPG
2172           Check and Refresh is shown.
2173
2174           Repository number is a unique identifier of the repository in
2175           current set of repositories. If you add, remove or change a
2176           repository, the numbers may change. Keep that in mind when using
2177           the numbers with the repository handling commands. On the other
2178           hand, using the alias instead of the number is always safe.
2179
2180           To show detailed information about specific repositories, specify
2181           them as arguments, either by alias, name, number from simple zypper
2182           lr, or by URI; e.g. fB zypper lr factory, or zypper lr 2.
2183
2184           -e, --export FILE.repo|-
2185               This option causes zypper to write repository definition of all
2186               defined repositories into a single file in repo file format. If
2187               - is specified instead of a file name, the repositories will be
2188               written to the standard output.
2189
2190           -a, --alias
2191               Add alias column to the output.
2192
2193           -n, --name
2194               Add name column to the output.
2195
2196           -u, --uri
2197               Add base URI column to the output.
2198
2199           -p, --priority
2200               Add repository priority column to the output.
2201
2202           -r, --refresh
2203               Add the autorefresh column to the output.
2204
2205           -d, --details
2206               Show more information like URI, priority, type, etc.
2207
2208           -E, --show-enabled-only
2209               Show enabled repositories only.
2210
2211           -U, --sort-by-uri
2212               Add base URI column and sort the list it.
2213
2214           -P, --sort-by-priority
2215               Add repository priority column and sort the list by it.
2216
2217           -A, --sort-by-alias
2218               Sort the list by alias.
2219
2220           -N, --sort-by-name
2221               Sort the list by name.
2222
2223           Examples:
2224
2225
2226               $ zypper repos -e myreposbackup.repo
2227                   Backup your repository setup:
2228
2229               $ zypper lr -pu
2230                   List repositories with their URIs and priorities:
2231
2232       renamerepo (nr) alias|name|#|URI new-alias
2233           Assign new alias to the repository specified by alias, name,
2234           number, or URI.
2235
2236           Examples:
2237
2238
2239               $ zypper nr 8 myrepo
2240                   Rename repository number 8 to myrepo (useful if the repo
2241                   has some dreadful alias which is not usable on the command
2242                   line).
2243
2244       modifyrepo (mr) options alias|name|#|URI...
2245
2246
2247       modifyrepo (mr) options --all|--remote|--local|--medium-type
2248           Modify properties of repositories specified by alias, name, number,
2249           or URI or one of the aggregate options.
2250
2251           -n, --name name
2252               Set a descriptive name for the repository.
2253
2254           -e, --enable
2255               Enable the repository.
2256
2257           -d, --disable
2258               Disable the repository.
2259
2260           -f, --refresh (legacy: -r)
2261               Enable auto-refresh for the repository.
2262
2263           -F, --no-refresh (legacy: -R)
2264               Disable auto-refresh for the repository.
2265
2266           -p, --priority positive-integer
2267               Set the priority of the repository. Priority of 1 is the
2268               highest, the higher the number the lower the priority. -p 0
2269               will set the priority back to the default (99). Packages from
2270               repositories with higher priority will be preferred even in
2271               case there is a higher installable version available in the
2272               repository with a lower priority.
2273
2274           -k, --keep-packages
2275               Enable RPM files caching.
2276
2277           -K, --no-keep-packages
2278               Disable RPM files caching.
2279
2280           -g, --gpgcheck
2281               Enable GPG check for this repository. The behavior as described
2282               in section GPG checks.
2283
2284           --gpgcheck-strict
2285               Enable strict GPG check for this repository. Even packages from
2286               signed repositories need a valid GPG signature and using
2287               unsigned packages must be confirmed.
2288
2289           --gpgcheck-allow-unsigned
2290               Short hand for --gpgcheck-allow-unsigned-repo
2291               --gpgcheck-allow-unsigned-package
2292
2293           --gpgcheck-allow-unsigned-repo
2294               Enable GPG check but allow the repository metadata to be
2295               unsigned.
2296
2297           --gpgcheck-allow-unsigned-package
2298               Enable GPG check but allow installing unsigned packages from
2299               this repository.
2300
2301           -G, --no-gpgcheck
2302               Disable GPG check for this repository.
2303
2304               Disabling GPG checks is not recommended. Signing data enables
2305               the recipient to verify that no modifications occurred after
2306               the data were signed. Accepting data with no, wrong or unknown
2307               signature can lead to a corrupted system and in extreme cases
2308               even to a system compromise.
2309
2310           --default-gpgcheck
2311               Use the global GPG check settings defined in
2312               /etc/zypp/zypp.conf. This is the default.
2313
2314               Unless you have modified your zypp.conf settings, this is the
2315               same as --gpgcheck, the behavior as described in section GPG
2316               checks.
2317
2318           -a, --all
2319               Apply changes to all repositories.
2320
2321           -l, --local
2322               Apply changes to all local repositories.
2323
2324           -t, --remote
2325               Apply changes to all remote repositories (http/https/ftp).
2326
2327           -m, --medium-type type
2328               Apply changes to repositories of specified type. The type
2329               corresponds to the repository URI scheme identifier like http,
2330               dvd, etc. You can find complete list of valid types at
2331               http://en.opensuse.org/openSUSE:Libzypp_URIs.
2332
2333           Examples:
2334
2335
2336               $ zypper mr -kt
2337                   Enable keeping of packages for all remote repositories.
2338
2339               $ zypper mr -er updates
2340                   Enable repository updates and switch on autorefresh for the
2341                   repo.
2342
2343               $ zypper mr -da
2344                   Disable all repositories.
2345
2346       refresh (ref) [alias|name|#|URI]...
2347           Refresh repositories specified by their alias, name, number, or
2348           URI. If no repositories are specified, all enabled repositories
2349           will be refreshed.
2350
2351           -f, --force
2352               Force a complete refresh of specified repositories. This option
2353               will cause both the download of raw metadata and parsing of the
2354               metadata to be forced even if everything indicates a refresh is
2355               not needed.
2356
2357           -b, --force-build
2358               Force only reparsing of cached metadata and rebuilding of the
2359               database. Raw metadata download will not be forced.
2360
2361           -d, --force-download
2362               Force only download of current copy of repository metadata.
2363               Parsing and rebuild of the database will not be forced.
2364
2365           -B, --build-only
2366               Only parse the metadata and build the database, don’t download
2367               raw metadata into the cache. This will enable you to repair
2368               damaged database from cached data without accessing network at
2369               all.
2370
2371           -D, --download-only
2372               Only download the raw metadata, don’t parse it or build the
2373               database.
2374
2375           -s, --services
2376               Refresh also services before refreshing repositories.
2377
2378       clean (cc) [options] [alias|name|#|URI]...
2379           Clean the local caches for all known or specified repositories. By
2380           default, only caches of downloaded packages are cleaned.
2381
2382           -m, --metadata
2383               Clean repository metadata cache instead of package cache.
2384
2385           -M, --raw-metadata
2386               Clean repository raw metadata cache instead of package cache.
2387
2388           -a, --all
2389               Clean both repository metadata and package caches.
2390
2391   Service Management
2392       The services, addservice, removeservice, modifyservice, and
2393       refresh-services commands serve for manipulating services. A service is
2394       specified by its URI and needs to have a unique alias defined (among
2395       both services and repositories).
2396
2397       Standalone repositories (not belonging to any service) are treated like
2398       services, too. The ls command will list them, ms command will modify
2399       them, etc. Repository specific options, like --keep-packages are not
2400       available here, though. You can use repository handling commands to
2401       manipulate them.
2402
2403       addservice (as) [options] URI alias
2404           Adds a service specified by URI to the system. The alias must be
2405           unique and serves to identify the service.
2406
2407           Newly added services are not refreshed automatically. Use the
2408           refresh-services command to refresh them. Zypper does not access
2409           the service URI when adding the service, so the type of the
2410           services is unknown until it is refreshed.
2411
2412           -n, --name name
2413               Specify descriptive name for the service.
2414
2415           -e, --enable
2416               Enable the service (this is the default).
2417
2418           -d, --disable
2419               Add the service as disabled.
2420
2421           -f, --refresh
2422               Enable auto-refresh of the service.
2423
2424           -F, --no-refresh
2425               Disable auto-refresh of the service.
2426
2427       removeservice (rs) [options] alias|name|#|URI...
2428           Remove specified service from the system. Removing a service will
2429           also remove of all of its repositories.
2430
2431           --loose-auth
2432               Ignore user authentication data in the URI.
2433
2434           --loose-query
2435               Ignore query string in the URI.
2436
2437       modifyservice (ms) options alias|name|#|URI
2438
2439
2440       modifyservice (ms) options --all|--remote|--local|--medium-type
2441           Modify properties of specified services.
2442
2443           Common Options
2444               These options are common to all types of services and
2445               repositories.
2446
2447           -n, --name name
2448               Set a descriptive name for the service.
2449
2450           -e, --enable
2451               Enable a disabled service.
2452
2453           -d, --disable
2454               Disable the service (but don’t remove it).
2455
2456           -f, --refresh  (legacy: -r)
2457               Enable auto-refresh of the service.
2458
2459           -F, --no-refresh  (legacy: -R)
2460               Disable auto-refresh of the service.
2461
2462           -a, --all
2463               Apply changes to all services.
2464
2465           -l, --local
2466               Apply changes to all local services.
2467
2468           -t, --remote
2469               Apply changes to all remote services.
2470
2471           -m, --medium-type type
2472               Apply changes to services of specified type.
2473
2474           RIS Service Specific Options
2475               These options are ignored by services other than Repository
2476               Index Services.
2477
2478           -i, --ar-to-enable alias
2479               Schedule an RIS service repository to be enabled at next
2480               service refresh.
2481
2482           -I, --ar-to-disable alias
2483               Schedule an RIS service repository to be disabled at next
2484               service refresh.
2485
2486           -j, --rr-to-enable alias
2487               Remove a RIS service repository to enable.
2488
2489           -J, --rr-to-disable alias
2490               Remove a RIS service repository to disable.
2491
2492           -k, --cl-to-enable
2493               Clear the list of RIS repositories to enable.
2494
2495           -K, --cl-to-disable
2496               Clear the list of RIS repositories to disable.
2497
2498       services (ls) [options]
2499           List services defined on the system.
2500
2501           -u, --uri
2502               Show also base URI of repositories.
2503
2504           -p, --priority
2505               Show also repository priority.
2506
2507           -d, --details
2508               Show more information like URI, priority, type.
2509
2510           -r, --with-repos
2511               Show also repositories belonging to the services.
2512
2513           -P, --sort-by-priority
2514               Sort the list by repository priority.
2515
2516           -E, --show-enabled-only
2517               Show enabled services only. If used together with --with-repos
2518               a disabled services owning (manually) enabled repositories are
2519               shown as well.
2520
2521           -U, --sort-by-uri
2522               Sort the list by URI.
2523
2524           -N, --sort-by-name
2525               Sort the list by name.
2526
2527       refresh-services (refs) [options] alias|name|#|URI...
2528           Refreshing a service means executing the service’s special task.
2529
2530           RIS services add, remove, or modify repositories on your system
2531           based on current content of the repository index. A differing
2532           enabled/disabled state caused by manually calling modify-repo on a
2533           service repository however will not be reverted unless the
2534           --restore-status option is used, or the repository index explicitly
2535           requests the change.
2536
2537           Services only manage defined repositories, they do not refresh
2538           them. To refresh also repositories, use --with-repos option or the
2539           refresh command.
2540
2541           -f, --force
2542               Force a complete refresh of specified services. This option
2543               will cause both the download of raw metadata and parsing of the
2544               metadata to be forced even if everything indicates a refresh is
2545               not needed.
2546
2547           -r, --with-repos
2548               Refresh also the service repositories.
2549
2550           -R, --restore-status
2551               Also restore service repositories enabled/disabled state to the
2552               repository index default. Useful after you manually changed
2553               some service repositories enabled state.
2554
2555   Package Locks Management
2556       Package locks serve the purpose of preventing changes to the set of
2557       installed packages on the system. The locks are stored in form of a
2558       query in /etc/zypp/locks file (see also locks(5)). Packages matching
2559       this query are then forbidden to change their installed status; an
2560       installed package can’t be removed or upgraded, not installed package
2561       can’t be installed. When requesting to install, upgrade or remove such
2562       locked package, you will get a dependency problem dialog.
2563
2564       locks (ll)
2565           List currently active package locks.
2566
2567           -m, --matches
2568               Show the number of resolvables matched by each lock. This
2569               option requires loading the repositories.
2570
2571           -s, --solvables
2572               List the resolvables matched by each lock. This option requires
2573               loading the repositories.
2574
2575       addlock (al) [options] package-name...
2576           Add a package lock. Specify packages to lock by exact name or by a
2577           glob pattern using * and ? wildcard characters.
2578
2579           -r, --repo alias|name|#|URI
2580               Restrict the lock to the specified repository.
2581
2582           -t, --type type
2583               Lock only packages of specified type (default: package). See
2584               section Package Types for list of available package types.
2585
2586       removelock (rl) [options] lock-number|package-name...
2587           Remove specified package lock. Specify the lock to remove by its
2588           number obtained with zypper locks or by the package name.
2589
2590           -r, --repo alias|name|#|URI
2591               Restrict the lock to the specified repository.
2592
2593           -t, --type type
2594               Restrict the lock to packages of specified type (default:
2595               package). See section Package Types for list of available
2596               package types.
2597
2598       cleanlocks (cl)
2599           Remove unused locks.
2600
2601           This command looks for locks that do not currently (with regard to
2602           repositories used) lock any package and for each such lock it asks
2603           user whether to remove it.
2604
2605   Locale Management
2606       These commands give information about requested locales and the
2607       possibilty to manage those. A locale is defined by a language code. For
2608       many packages there are locale dependent packages available which
2609       provide translations or dictionaries. To get these installed, the
2610       locale for the desired language must be marked as requested by the
2611       package manager library.
2612
2613       locales (lloc) [OPTIONS] [LOCALE] ...
2614           List requested locales. Called without argument, lists the locales
2615           which are already marked as requested. Specifying certain locale(s)
2616           prints information only for this(these).
2617
2618           -a, --all
2619               List all available locales.
2620
2621           -p, --packages
2622               Show corresponding packages.
2623
2624       addlocale (aloc) [OPTIONS] <LOCALE> ...
2625           Add specified locale(s) to the list of requested locales..
2626
2627           -n, --no-packages
2628               Do not install corresponding packages.
2629
2630       removelocale (rloc) [OPTIONS] <LOCALE> ...
2631           Remove specified locale(s) from the list of requested locales..
2632
2633           -n, --no-packages
2634               Do not remove corresponding packages.
2635
2636       Examples:
2637
2638
2639           $ zypper locales
2640               List requested locales.
2641
2642           $ zypper locales --packages de en
2643               Get the lists of packages which are available for de and en
2644               (exact match).
2645
2646           $ zypper locales en_
2647               Get all locales with lang code en that have their own country
2648               code, excluding the fallback en.
2649
2650           $ zypper locales en*
2651               Get all locales with lang code en with or without country code.
2652
2653           $ zypper aloc --packages de_CH
2654               Request de_CH and install language dependent packages.
2655
2656   Other Commands
2657       versioncmp (vcmp) version1 version2
2658           Compare the versions supplied as arguments and tell whether
2659           version1 is older or newer than version2 or the two version strings
2660           match.
2661
2662           The default output is in human-friendly form. If --terse global
2663           option is used, the result is an integer number, negative/positive
2664           if version1 is older/newer than version2, zero if they match.
2665
2666           -m, --match
2667               Takes missing release number as any release.
2668
2669               For example:
2670
2671               $ zypper vcmp -m 0.15.3 0.15.3-2
2672                   0.15.3 matches 0.15.3-2
2673
2674               $ zypper vcmp 0.15.3 0.15.3-2
2675                   0.15.3 is older than 0.15.3-2
2676
2677       targetos (tos)
2678           Shows the ID string of the target operating system. The string has
2679           a form of distroname-architecture. The string is determined by
2680           libzypp, the distroname is read from
2681           (current-rootdir)/etc/products.d/baseproduct and the architecture
2682           is determined from uname and CPU flags.
2683
2684       licenses
2685           Prints a report about licenses and EULA’s of installed packages to
2686           standard output.
2687
2688           First, a list of all packages and their licenses and/or EULAs is
2689           shown. This is followed by a summary, including the total number of
2690           installed packages, the number of installed packages with EULAs
2691           that required a confirmation from the user. Since the EULAs are not
2692           stored on the system and can only be read from repository metadata,
2693           the summary includes also the number of installed packages that
2694           have their counterpart in repositories. The report ends with a list
2695           of all licenses uses by the installed packages.
2696
2697           This command can be useful for companies redistributing a custom
2698           distribution (like appliances) to figure out what licenses they are
2699           bound by.
2700
2701       download [OPTIONS]
2702           Download rpms specified on the commandline to a local directory.
2703
2704           Per default packages are downloaded to the libzypp package cache
2705           (/var/cache/zypp/packages; for non-root users
2706           $XDG_CACHE_HOME/zypp/packages), but this can be changed by using
2707           the global --pkg-cache-dir option.
2708
2709           Parsable XML-output produced by zypper --xmlout will include a
2710           <download-result> node for each package zypper tried to download.
2711           Upon success the location of the downloaded package is found in the
2712           path attribute of the <localfile> subnode (xpath:
2713           download-result/localpath@path):
2714
2715                       <download-result>
2716                         <solvable>
2717                           <kind>package</kind>
2718                           <name>zypper</name>
2719                           <edition epoch="0" version="1.9.17" release="26.1"/>
2720                           <arch>x86_64</arch>
2721                           <repository name="repo-oss-update (13.1)" alias="openSUSE:repo-oss-update"/>
2722                         </solvable>
2723                         <localfile path="/var/cache/zypp/pac.../zypper-1.9.17-26.1.x86_64.rpm"/>
2724                       </download-result>
2725
2726           --all-matches
2727                    Download all versions matching the commandline arguments.
2728               Otherwise only the best version of each matching package is
2729               downloaded.
2730
2731           --dry-run
2732               Don’t download any package, just report what would be done.
2733
2734           -r, --repo alias|name|#|URI
2735               Work only with the repository specified by the alias, name,
2736               number or URI. This option can be used multiple times.
2737
2738           --from alias|name|#|URI
2739               Select packages from the specified repository only. This option
2740               can be used multiple times.
2741
2742       source-download [OPTIONS]
2743           Download source rpms for all installed packages to a local
2744           directory.
2745
2746           -d, --directory dir
2747               Download all source rpms to this directory. Default is
2748               /var/cache/zypper/source-download.
2749
2750           --delete
2751               Delete extraneous source rpms in the local directory. This is
2752               the default.
2753
2754           --no-delete
2755               Do not delete extraneous source rpms.
2756
2757           --status
2758               Don’t download any source rpms, but show which source rpms are
2759               missing or extraneous.
2760
2761       ps [OPTIONS]
2762           After each upgrade or removal of packages, there may be running
2763           processes on the system which continue to use meanwhile deleted
2764           files. zypper ps lists all processes using deleted files, together
2765           with the corresponding files, and a service name hint, in case it’s
2766           a known service. This gives a hint which services may need to be
2767           restarted after an update. Usually programs which continue to use
2768           deleted shared libraries. The list contains the following
2769           information:
2770
2771           PID
2772               ID of the process
2773
2774           PPID
2775               ID of the parent process
2776
2777           UID
2778               ID of the user running the process
2779
2780           Login
2781               Login name of the user running the process
2782
2783           Command
2784               Command used to execute the process
2785
2786           Service
2787               Service name, if command is associated with a system service
2788
2789           Files
2790               The list of the deleted files
2791
2792           -s, --short
2793               Create a short table not showing the deleted files. Given
2794               twice, show only processes which are associated with a system
2795               service. Given three times, list the associated system service
2796               names only.
2797
2798           --print format
2799               For each associated system service print format on the standard
2800               output, followed by a newline. Any %s directive in format is
2801               replaced by the system service name.
2802
2803           -d, --debugFile filename
2804               Output a file with all proc entries that make it into the final
2805               set of used open files. This can be submitted as additional
2806               information in a bug report.
2807
2808           Examples:
2809
2810
2811               $ zypper ps -ss
2812                   Show only processes associated with a system service.
2813
2814               $ zypper ps -sss
2815                   Short for zypper ps --print "%s"; list services which might
2816                   need a restart.
2817
2818               $ zypper ps --print "systemctl status %s"
2819                   Let zypper print the commands to retrieve status
2820                   information for services which might need a restart.
2821
2822       needs-rebooting
2823           Checks if the reboot-needed flag was set by a previous update or
2824           install of a core library or service.
2825
2826           The reboot-needed flag is set if a package that provides
2827           installhint(reboot-needed) is updated or installed. Additionally
2828           there is a predefined list (/etc/zypp/needreboot) of well-known
2829           packages which cause the reboot-needed flag being set
2830           unconditionally. Exit code ZYPPER_EXIT_INF_REBOOT_NEEDED indicates
2831           that a reboot is needed, otherwise the exit code is set to
2832           ZYPPER_EXIT_OK.
2833
2834   Subcommands
2835       subcommand
2836           Lists available subcommands in /usr/libexec/zypper/commands and
2837           from elsewhere on your $PATH. See section SUBCOMMANDS for details.
2838

GLOBAL OPTIONS

2840       -h, --help
2841           Help. If a command is specified together with --help option,
2842           command specific help is displayed.
2843
2844       -V, --version
2845           Print zypper version number and exit.
2846
2847       -c, --config file
2848           Use the specified zypper config file instead of the default
2849           zypper.conf. Other command line options specified together with
2850           --config and having their counterpart in the zypper config file are
2851           still preferred.
2852
2853           The order of preference with --config is as follows:
2854
2855            1. Command line options
2856
2857            2. --config file
2858
2859            3. [/etc/zypp/zypp.conf] (system-wide defaults for all libzypp
2860               based applications)
2861
2862               Note
2863               Use and location of the system-wide /etc/zypp/zypp.conf can not
2864               be changed this way. It’s mentioned here just because some
2865               zypper command line options allow to overwrite system-wide
2866               defaults defined in zypp.conf.
2867
2868           See also FILES section for more information.
2869
2870       -v, --verbose
2871           Increase verbosity. For debugging output specify this option twice.
2872
2873       -q, --quiet
2874           Suppress normal output. Brief (esp. result notification) messages
2875           and error messages will still be printed, though. If used together
2876           with conflicting --verbose option, the --verbose option takes
2877           preference.
2878
2879       --color, --no-color
2880           Whether to use colors in output if tty supports it. For details see
2881           the [color] section in zypper.conf.
2882
2883       -A, --no-abbrev
2884           Do not abbreviate text in tables. By default zypper will try to
2885           abbreviate texts in some columns so that the table fits the width
2886           of the screen. If you need to see the whole text, use this option.
2887
2888       -t, --terse
2889           Terse output for machine consumption. Implies --no-abbrev and
2890           --no-color.
2891
2892       -s, --table-style integer
2893           Choose among different predefined line drawing character sets to
2894           use when drawing a table. The table style is identified by an
2895           integer number. Style 0 is the default, styles 1-9 use combinations
2896           of different box drawing characters whose shape may depend on the
2897           font the terminal is using. Style 10 separates columns by a colon
2898           and style 11 draws no lines at all.
2899
2900       -n, --non-interactive
2901           Switches to non-interactive mode. In this mode zypper doesn’t ask
2902           user to type answers to various prompts, but uses default answers
2903           automatically. Those default answers also depend on other options
2904           like --no-gpg-checks or --ignore-unknown.
2905
2906       --non-interactive-include-reboot-patches
2907           In non-interactive mode do not skip patches which have the
2908           rebootSuggested-flag set. Otherwise these patches are considered to
2909           be interactive, like patches including a licenses or some message
2910           to confirm. NOTE: This option does not turn on non-interactive
2911           mode.
2912
2913       -x, --xmlout
2914           Switches to XML output. This option is useful for scripts or
2915           graphical frontends using zypper.
2916
2917       -i, --ignore-unknown
2918           Ignore unknown packages. This option is useful for scripts, because
2919           when installing in --non-interactive mode zypper expects each
2920           command line argument to match at least one known package. Unknown
2921           names or globbing expressions with no match are treated as an error
2922           unless this option is used.
2923
2924       -D, --reposd-dir dir
2925           Use the specified directory to look for the repository definition
2926           (.repo) files. The default value is /etc/zypp/repos.d.
2927
2928       -C, --cache-dir dir
2929           Use an alternative root directory for all caches. The default value
2930           is /var/cache/zypp.
2931
2932       --raw-cache-dir dir
2933           Use the specified directory for storing raw copies of repository
2934           metadata files. The default value is /var/cache/zypp/raw.
2935
2936       --solv-cache-dir dir
2937           Use the specified directory to store the repository metadata cache
2938           database files (solv files). The default value is
2939           /var/cache/zypp/solv.
2940
2941       --pkg-cache-dir dir
2942                Use the specified directory for storing rpm packages
2943           downloaded from repositories (see addrepo --keep-packages). The
2944           default value is /var/cache/zypp/packages. + Packages are stored in
2945           subdirectories named after the repositories alias and using the
2946           same path as on the repositories medium.
2947
2948       --userdata string
2949           User data is expected to be a simple string without special chars
2950           or embedded newlines and may serve as transaction id. It will be
2951           written to all install history log entries created throughout this
2952           specific zypper call. It will also be passed on to zypp plugins
2953           executed during commit. This will enable e.g. a btrfs plugin to tag
2954           created snapshots with this string. For zypper itself this string
2955           has no special meaning.
2956
2957       Repository Options:
2958
2959
2960       --no-gpg-checks
2961           Ignore GPG check failures and continue. If a GPG issue occurs when
2962           using this option zypper prints and logs a warning and
2963           automatically continues without interrupting the operation. Use
2964           this option with caution, as you can easily overlook security
2965           problems by using it. (see section GPG checks)
2966
2967       --gpg-auto-import-keys
2968           If new repository signing key is found, do not ask what to do;
2969           trust and import it automatically. This option causes that the new
2970           key is imported also in non-interactive mode, where it would
2971           otherwise got rejected.
2972
2973       -p, --plus-repo URI
2974           Use an additional repository for this operation. The repository
2975           aliased tmp# and named by the specified URI will be added for this
2976           operation and removed at the end. You can specify this option
2977           multiple times.
2978
2979       --plus-content tag
2980           Additionally use disabled repositories denoted by tag for this
2981           operation. If tag matches a repositories alias, name or URL, or is
2982           a keyword defined in the repositories metadata, the repository will
2983           be temporarily enabled for this operation. The repository will then
2984           be refreshed and used according to the commands rules. You can
2985           specify this option multiple times.
2986
2987           If a disabled repositories metadata are not available in the local
2988           cache, they will be downloaded to scan for matching keywords.
2989           Otherwise the keyword scan will use the metadata available in the
2990           local cache. Only if used together with the refresh command, a
2991           keyword scan will refresh all disabled repositories.
2992
2993           To refresh all disabled repositories metadata:
2994               zypper --plus-content '' ref
2995
2996           To include a disabled repository repo-debug in a search:
2997               zypper --plus-content repo-debug search ...
2998
2999           To search only in a disabled repository repo-debug:
3000               zypper --plus-content repo-debug search -r repo-debug ...
3001
3002           To enable all repos providing the debug keyword:
3003               zypper in --plus-content debug some -debuginfo or -debugsource
3004               package
3005
3006       --disable-repositories
3007           Do not read metadata from repositories. This option will prevent
3008           loading of packages from repositories, thus making zypper work only
3009           with the installed packages (if --disable-system-resolvables was
3010           not specified).
3011
3012       --no-refresh
3013           Do not auto-refresh repositories (ignore the auto-refresh setting).
3014           Useful to save time when doing operations like search, if there is
3015           not a need to have a completely up to date metadata.
3016
3017       --no-cd
3018           Ignore CD/DVD repositories. When this option is specified, zypper
3019           acts as if the CD/DVD repositories were not defined at all.
3020
3021       --no-remote
3022           Ignore remote repositories like http, ftp, smb and similar. This
3023           makes using zypper easier when being offline. When this option is
3024           specified, zypper acts as if the remote repositories were not
3025           defined at all.
3026
3027       --releasever version
3028           For the current command set the value of the $releasever repository
3029           variable to version. This can be used to switch to new distribution
3030           repositories when performing a distribution upgrade. See the
3031           dist-upgrade (dup) command and section Repository Management for
3032           more details about using the $releasever repository variable.
3033
3034           To check where you already use $releasever call:
3035               zypper --releasever @--HERE--@ lr -u
3036
3037       Target Options:
3038
3039
3040       -R, --root dir
3041           Operates on a different root directory. This option influences the
3042           location of the repos.d directory and the metadata cache directory
3043           and also causes rpm to be run with the --root option to do the
3044           actual installation or removal of packages. See also the FILES
3045           section.
3046
3047       --installroot dir
3048           Behaves like --root but shares the repositories with the host
3049           system.
3050
3051       --disable-system-resolvables
3052           This option serves mainly for testing purposes. It will cause
3053           zypper to act as if there were no packages installed in the system.
3054           Use with caution as you can damage your system using this option.
3055

SUBCOMMANDS

3057       Zypper subcommands are inspired by git(1). Subcommands are standalone
3058       executables that live in the zypper_execdir
3059       (/usr/libexec/zypper/commands). For subcommands zypper provides a
3060       wrapper that knows where the subcommands live, and runs them by passing
3061       command options and arguments to them. If a subcommand is not found in
3062       the zypper_execdir, the wrapper will look in the rest of your $PATH for
3063       it. Thus, it’s possible to write local zypper extensions that don’t
3064       live in system space.
3065
3066       This is how to add your own subcommand zypper mytask:
3067
3068       ·   The executable must be named zypper-mytask.
3069
3070       ·   The executable must be located your $PATH.
3071
3072       ·   A manpage for zypper-mytask should be provided and explaining the
3073           commands options and return values. It will be shown when calling
3074           zypper help mytask.
3075
3076       ·   Zypper built-in commands take precedence over subcommands with the
3077           same name.
3078
3079       ·   It’s fine to call zypper or use libzypp from within your
3080           subcommand.
3081
3082       You can use the built-in zypper subcommand command to get a list of all
3083       subcommands in zypper_execdir and from elsewhere on your $PATH.
3084
3085       Using zypper global-options together with subcommands, as well as
3086       executing subcommands in zypper shell is currently not supported.
3087

FILES

3089       /etc/zypp/zypper.conf, $HOME/.zypper.conf
3090           Global (system-wide) and user’s configuration file for zypper.
3091           These files are read when zypper starts up and --config option is
3092           not used.
3093
3094           User’s settings are preferred over global settings. Similarly,
3095           command line options override the settings in either of these
3096           files. To sum it up, the order of preference is as follows (from
3097           highest to lowest):
3098
3099            1. Command line options
3100
3101            2. $HOME/.zypper.conf
3102
3103            3. /etc/zypp/zypper.conf
3104
3105            4. [/etc/zypp/zypp.conf] (system-wide defaults for all libzypp
3106               based applications)
3107
3108           See the comments in /etc/zypp/zypper.conf for a list and
3109           description of available options.
3110
3111               Note
3112               The system-wide /etc/zypp/zypp.conf is mentioned here just
3113               because some zypper command line options allow to overwrite
3114               system-wide defaults defined there. zypp.conf and zypper.conf
3115               have different content and serve different purpose.
3116
3117       /etc/zypp/zypp.conf
3118           ZYpp configuration file affecting all libzypp based applications.
3119           See the comments in the file for description of configurable
3120           properties. Many locations of files and directories listed in this
3121           section are configurable via zypp.conf. The location for this file
3122           itself can be redefined only by setting $ZYPP_CONF in the
3123           environment.
3124
3125       /etc/zypp/locks
3126           File with package lock definitions, see locks(5) manual page for
3127           details. The package lock commands (addlock, removelock, etc.) can
3128           be used to manipulate this file.
3129
3130           This file is used by all ZYpp-based applications.
3131
3132       /etc/zypp/repos.d
3133           Directory containing repository definition (*.repo) files. You can
3134           use the Repository Management commands to manipulate these files,
3135           or you can edit them yourself. In either case, after doing the
3136           modifications, executing *zypper refresh* is strongly recommended.
3137
3138           You can use the --reposd-dir global option to use an alternative
3139           directory for this purpose or the --root option to make this
3140           directory relative to the specified root directory.
3141
3142           This directory is used by all ZYpp-based applications.
3143
3144       /etc/zypp/services.d
3145           Directory containing service definition (*.service) files. You can
3146           use the Service Management Commands to manipulate these files, or
3147           you can edit them yourself. Running *zypper refs* is recommended
3148           after modifications have been done.
3149
3150           This directory is used by all ZYpp-based applications.
3151
3152       /usr/libexec/zypper/commands
3153           System directory containing zypper extensions (see section
3154           SUBCOMMANDS)
3155
3156       /var/cache/zypp/raw
3157           Directory for storing raw metadata contained in repositories. Use
3158           the --raw-cache-dir global option to use an alternative directory
3159           for this purpose or the --root option to make this directory
3160           relative to the specified root directory.
3161
3162           This directory is used by all ZYpp-based applications.
3163
3164       /var/cache/zypp/solv
3165           Directory containing preparsed metadata in form of solv files.
3166
3167           This directory is used by all ZYpp-based applications.
3168
3169       /var/cache/zypp/packages
3170           If keeppackages property is set for a repository (see the
3171           modifyrepo command), all the RPM file downloaded during
3172           installation will be kept here. See also the clean command for
3173           cleaning these cache directories.
3174
3175           This directory is used by all ZYpp-based applications.
3176
3177       /var/log/zypper.log
3178           Zypper log file. It should be attached to all bugreports. (see also
3179           zypper-log(8)).
3180
3181       /var/log/zypper.solverTestCase
3182           Solver testcase created by using the --debug-solver option.
3183
3184       /var/log/updateTestcase-YYYY-MM-DD-hh-mm-ss
3185           Solver testcase auto created when performing a zypper dup.
3186
3187       /var/log/zypp/history
3188           Installation history log.
3189
3190       ~/.zypper_history
3191           Command history for the zypper shell (see the shell command).
3192
3193       /etc/zypp/needreboot
3194           File with a list of packages that will set the reboot-needed flag
3195           when installed or upgraded.
3196
3197       /etc/zypp/needreboot.d
3198           Directory that can be used to define packages that trigger the
3199           reboot-needed flag by adding additional files containing the
3200           required package names.
3201

EXIT CODES

3203       There are several exit codes defined for zypper built-in commands for
3204       use e.g. within scripts. These codes are defined in header file
3205       src/zypper-main.h found in zypper source package. Codes below 100
3206       denote an error, codes above 100 provide a specific information, 0
3207       represents a normal successful run. Following is a list of these codes
3208       with descriptions:
3209
3210       0 - ZYPPER_EXIT_OK
3211           Successful run of zypper with no special info.
3212
3213       1 - ZYPPER_EXIT_ERR_BUG
3214           Unexpected situation occurred, probably caused by a bug.
3215
3216       2 - ZYPPER_EXIT_ERR_SYNTAX
3217           zypper was invoked with an invalid command or option, or a bad
3218           syntax.
3219
3220       3 - ZYPPER_EXIT_ERR_INVALID_ARGS
3221           Some of provided arguments were invalid. E.g. an invalid URI was
3222           provided to the addrepo command.
3223
3224       4 - ZYPPER_EXIT_ERR_ZYPP
3225           A problem is reported by ZYPP library.
3226
3227       5 - ZYPPER_EXIT_ERR_PRIVILEGES
3228           User invoking zypper has insufficient privileges for specified
3229           operation.
3230
3231       6 - ZYPPER_EXIT_NO_REPOS
3232           No repositories are defined.
3233
3234       7 - ZYPPER_EXIT_ZYPP_LOCKED
3235           The ZYPP library is locked, e.g. packagekit is running.
3236
3237       8 - ZYPPER_EXIT_ERR_COMMIT
3238           An error occurred during installation or removal of packages. You
3239           may run zypper verify to repair any dependency problems.
3240
3241       100 - ZYPPER_EXIT_INF_UPDATE_NEEDED
3242           Returned by the patch-check command if there are patches available
3243           for installation.
3244
3245       101 - ZYPPER_EXIT_INF_SEC_UPDATE_NEEDED
3246           Returned by the patch-check command if there are security patches
3247           available for installation.
3248
3249       102 - ZYPPER_EXIT_INF_REBOOT_NEEDED
3250           Returned after a successful installation of a patch which requires
3251           reboot of computer.
3252
3253       103 - ZYPPER_EXIT_INF_RESTART_NEEDED
3254           Returned after a successful installation of a patch which requires
3255           restart of the package manager itself. This means that one of
3256           patches to be installed affects the package manager itself and the
3257           command used (e.g. zypper update) needs to be executed once again
3258           to install any remaining patches.
3259
3260       104 - ZYPPER_EXIT_INF_CAP_NOT_FOUND
3261           Returned by the install and the remove command in case any of the
3262           arguments does not match any of the available (or installed)
3263           package names or other capabilities.
3264
3265       105 - ZYPPER_EXIT_ON_SIGNAL
3266           Returned upon exiting after receiving a SIGINT or SIGTERM.
3267
3268       106 - ZYPPER_EXIT_INF_REPOS_SKIPPED
3269           Some repository had to be disabled temporarily because it failed to
3270           refresh. You should check your repository configuration (e.g.
3271           zypper ref -f).
3272
3273       107 - ZYPPER_EXIT_INF_RPM_SCRIPT_FAILED
3274           Installation basically succeeded, but some of the packages %post
3275           install scripts returned an error. These packages were successfully
3276           unpacked to disk and are registered in the rpm database, but due to
3277           the failed install script they may not work as expected. The failed
3278           scripts output might reveal what actually went wrong. Any scripts
3279           output is also logged to /var/log/zypp/history.
3280
3281       Zypper subcommands (see section SUBCOMMANDS) may return different codes
3282       which should be described in the commands man page. Call zypper help
3283       subcommand to see the subcommands man page if one is provided.
3284

HOMEPAGE

3286       https://github.com/openSUSE/zypper
3287

AUTHORS

3289       The zypper project was started by Martin Vidner, Jan Kupec, Michael
3290       Andres, Duncan Mac-Vicar Prett, Josef Reidinger and Stanislav
3291       Visnovsky. Many people have later contributed to it.
3292

SEE ALSO

3294       locks(5), zypper-log(8), YaST2(8)
3295
3296
3297
3298SUSE Linux                        2021-02-11                         ZYPPER(8)
Impressum